Test XSS: come convalidare manualmente?

1

Ho Burp e Appscan che mi dicono che Reflected XSS è possibile a causa di una particolare variabile su una determinata pagina.

Viene fornito il seguente esempio di ciò che Appscan ha iniettato

'%252fmypage.aspx%253fHomeURL%253d%252fmyotherpage.aspx"/><script>alert(152695)</script>'

e ciò che Burp ha iniettato

x.com/mypage.aspx?HomeURL=%2fmyotherpage.aspxae6fd'onmouseover%3d'alert(1)'30ec6

Ho provato le varianti su entrambi, con e senza virgolette, con codifica diversa, e non riesco mai a far funzionare JavaScript in nessun browser. Attualmente sto provando Chrome con --disable-web-security, che non fa differenze.

Posso ottenere il codice visualizzato nella sorgente della pagina, quindi so che il virus è lì, ma ho problemi a convalidarlo realmente.

Che cosa è in comune, se non altro, con quali rutti e app possono essere utilizzati per convalidare la vulnerabilità?

Mi piacerebbe capirlo meglio in modo da poterlo verificare più facilmente in futuro.

    
posta Sonny Ordell 25.08.2014 - 11:48
fonte

2 risposte

4

Appscan ha la funzione "mostra nel browser" che apre il browser speciale di "peggiore di tutti i mondi" di Appscan per la vulnerabilità data. Se non è un falso positivo, questo browser dovrebbe eseguire il Javascript. Ho trovato un modo abbastanza affidabile per verificare i falsi positivi.

Per tutti gli altri test, ho scoperto che Firefox è il meno protetto da XSS, quindi utilizzo sempre Firefox per i test manuali.

Succede molto che la pagina effettiva che esegue l'XSS sia una pagina di errore che è stata reindirizzata e forse non stai permettendo che i tuoi test manuali proseguano fino alla pagina di errore.

Si noti che con l'esempio di Burp che si mostra, il Javascript non verrà eseguito finché non si sposta effettivamente il mouse sul controllo in questione.

    
risposta data 26.08.2014 - 00:36
fonte
1
I rapporti

AppScan e Burp suite riflettevano XSS anche quando non è stato eseguito JavaScript. Mostra che la risposta per quella particolare richiesta è costituita dal payload aggiunto, ma se il payload è stato eseguito come JavaScript o lo ha preso come testo normale che non mostra.

    
risposta data 20.01.2015 - 13:26
fonte

Leggi altre domande sui tag