XSS Lab 4
Skills
- DOM XSS in innerHTML sink using source location.search
Certificaciones
- eWPT
- eWPTXv2
- OSWE
- BSCP
Descripción
Este laboratorio
contiene una vulnerabilidad de XSS basado en DOM
en la funcionalidad de búsqueda de blogs
. Utiliza una asignación a innerHTML
, que cambia el contenido HTML
de un elemento div
utilizando datos de location.search
. Para resolver este laboratorio
, debemos realizar un ataque de cross-site scripting
que llame a la función alert
Resolución
Al acceder
a la web
nos sale esto
Intentamos
un Html Injection
y da resultado <h1>test</h1>
Si nos abrimos el inspector
de Chrome
y buscamos
el payload
introducido, vemos que se está empleando innerHTML
innerHTML
no soporta etiquetas ni <script></script>
ni <svg>
, sin embargo, si que acepta imágenes. Por lo tanto podemos elaborar un payload <img src=1 onerror=alert(1)>
, el cual si no encuentra el src
de la imagen ejecute
un error
Otra forma de descubrir
la vulnerabilidad
sería usando la extensión
de navegador DOM Invader
de Burpsuite
Copiamos el payload yktch9zq
y lo copiamos donde deseemos testear
un XSS
Una vez ejecutado el payload si nos vamos al DOM Invader
, vemos que nos identifica
una función peligrosa
, a esto lo llamamos sink
Si pulsamos sobre Exploit
nos generará un payload
para explotar
la vulnerabilidad
Si queremos ver el payload
enviado nos dirigimos a Burpsuite > Proxy > HTTP history