XSS basado en DOM dentro del atributo src

6

Tengo el siguiente código de JavaScript:

var url= document.location.href;
document.write("<img src='?bla="+document.location.href+"'>");

Puedo insertar código cuando adjunto, p. ej. ?b=a'onX=alert(1);' a la URL, pero esto solo funciona en los navegadores donde no se codificará ' .

¿Hay otros ataques que no haya considerado? ¿Hay otra forma de romper el atributo src ?

    
pregunta Noahnder 22.11.2016 - 02:33
fuente

1 respuesta

1
  

¿Hay otros ataques que no haya considerado?

Para evitar que se codifique el formulario de comillas simples, podría intentar introducir su carga útil en la ruta en lugar de la cadena de consulta. Por ejemplo, si la página vulnerable reside en http://example.com/path/vulnerable.php , puedes probar algo como esto:

http://example.com/'onerror='payload/..%2Fpath/vulnerable.php

La idea es que algunos servidores resuelvan la ruta implícitamente. No verifican si la primera carpeta 'onerror='payload existe realmente, pero inmediatamente regresan al directorio principal ( ../ ) y resuelven el resto de la ruta sin emitir ningún redireccionamiento. (La URL que codifica la barra como %2f evita que su navegador acorte automáticamente la ruta).

  

¿Hay otra forma de romper el atributo src?

No, una cita coincidente es su única oportunidad de escapar del valor del atributo como se explica en esta respuesta .

    
respondido por el Arminius 22.11.2016 - 03:59
fuente

Lea otras preguntas en las etiquetas