CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Lifecycle Timeline
4Tags
Description
An authenticated command injection vulnerability exists in Pi-hole versions up to 3.3. When adding a domain to the allowlist via the web interface, the domain parameter is not properly sanitized, allowing an attacker to append OS commands to the domain string. These commands are executed on the underlying operating system with the privileges of the Pi-hole service user. This behavior was present in the legacy AdminLTE interface and has since been patched in later versions.
Analysis
Pi-hole versions up to 3.3 contain an authenticated command injection via the domain allowlist functionality. When adding a domain, the domain parameter is passed to OS commands without sanitization, allowing administrators to execute arbitrary commands with the Pi-hole daemon's privileges.
Technical Context
The web interface's allowlist functionality passes the domain parameter to shell commands for updating DNS configuration. Shell metacharacters in the domain field are not sanitized, allowing command injection. Commands execute with the pihole user's privileges, which include sudo rights for DNS management.
Affected Products
['Pi-hole <= 3.3']
Remediation
Update Pi-hole to the latest version. Use a strong admin password. Restrict Pi-hole admin interface access to trusted devices. Monitor DNS query logs for unusual resolution patterns.
Priority Score
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2025-19902