
Scanner baseado em Go que detecta bypass do sanitizador DOMPurify (CVE-2026-47423) via fingerprinting lógico em bundles JavaScript de produção minificados, identificando layouts de tags permitidas não corrigidos.
Um scanner leve e de alto desempenho escrito em Go para detectar implantações em produção do DOMPurify vulneráveis a um bypass completo do sanitizador através da falha de lógica de re-clonagem do <selectedcontent>.
Em vez de depender de comentários de código facilmente removidos ou variáveis de versão, esta ferramenta realiza impressão digital lógica em bundles JavaScript de produção minificados para identificar layouts de tags permitidas sem correção.
Nas versões do DOMPurify até 3.4.4, o elemento <selectedcontent> era permitido por padrão. Isso introduz uma falha de lógica onde navegadores Chromium/WebKit atualizam e re-clonam a subárvore <selectedcontent> após o DOMPurify já ter executado sua passagem de sanitização, levando a um bypass absoluto de XSS quando o payload é injetado no DOM ativo.

# 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
Atualize o dompurify para a versão 3.4.5 ou superior através do seu gerenciador de pacotes:
npm install [email protected]
Se uma atualização imediata não for viável, bloqueie manualmente a tag na sua configuração de layout:
DOMPurify.sanitize(userInput, { FORBID_TAGS: ['selectedcontent'] });