XSS con codificación de URL

0

Si la URL de un sitio web se codifica, ¿es el sitio web aún vulnerable a XSS o no?

Por ejemplo, si intento <script>alert(1)</script> y la URL del sitio codifica mi carga útil a %3Cscript%3Ealert(1)%3C%2Fscript%3E , ¿significa que el sitio es vulnerable a XSS o no?

    
pregunta Rifat Shommo 27.07.2018 - 01:49
fuente

2 respuestas

1

La respuesta depende de cómo la página representa su carga útil.

Si el objetivo es una página HTML y la carga útil todavía aparece como <script>alert(1)</script> , se producirá un XSS, suponiendo que no haya un CSP o el auditor de XSS de Chrome. Sin embargo, si la página HTML representa su carga útil en la sintaxis de la URL, es decir, %3Cscript%3Ealert(1)%3C%2Fscript%3E , no habrá un XSS. Dependiendo de dónde se inyecte la carga útil en este último, también probaría caracteres especiales como " y ' para intentar escapar del contexto de la URL para inyectar directamente en la etiqueta HTML (url).

    
respondido por el Yuu 27.07.2018 - 05:47
fuente
0

En ese ejemplo en particular, ese parámetro no sería vulnerable a XSS.

Depende, no estás dando mucha información, pero en general parece ser algo como: htmlspecialchars(htmlentities($input)) que es increíblemente seguro.

Esto no significa que el SITIO no sea vulnerable, solo significa que este parámetro en particular parece ser seguro.

Esto aún depende, ¿el parámetro está inyectando su entrada en un enlace, marco, imagen, etc.? Si se está inyectando dentro de otro elemento, puede ser posible sin importar el uso de métodos como javascript: y data: .

    
respondido por el Cillian Collins 27.07.2018 - 02:06
fuente

Lea otras preguntas en las etiquetas