Ho cercato le vulnerabilità XSS nel sito web di un amico (blackbox) e in una delle pagine prende il tuo input e lo inserisce in uno script js, window.location="[INPUT]";
Non potevo interrompere le virgolette perché sono state sostituite con "
e %22
rimane %22
, ma posso mettere un \
alla fine del mio input e fugge la citazione originale ( window.location="[INPUT]\";
) Il che mi dà una stringa non terminata ma non posso influenzare alcun codice dopo di ciò quindi non c'è XSS lì, giusto? Tutto quello che posso fare è rompere il codice e basta
Modifica:
--Alcune informazioni in più--
-
<
,>
,&
e"
vengono sostituiti con<
,>
,&
e"
- il server controlla se
INPUT
inizia conhttp://
ohttps://
Cose che ho provato:
- Spezza la stringa con
</script>
=>
sostituita con</script>
(e fallisce) - Si è tentato di romperlo con l'URL codificato
</script>
(%3C%2Fscript%3E
) ma lo mostra come stringa (window.location = "http://test.com%3C%2Fscript%3E\";
) e l'errore è ancoraSyntaxError: unterminated string literal