
Go-basierter Scanner, der DOMPurify-Sanitizer-Bypass (CVE-2026-47423) über Logik-Fingerprinting in minifizierten JavaScript-Produktionsbündeln erkennt und ungepatchte Layouts erlaubter Tags identifiziert.
Ein leichtgewichtiger, leistungsstarker, in Go geschriebener Scanner, der Produktionsinstallationen von DOMPurify erkennt, die über den <selectedcontent>-Re-Clone-Logikfehler anfällig für einen vollständigen Sanitizer-Bypass sind.
Anstatt sich auf leicht entfernbare Quellkommentare oder Versionsvariablen zu verlassen, führt dieses Tool ein logikbasiertes Fingerprinting an minifizierten JavaScript-Produktions-Bundles durch, um ungepatchte Layouts der erlaubten Tags zu identifizieren.
In DOMPurify-Versionen bis 3.4.4 war das <selectedcontent>-Element standardmäßig erlaubt. Dies führt zu einem Logikfehler, bei dem Chromium-/WebKit-Browser den <selectedcontent>-Teilbaum aktualisieren und neu klonen, nachdem DOMPurify seinen Sanitisierungsdurchlauf bereits ausgeführt hat, was zu einem absoluten XSS-Bypass führt, wenn die Payload in das Live-DOM injiziert wird.

# Clone the repository
git clone https://github.com/Galaxy-sc/CVE-2026-47423-dompurify-xss-detector.git
cd CVE-2026-47423-dompurify-xss-detector
# Run against a target using parameters
go run CVE-2026-47423.go -u https://example.com
Aktualisieren Sie dompurify über Ihren Paketmanager auf Version 3.4.5 oder höher:
npm install [email protected]
Falls ein sofortiges Upgrade nicht möglich ist, blockieren Sie das Tag manuell in Ihrer Konfiguration:
DOMPurify.sanitize(userInput, { FORBID_TAGS: ['selectedcontent'] });