E-DOM
DOM Invader
Herramienta de testing del lado cliente integrada en el navegador embebido de Burp Suite para hallar DOM XSS y DOM clobbering.
Sitio oficialVolver al catálogo
RESUMEN
DOM Invader es una herramienta de instrumentación del navegador integrada directamente en el navegador Chromium embebido de Burp Suite (se activa por pestaña desde la configuración de extensiones de Burp, lanzada por primera vez en Burp 2021.7) que automatiza el trazado de taint del lado cliente: inyecta valores canario en cada fuente de DOM XSS que reconoce (URL, location.hash, postMessage, almacenamiento web y más) y observa si ese valor llega sin sanear a un sumidero peligroso (innerHTML, eval, document.write y similares), reportando la ruta exacta de fuente a sumidero.
Más allá del DOM XSS, también tiene un escáner dedicado para DOM clobbering — una técnica para sobrescribir variables globales de JavaScript usando marcado HTML, mucho más difícil de detectar leyendo el código fuente a mano. La vista de trazado de taint del lado cliente funciona tanto en Community como en Professional; algunas funciones auxiliares (como el log de interceptación de postMessage) son más útiles combinadas con el resto de herramientas de Burp exclusivas de Pro cubiertas en la entrada base de Burp Suite en este sitio.
CASOS DE USO
Casos de uso en un engagement
- 01
Trazar si un fragmento de URL, un payload de postMessage o un valor de almacenamiento web llega sin sanear a un sumidero DOM peligroso.
- 02
Encontrar oportunidades de DOM clobbering donde HTML inyectado puede sobrescribir una variable global de JavaScript en la que confía la app.
- 03
Auditar aplicaciones de una sola página donde la lógica vulnerable vive enteramente en JavaScript del cliente sin ida y vuelta al servidor que inspeccionar.
- 04
Confirmar un candidato a DOM XSS hallado por revisión estática del código viendo ejecutarse el flujo de taint real en el navegador.
PRIMEROS PASOS
Cuando el JavaScript del cliente merece auditarse por DOM XSS, para trazar entrada contaminada desde una fuente hasta un sumidero peligroso dentro del propio navegador.
- Confirma que el testing del lado cliente contra el JavaScript de producción del objetivo está dentro del alcance.
- Abre el objetivo en el navegador embebido de Burp y activa DOM Invader desde el icono de extensión de Burp.
- Activa las categorías de fuentes y sumideros relevantes para la app (o deja todas activas para una primera pasada).
- Navega e interactúa con la app con normalidad, dejando que DOM Invader inyecte canarios a medida que descubre fuentes.
- Revisa las rutas de fuente a sumidero marcadas en el panel de DOM Invader y confirma manualmente la explotabilidad con un payload real.
ANTES DE USARLA
Qué revisar antes de lanzarla
Está desactivado por defecto por pestaña porque la inyección de canarios puede interferir con otra actividad de testing en la misma pestaña — actívalo de forma deliberada, no como ajuste por defecto.
Una ruta de fuente a sumidero marcada es un candidato, no una vulnerabilidad confirmada — el encoding, la CSP o un sanitizador más adelante en la cadena aún pueden bloquear la explotación real.
Solo ve lo que ejecuta el navegador embebido de Burp; la lógica del lado cliente detrás de otro motor de navegador o un WebView móvil nativo necesita cobertura aparte.