Orden del analizador del navegador y XSS

2

Recuerdo haber leído algo hace un rato acerca de los ataques XSS exitosos cuando se usaba la técnica de codificación incorrecta para el contexto. En particular, recuerdo esto cuando la codificación HTML en el contexto de Javascript, para el valor del atributo de una etiqueta que representa un gancho de Javascript, como onload. Por ejemplo,

   <body onload='doSomething ("userdata")'>

donde el servidor HTML codifica los datos del usuario antes de escribir el HTML sobre el socket en el navegador.

Como recuerdo, el navegador primero analizaría la página en busca de HTML, descodificando el valor del atributo, deshaciendo la codificación HTML de los datos del usuario. El siguiente navegador analizará JavaScript. Si los datos de usuario se crearon como una carga útil XSS, como

  x")&&alert ("xss  

ahora sería ejecutado. Por mi vida, ya no puedo encontrar las referencias relevantes que demuestran este comportamiento, ni puedo recordar si el orden de análisis tiene otras sutilezas, como si los estilos de codificación HTML o las URL produzcan vulnerabilidades de XSS. O si hay problemas de orden de análisis con la codificación entre URL, CSS y JS.

¿Qué referencias demuestran que la codificación con qué mecanismos en el contexto incorrecto darán como resultado vulnerabilidades continuas de XSS y cuáles solo causarán problemas de uso?

    
pregunta atk 24.08.2016 - 22:56
fuente

1 respuesta

2

El estándar XML decodificará implícitamente todos los valores de atributo . Al representar una página HTML, estos atributos se interpretan como sus valores literales de caracteres decodificados antes de interpretarse como un posible evento de JavaScript.

En el contexto de XSS, un evento DOM puede llevar a XSS al socavar la rutina de escape utilizada para construir el documento XML . Por ejemplo, la siguiente secuencia de escape es un vector XSS:

<img src="CoolPic.jpg" onclick="doSomethingCool('userInput&#000000039;);sendHaxor(document.cookie);//');" />

Esta es una de las muchas razones por las que la Política de Seguridad de Contenido (CSP) es valiosa para prevenir el problema resbaladizo de XSS.

    
respondido por el rook 25.08.2016 - 07:58
fuente

Lea otras preguntas en las etiquetas