XSS con codifica URL

0

Se l'URL di un sito web viene codificato, il sito Web è ancora vulnerabile a XSS o no?

Ad esempio, se provo <script>alert(1)</script> e l'URL del sito codifica il mio carico utile su %3Cscript%3Ealert(1)%3C%2Fscript%3E , significa che il sito è vulnerabile a XSS o no?

    
posta Rifat Shommo 27.07.2018 - 01:49
fonte

2 risposte

1

La risposta dipende da come la pagina esegue il rendering del payload.

Se la destinazione è una pagina HTML e il carico utile viene ancora visualizzato come <script>alert(1)</script> , si verificherà un XSS, supponendo che non vi siano CSP o l'auditor XSS di Chrome. Tuttavia, se la pagina HTML esegue il rendering del payload nella sintassi URL i.e. %3Cscript%3Ealert(1)%3C%2Fscript%3E , non ci sarà un XSS. A seconda di dove viene iniettato il carico utile in quest'ultimo, vorrei anche provare caratteri speciali come " e ' per provare a sfuggire al contesto dell'URL per iniettare direttamente nel tag HTML (url).

    
risposta data 27.07.2018 - 05:47
fonte
0

In questo particolare esempio, quel parametro non sarebbe vulnerabile a XSS.

Dipende, non stai dando un carico di informazioni, ma in generale sembra che sia qualcosa del tipo: htmlspecialchars(htmlentities($input)) che è incredibilmente sicuro.

Questo non significa che il SITO non sia vulnerabile, significa solo che questo parametro in particolare sembra essere sicuro.

Dipende ancora, è il parametro che inserisce il tuo input in un link, iframe, immagine, ecc? Se si sta iniettando all'interno di un altro elemento, potrebbe essere possibile indipendentemente usando metodi come javascript: e data: .

    
risposta data 27.07.2018 - 02:06
fonte

Leggi altre domande sui tag