È possibile iniettare XSS in una variabile JavaScript se un sito Web inserisce HTML codificato, l'input dell'utente in una stringa doppia citata?
var userString = "perfectly "safe" input from user?";
Probabilmente non è possibile ottenere XSS dato questa semplice restrizione dei caratteri. Tuttavia, un utente malintenzionato potrebbe iniettare un carattere di escape, ad esempio:
var userString = "perfectly "safe" input from user?\"+"+alert(1);
In questo caso l'autore dell'attacco dovrebbe iniettare un \
e un alert(1)
in due variabili diverse che esistono in due posizioni all'interno del tag <script>
. I personaggi di fuga sono un tipo di carattere di controllo che vengono comunemente dimenticati dagli sviluppatori quando si sanificano i dati controllati da un utente malintenzionato.
... speriamo anche che tu lo abbia preso in considerazione:
<script>
var userString = "</script><script>alert(1)//"
</script>
Leggi altre domande sui tag javascript xss