In questa guida vedremo come tentare di hackerare una connessione Wi-Fi con un Raspberry Pi 4 tramite drone. Vedremo come configurare il Raspberry, SSH, sistema operativo e l'antenna Wi-Fi con monitor mode.
Questa guida è stata scritta a scopo informativo, hackerare una connessione di per sé è illegale, figuriamoci con un drone!
Iniziamo subito con la configurazione del Raspberry Pi 4, installiamo il sistema operativo (in questo caso Kali Linux per un fattore di semplicità), procuriamoci anche una microSD da minimo 16gb.
- Scarichiamo l'ISO di Kali Linux (ARM) dal sito ufficiale.
- Poi useremo Etcher per formattare e "flashare" il sistema operativo:
Più la MicroSD è lenta più questo processo impiegherà del tempo quindi abbiate pazienza, finito il processo potete accendere il Raspberry con la MicroSD inserita.
Assicurati di aver configurato tutto per bene e per sicurezza aggiorna il sistema: sudo apt update
e sudo apt upgrade
.
Per capire meglio vi lascio un video di @Stefano con addirittura l'unboxing!
Ora dobbiamo stabilire una connessione tra Raspberry Pi 4 e il nostro PC per comandarlo a distanza. Il metodo più comune è quello di usare una connessione SSH, quindi attiviamola (dal PC):
sudo systemctl enable ssh
sudo systemctl start ssh
Ora tramite IP privato accediamo dal browser alla nostra dashboard del modem, nel mio caso è http://192.168.1.1
.
In questo modo andando sui dispositivi connessi possiamo vedere l'IP del Raspberry. Oppure in alternativa puoi digitare hostname -I
nel terminale del Raspberry.
Sempre nel nostro PC apriamo una connessione SSH:
ssh root@ipraspberry
Ora dopo aver eseguito il comando SSH il terminale dovrebbe chiederci la password utente del Raspberry e successivamente possiamo lanciare i comandi che vogliamo da remoto, fate una prova con ls
per verificare.
Passiamo alla parte dell'attacco che sarà di tipo "Dictionary Attack" (per reti WPA/WPA2) tramite i tools aircrack-ng, airodump-ng e aireplay-ng.
Aircrack-ng ci servirà per fare il "Dictionary Attack", Airodump-ng per scansionare le reti, Aireplay-ng per fare un Denial of Service all'access point.
Vi servirà anche una wordlist, la più completa e più usata è RockYou (download automatico) più di 130mb per un file di testo!
Ora dobbiamo attivare la monitor mode, sfortunatamente il Raspberry non la supporta quindi bisogna comprare e collegare esternamente un antenna Wi-Fi, le più usate in questo ambito sono le ALFA Network, circa sui 30/40€.
Per attivare la monitor mode:
sudo airmon-ng start wlan0
Per verificare se l'abbiamo attivata con successo digitiamo ifconfig
e vediamo se wlan0 si è trasformato in wlan0mon.
Dopo aver guidato il drone al "punto corretto", scansioniamo le reti:
sudo airodump-ng wlan0mon
Verranno restituiti molti parametri, i più importanti sono:
- BSSID: codice identificativo.
- ENC/CIPHER/AUTH: indica la protezione della rete;
- BEACONS: informazioni sulla rete.
- CH: abbreviazione di "channel" cioè il canale di trasmissione.
- ESSID: nome della rete.
- PWR: potenza del segnale.
Successivamente scegliere la rete da attaccare.
Il prossimo passo è quello di intercettare l'handshake. Per intercettarlo bisogna aspettare che cada la connessione del dispositivo e che poi questa venga ripristinata.
Se non si vuole aspettare si può optare per un deathentication attack, in pratica si inviano pacchetti modificati per per sollecitare la disconnesione del dispositivo. Ricordate di tenere l'handshake in ascolto quando lo fate.
Quindi disconnettiamo i client dalla rete:
sudo aireplay-ng --deauth 1 -a indirizzo_AP wlan0mon
Scelta la rete:
sudo airodump-ng -w /percorso/ -c channel --bssid indirizzobssid wlan0mon
In questo caso siamo in ascolto sulla rete scelta e salviamo il "log" nel percorso.
Catturato l'handshake possiamo avviare l'attacco dizionario:
aircrack-ng handshake-1.cap -w /home/samuele/Scrivania/WiFi
Nell'handshake-1.cap ho salvato la wordlist, avviatela con il comando -w.
Finita l'operazione se la password della vittima era già presente nella wordlist quest'ultima verrà restituita a schermo!