Pi-hole Admin Interface
CVE-2025-53533
MEDIUM
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft malformed Pi-hole 404 URL with onload payload
-
DeliveryDeliver link to victim via phishing
-
ExploitVictim on-network opens link
-
ExecutionUnsanitized path reflected into body class
-
ImpactJavaScript executes in admin interface context
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that the Pi-hole admin web interface (versions 6.2.1 and earlier) serve its 404 error page, which reflects the requested URL path into the body tag's class attribute without sanitization or escaping - this is default behavior, no special configuration is needed. The decisive limiting factor is required user interaction (UI:A): a victim with network reachability to the target Pi-hole instance must click an attacker-crafted malformed link. Because the admin interface is typically bound to an internal/LAN address, realistic exploitation depends on the victim being able to reach that host, narrowing exposure compared to a truly internet-facing service. No authentication is required (PR:N), and impact is limited to code execution within the victim's browser session, not the server. |
| Impact | This is a genuine but low-to-medium priority issue, not a top-tier emergency. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:A) describes a network-reachable, low-complexity, unauthenticated reflected XSS, but critically requires active victim interaction (UI:A) - the victim must click an attacker-supplied crafted link. Impact is confined to the subsequent system (SC:L/SI:L) with no direct confidentiality, integrity, or availability impact on the Pi-hole server itself (VC:N/VI:N/VA:N), which is why the base score is only 5.1 (Medium). The signals are internally consistent and point the same direction: EPSS is low at 0.59% (47th percentile), and there is no CISA KEV listing, indicating no observed widespread exploitation. Publicly available exploit code exists (referenced in the GitHub advisory), which raises the practical bar only slightly since reflected XSS is trivial to reproduce. The main caveat defenders should weigh is that the Pi-hole admin interface is normally bound to internal/LAN networks, so the AV:N 'network' vector in practice usually means the attacker needs the victim to be on a network where the Pi-hole host is reachable - a meaningful limiter not captured by the raw score. |
| Exploit ScenarioDerived | An attacker crafts a malicious URL pointing at a victim's Pi-hole admin host with a malformed path containing an onload attribute that breaks out of the body tag's class attribute on the 404 page. The attacker delivers this link via phishing, chat, or a forum post; when the victim (who can reach their Pi-hole instance) clicks it, attacker-controlled JavaScript executes in the context of the admin interface. Publicly available exploit code exists, lowering the effort to reproduce. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 08, 2026
Reflected cross-site scripting in the Pi-hole Admin Interface (web_interface) 6.2.1 and earlier lets a remote, unauthenticated attacker execute arbitrary JavaScript in a victim's browser by tricking them into opening a crafted malformed link that is reflected into the 404 error page. Exploitation requires victim interaction - a click on the malicious URL - and the payload runs only in the victim's browser session, not on the Pi-hole server itself, so impact is bounded to session-level actions such as reading or altering admin UI content on behalf of the logged-in user. Publicly available exploit code exists and the vendor has patched the issue in version 6.3; EPSS is low (0.59%, ~47th percentile) and there is no indication of confirmed active exploitation.
RemediationAI
Upgrade the Pi-hole Admin Interface (web_interface) to version 6.3 or later - the vendor-released patch that resolves the missing output encoding on the 404 page; refer to the GitHub security advisory GHSA-w8f8-92rx-4f6w (https://github.com/pi-hole/web/security/advisories/GHSA-w8f8-92rx-4f6w) for the authoritative fix guidance, and apply the corresponding Pi-hole update channel rather than a manual file edit. If immediate upgrade is not possible, the most effective compensating control is to restrict network access to the admin interface: bind it to localhost or a trusted management VLAN and block external reachability via firewall rules, which eliminates the delivery vector at the cost of no longer being able to administer Pi-hole from untrusted networks; a Content-Security-Policy without 'unsafe-inline' can block inline event handlers such as the injected onload, though Pi-hole's stock UI may use inline script and would require testing to avoid breaking functionality. Note that because exploitation requires the victim to click a crafted link, user awareness of suspicious Pi-hole URLs is only a weak secondary mitigation, not a substitute for patching, and there is no indication at this time of confirmed active exploitation that would justify emergency-only changes over normal patch cycles.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is a classic CWE-79 reflected cross-site scripting case in the Pi-hole Admin Interface, the PHP/web front end used to manage a Pi-hole network-level ad and tracker blocking deployment. When the interface returns a 404 error page, it interpolates the requested URL path directly into the class attribute of the body element without HTML-attribute encoding or escaping. Because attacker-controlled path content is reflected into an attribute context, a crafted path can break out of the quoted class value and inject a new event handler such as onload onto the body tag, which the browser then executes as script in the origin of the Pi-hole admin interface. The CVSS 4.0 base score is 5.1 (CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N), and our independent assessment maps this to CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N - network reachable, no privileges required, but requiring user interaction and yielding only low confidentiality and integrity impact scoped to the victim's browser session (scope change), with no server-side code execution, no authentication bypass, and no availability impact. Affected CPE coverage is cpe:2.3:a:pi-hole:web_interface:*:*:*:*:*:*:*:*, meaning all web_interface releases up to and including 6.2.1.
Know when Web Interface gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:A/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N
Network-reachable unsanitized 404 reflection gives AV:N/AC:L/PR:N; victim must click so UI:R; script runs in browser beyond the server so S:C with C:L/I:L, A:N.
Primary rating from Vendor (github).
CVSS VectorVendor: github
DescriptionCVE.org
Pi-hole Admin Interface is a web interface for managing Pi-hole, a network-level advertisement and internet tracker blocking application. Pi-hole Admin Interface versions 6.2.1 and earlier are vulnerable to reflected cross-site scripting (XSS) via a malformed URL path. The 404 error page includes the requested path in the class attribute of the body tag without proper sanitization or escaping. An attacker can craft a URL containing an onload attribute that will execute arbitrary JavaScript code in the browser when a victim visits the malicious link. If an attacker sends a crafted pi-hole link to a victim and the victim visits it, attacker-controlled JavaScript code is executed in the browser of the victim. This has been patched in version 6.3.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
Affected Products (CPE)CVE.org
More in Web Interface
View allPi-hole®'s Web interface (based off of AdminLTE) provides a central location to manage your Pi-hole. Rated high severity
Pi-hole is a Linux network-level advertisement and Internet tracker blocking application. Rated high severity (CVSS 8.8)
HTTP response splitting in Pi-hole Admin Interface before 6.3 lets unauthenticated remote attackers inject CRLF sequence
adminlte is vulnerable to Sensitive Cookie Without 'HttpOnly' Flag. Rated high severity (CVSS 7.5), this vulnerability i
adminlte is vulnerable to Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting'). Rated me
adminlte is vulnerable to Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting'). Rated me
Stored HTML injection in Pi-hole Admin Interface versions 6.0+ allows authenticated attackers to inject arbitrary HTML i
Pi-hole's Web interface (based on AdminLTE) provides a central location to manage one's Pi-hole and review the statistic
Remote code execution with root privileges in Pi-hole Admin Interface versions prior to 6.0 allows unauthenticated attac
Reflected DOM-based XSS in Pi-hole Admin Interface versions 6.0 through 6.4 allows unauthenticated attackers to inject a
Stored cross-site scripting (XSS) via HTML attribute injection in Pi-hole Admin Interface versions 6.0 through 6.4 allow
Pi-hole Admin Interface versions 6.0 through 6.4 fail to escape client hostnames and IP addresses from the FTL database
NVD
CVE.org
EPSS
GitHub
Exploit-DB