
Scanner basato su Go che rileva il bypass del sanitizer DOMPurify (CVE-2026-47423) tramite fingerprinting logico su bundle JavaScript di produzione minificati, identificando layout di tag consentiti non patchati.
Uno scanner leggero e ad alte prestazioni scritto in Go per rilevare distribuzioni in produzione di DOMPurify vulnerabili a un bypass completo del sanitizer tramite il difetto di logica del re-clone di <selectedcontent>.
Invece di fare affidamento su commenti del sorgente facilmente rimovibili o variabili di versione, questo strumento esegue il fingerprinting logico su bundle JavaScript di produzione minimizzati per identificare layout di tag consentiti non corretti.
Nelle versioni di DOMPurify fino alla 3.4.4, l'elemento <selectedcontent> era consentito per impostazione predefinita. Ciò introduce un difetto logico per cui i browser Chromium/WebKit aggiornano e riclonano il sottoalbero <selectedcontent> dopo che DOMPurify ha già eseguito il suo passaggio di sanitizzazione, portando a un bypass XSS assoluto quando il payload viene iniettato nel DOM live.

# 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
Aggiorna dompurify alla versione 3.4.5 o superiore tramite il tuo gestore di pacchetti:
npm install [email protected]
Se un aggiornamento immediato non è fattibile, blocca manualmente il tag nella configurazione:
DOMPurify.sanitize(userInput, { FORBID_TAGS: ['selectedcontent'] });