He estado buscando vulnerabilidades de XSS en el sitio web de un amigo (blackbox) y en una de las páginas toma su entrada y la coloca dentro de un script js, window.location="[INPUT]";
No pude descifrar las comillas porque están siendo reemplazadas con "
y %22
permanece %22
, pero puedo poner un \
al final de mi entrada y se escapa de la cotización original ( window.location="[INPUT]\";
) Lo que me da una cadena sin terminar pero no puedo influir en ningún código después de eso, así que no hay XSS ahí, ¿verdad? Básicamente, todo lo que puedo hacer es romper el código y eso es todo
Editar:
--Alguna más información--
-
<
,>
,&
y"
se están reemplazando con<
,>
,&
y"
- el servidor comprueba si
INPUT
comienza conhttp://
ohttps://
Cosas que he probado:
- Rompa la cadena con
</script>
=>
siendo reemplazado con</script>
(y falla) - Se intentó romper con la URL codificada
</script>
(%3C%2Fscript%3E
) pero se muestra como una cadena (window.location = "http://test.com%3C%2Fscript%3E\";
) y el error sigue siendoSyntaxError: unterminated string literal