¿Se ejecutan secuencias de comandos de sitio cruzado cuando se escapan los signos mayor que y menor que?

17

Si un sitio web codifica < a &lt; y > se convierte en &gt; , ¿todavía es posible realizar secuencias de comandos entre sitios? ¿En qué incluiría las etiquetas de script?

Por ejemplo, en uno de mis sitios puedo usar <script>alert(1)</script> normalmente, pero ¿cómo puedo hacer lo mismo cuando se realiza la codificación?

    
pregunta Bob John 17.02.2015 - 05:57
fuente

2 respuestas

17

Oh, sí, lo es!

Considere este HTML:

<a href="{{str}}">

y considere una entrada como:

" onmouseover="alert('GOTCHA')"

Obtienes la imagen.

Si su javascript está siendo inyectado dentro de una etiqueta, entonces no necesita los corchetes angulares. Tomé prestado este mensaje S / O similar: enlace

Si está interesado en la evasión de filtros como este consulte:

enlace

Esto tiene todas las cosas comunes.

En lo que respecta a la seguridad: ¡Codifica todas las cosas! Nunca se sabe lo listo que es el atacante.

    
respondido por el baordog 17.02.2015 - 06:17
fuente
3

Cuando se trata de scripts entre sitios, lo más importante es el contexto. El contexto en el que se refleja o se almacena. Lo demostraré con un ejemplo real de mi experiencia. Una vez, mientras buscaba errores, noté que un parámetro de URL se reflejaba dentro de una variable:

http://www.example.com/blah.php?id=test&var=101011

El valor de var se reflejaba en el origen de la página al cargar la página, aproximadamente en el siguiente formato, dentro de un bloque de script:

var a = "101011";

e inyectar tanto como un '<' desviaría la solicitud a la WAF que arrojaría una página de error, por lo que mi carga útil real para solucionar esto fue:

prompt(1)";eval(a);

que omitió el WAF y se convirtió en un caso exitoso de XSS reflejado. Por lo tanto, la carga útil debe modificarse según el contexto y es posible que no necesite las etiquetas. Espero que haya ayudado.

    
respondido por el Aatif Shahdad 19.02.2015 - 16:03
fuente

Lea otras preguntas en las etiquetas