Wifi cracking blog header image

Come ho incrinato il 70% delle reti Wifi di Tel Aviv (da un campione di 5.000 WiFi raccolti).

Negli ultimi sette anni che ho vissuto a Tel Aviv, ho cambiato appartamento quattro volte. Ogni volta che ho affrontato lo stesso scenario: la società internet ha preso diversi giorni per collegare l’appartamento, lasciandomi disconnesso e frustrato durante il tentativo di guardare lag Netflix sul televisore con il mio hotspot cellulare. Una soluzione che ho a questo scenario è avere il ” Ciao. Io sono il nuovo vicino di casa” parlare con i vicini durante il tentativo di ottenere il loro numero di cellulare in caso di emergenze — e chiedendo se potevo usare il loro WiFi fino a quando la società via cavo mi ha collegato. Penso che tutti possiamo essere d’accordo sul fatto che non avere internet rientra facilmente nella categoria di emergenza! Spesso, il loro numero di cellulare era anche la loro password WiFi!

Ho ipotizzato che la maggior parte delle persone che vivono in Israele (e nel mondo) hanno password WiFi non sicuri che possono essere facilmente incrinati o addirittura indovinato da vicini curiosi o attori malintenzionati.

La combinazione della mia esperienza passata, un attacco WiFi relativamente nuovo che spiegherò momentaneamente, un nuovo monster cracking rig (8 x QUADRO RTX 8000 48GB GPU) in CyberArk Labs e il fatto che il WiFi è ovunque perché la connettività è più importante che mai mi ha spinto alla ricerca, se avevo ragione con la mia ipotesi o forse solo fortunato.

Con il continuo passaggio al lavoro a distanza a causa della pandemia, proteggere le reti domestiche è diventato imperativo e rappresenta un rischio per l’impresa se non lo fa. Le reti domestiche raramente hanno gli stessi controlli delle reti aziendali. E un programma di sicurezza è forte solo come il suo anello più debole.

Figura 1 - CyberArk Labs new cracking rig

Figura 1 – CyberArk Labs new cracking rig

Per testare questa ipotesi, ho raccolto 5.000 hash di rete WiFi come mio gruppo di studio passeggiando per le strade di Tel Aviv con attrezzature WiFi sniffing. Alla fine della ricerca, sono stato in grado di rompere più del 70% delle password delle reti WiFi annusate con relativa facilità. L’area metropolitana di Tel Aviv ha più di 3.9 milioni di persone-puoi immaginare quali sarebbero stati i numeri se non avessimo tagliato la nostra ricerca su 5.000 reti WiFi. E mentre questa ricerca è stata condotta a Tel Aviv, i router che erano suscettibili a questo attacco — da molti dei più grandi fornitori del mondo — sono utilizzati da famiglie e imprese in tutto il mondo.

In questo blog, dimostro quanto facilmente (non hai bisogno di un impianto di cracking) e con poche attrezzature password WiFi non sicure possono essere incrinate, hackerando così la rete WiFi .Alla fine, riveleremo le statistiche degli hash incrinati e spiegheremo come difendere la tua rete da questo tipo di attacco. Pertanto, è della massima importanza che conosciamo e comprendiamo il metodo di cracking per formare una difesa adeguata.

Scaviamo

Prima della ricerca di Jens “atom” Steube (sviluppatore principale di Hashcat), quando un hacker voleva decifrare una password WiFi, aveva bisogno di catturare una stretta di mano a quattro vie tra un client e un router che si verificava solo durante la creazione della connessione. In poche parole, l’attaccante avrebbe bisogno di monitorare la rete nel momento in cui l’utente o il dispositivo si connette alla rete WiFi. Pertanto, un hacker doveva trovarsi in una posizione fisica tra il punto di accesso (router) e il client, sperando che l’utente inserisse la password giusta e che tutti e quattro i pacchetti della stretta di mano fossero annusati correttamente. Se un hacker non voleva aspettare fino a quando una vittima stabilisce una connessione (che può richiedere ore, chi si connette alla propria rete domestica mentre sono al lavoro?), l’attaccante potrebbe de-autenticare un utente già connesso per costringere la vittima ad avere una nuova stretta di mano a quattro vie.

Un altro vettore di attacco consiste nell’impostare una rete gemella malevola con lo stesso SSID (nome di rete), sperando che la vittima provi ad accedere alla rete falsa. Una grave lacuna di questo è, naturalmente, che è molto rumoroso (il che significa che può essere facilmente rintracciato) e può essere facilmente notato.

In inglese semplice, se un avversario voleva hackerare / decifrare una password WiFi, deve essere nel posto giusto (tra gli utenti e un router) al momento giusto (quando gli utenti accedono) ed essere fortunato (gli utenti hanno inserito la password corretta e tutti e quattro i pacchetti sono stati annusati correttamente).

Tutto questo è cambiato con la ricerca innovativa di atom, che ha esposto una nuova vulnerabilità di targeting RSN IE (Robust Security Network Information Element) per recuperare un hash PMKID (sarà spiegato in un po’) che può essere utilizzato per decifrare la password di rete di destinazione. PMKID è un hash che viene utilizzato per le funzionalità di roaming tra AP. L’uso legittimo di PMKID è, tuttavia, di scarsa rilevanza per lo scopo di questo blog. Francamente, non ha molto senso abilitarlo sui router per uso personale / privato (WPA2-personal), poiché di solito non è necessario il roaming in una rete personale.

La tecnica di Atom è senza client, rendendo obsoleta la necessità di acquisire il login di un utente in tempo reale e la necessità per gli utenti di connettersi alla rete. Inoltre, richiede solo all’utente malintenzionato di catturare un singolo frame ed eliminare password errate e frame malformati che disturbano il processo di cracking.
In parole povere, non abbiamo bisogno di aspettare che le persone si connettano ai loro router affinché questo attacco abbia successo. Siamo proprio nelle vicinanze del router / rete ottenendo un hash PMKID e cercando di decifrarlo.

Per rompere un PMKID, dobbiamo prima capire come viene generato.

Come viene generato l’hash PMKID e quali elementi contiene

Figura 2 - Flusso di calcolo dell'hash PMKID e PMK

Figura 2 – Flusso di calcolo dell’hash PMKID e PMK

Il calcolo dell’hash potrebbe sembrare scoraggiante a prima vista, ma ci tuffiamo in esso.

Dobbiamo generare un PMK guidato da SSID (il nome della rete) e la Passphrase; quindi generiamo un PMKID guidato dal PMK che abbiamo generato, l’indirizzo MAC AP e l’indirizzo MAC del client. Quindi vediamo dove possiamo trovare quelli:

Il PMK è calcolato come segue:

Figura 3 - Calcolo PMK

Figura 3 – Calcolo PMK

  • Passphrase– La password WiFi — quindi, la parte che stiamo veramente cercando.
  • SSID – Il nome della rete. È disponibile gratuitamente presso i beacon del router (Figura 3).
  • 4096-Numero di iterazioni PBKDF2

Figura 4-SSID da un beacon

Figura 4 – SSID da un beacon

Dopo che è stato generato un PMK, possiamo generare un PMKID.
Il PMKID viene calcolato come segue:

Figura 5 - Calcolo PMKID

Figura 5 – Calcolo PMKID

  • PMK – Quello che stiamo cercando, generato sopra. In WPA2 personal, il PMK è il PSK (sarà spiegato nel prossimo paragrafo).
  • “Nome PMK” – Stringa statica per tutti i PKMID.
  • MAC_AP – Indirizzo MAC del punto di accesso-Questo indirizzo può essere trovato in qualsiasi frame inviato dal router (Figura 4).
  • MAC_STA-L’indirizzo Mac del client può essere trovato in qualsiasi frame inviato dal computer del client(Figura 4). Può inoltre essere trovato nell’output dei comandi ifconfig\ip A.

Figura 6-PMKID, MAC di AP, MAC del cliente Figura 6-PMKID, MAC di AP, MAC del cliente

Cracking l’hash PMKID è in ultima analisi, solo la generazione / calcolo PMK con l’SSID e diverse passphrase, quindi il calcolo PMKID dal PMK e le altre informazioni che abbiamo ottenuto. Una volta generato un PMKID uguale al PMKID che è stato recuperato dall’AP (Figura 3), l’hash è incrinato; le passphrase utilizzate per generare il PMK corretto da cui è stato generato il PMKID sono la password WiFi corretta.

Ora sappiamo come viene generato un PMKID e possiamo continuare le fasi di sniffing e cracking della nostra ricerca.

Sniffing PMKID

Per raccogliere hash PMKID WiFi, è necessaria un’interfaccia di rete wireless con funzionalità di modalità monitor. La modalità Monitor consente l’acquisizione dei pacchetti senza doverli associare a un punto di accesso.

Ho comprato una scheda di rete AWUS036ACH ALFA per $50 (ci sono opzioni ancora più economiche) che supporta la modalità monitor e l’iniezione di pacchetti e sono andato in giro per il centro di Tel Aviv per annusare WiFis.

Prima di poter iniziare lo sniffing, dobbiamo preparare il nostro ambiente:

Ho usato una macchina ubuntu con AWUS036ACH ALFA.

Figura 7 - AWUS036ACH ALFA NIC

Figura 7 – AWUS036ACH ALFA NIC

Costruiamo il pacchetto Hcxdumptool — una grande utility di ZerBea per catturare pacchetti da dispositivi WLAN.

git clone https://github.com/ZerBea/hcxdumptool.gitsudo apt-get install libcurl4-OpenSSL-dev libssl-dev pkg-configmake

Dopo di che, abbiamo bisogno di installare i driver con capacità di modalità monitor. Ogni chipset ha i suoi driver:

git clone -b v5.6.4.2 https://github.com/aircrack-ng/rtl8812au.gitmake && make install

Si consiglia di arrestare i servizi che potrebbero interferire con l’esecuzione di Hcxdumptool:

sudo systemctl stop wpa_supplicantsudo service NetworkManager stop

Allora è il momento di iniziare ad annusare. Hcxdumptool è un potente strumento che può essere utilizzato per vari attacchi, non solo il PMKID; pertanto, disabilitiamo qualsiasi attacco che non prende di mira PMKID.

sudo ../../tools/hcxdumptool/hcxdumptool -i wlx00c0caac2745 -o Wi-Fi_PMKID.pcapng --disable_deauthentication --disable_client_attacks --enable_status=3
  • -i my Alfa NIC, è possibile eseguire ifconfig\ip a per trovare il nome dell’interfaccia.
  • – o l’output pcapng dell’esecuzione.

Ora indossa una felpa con cappuccio, perché otterrai un PMKID di ogni rete che attraversi che è vulnerabile all’attacco.

Figura 8 - Me in una felpa con cappuccio

Figura 8 – Me in una felpa con cappuccio

Quando ho raggiunto 5.000 reti raccolte, ho deciso di smettere; L’estate israeliana era troppo calda per me, così mi sono rivolto alla parte divertente — cracking.

È tempo di cracking!

Il nostro primo passo nella procedura di cracking è installare hashcat, lo strumento di recupero password più veloce e avanzato al mondo. Poiché i risultati dello sniffing sono sotto forma di pcapng, avevamo bisogno di convertirli in un formato hashfile per adattarlo a hashcat. Per questo obiettivo, ho fatto uso di un altro strumento dalla grande suite di hcxtools.

hcxpcapngtool -o Wi-Fi_pmkid_hash_22000_file.txt Wi-Fi_PMKID.pcapng

Risultante in un hashfile che ogni riga assume la seguente struttura:

SIGNATURE*TYPE*PMKID/MIC*MACAP*MACSTA*ESSID* * *

Ecco un esempio di hashline:

WPA*01*c6d5c97b9aa88cbe182429275a83efdb*302478bee0ee*acde48a84862*54686557494649***

  • FIRMA = “WPA”
  • TYPE = 01 per PMKID, 02 per EAPOL, gli altri a seguire
  • PMKID/MIC = PMKID se TIPO==01, MIC se TIPO==02
  • MACAP = MAC dell’AP
  • MACSTA = MAC della stazione
  • ESSID = ESSID
  • Non utilizzato in un attacco PMKID:
    • ANONCE = ANONCE
    • EAPOL = EAPOL (SNONCE è qui)
    • MESSAGEPAIR = Maschera di bit

Il passo successivo è quello di iniziare il cracking procedura eseguendo hashcat:

Hashcat funzionalità includono diversi metodi di cracking, di cui le più comuni sono il dizionario + regole e maschera attacco. I metodi differiscono nel modo in cui stanno formando la Passphrase.

Abbiamo scelto di iniziare con quello che viene chiamato “attacco maschera”, a causa della terribile abitudine che molte persone che vivono in Israele hanno di usare i loro numeri di cellulare come password WiFi. Puoi pensare a mask attack come Regex:

  • ?d-cifre
  • ?l-caratteri minuscoli
  • ?u-Caratteri maiuscoli
  • ?s-simboli speciali come ? ! $ …..

La maschera per la password: 202!become diventerebbe ?d?d?d?s?s?l?l?l?l?u

Ecco il mio comando Hashcat che ha provato tutte le possibili combinazioni di numeri di cellulare in Israele

sudo hashcat -a 3 -w4 -m 22000 /home/tuser/hashes/Wi-Fi_pmkid_hash_22000_file.txt 05?d?d?d?d?d?d?d?d -o /home/tuser/hashes/pmkid_cracked.txt

Durante questa prima esecuzione dell’attacco mask, abbiamo decifrato 2.200 password. Calcoliamo il numero di opzioni per i numeri di cellulare israeliani:
È lungo 10 cifre e inizia con 05. Pertanto, dobbiamo indovinare le restanti 8 cifre.

Ogni cifra ha 10 opzioni (0-9), quindi 10**8 combinazioni possibili. Cento milioni sembrano un sacco di combinazioni, ma il nostro monster rig calcola alla velocità di 6819.8 kH/s che si traduce in 6,819,000 hash al secondo.
Non è necessario un cracking rig poiché il mio laptop può arrivare a 194,4 kH/s, il che si traduce in 194.000 hash al secondo. Ciò equivale a una potenza di calcolo più che sufficiente per scorrere le possibilità necessarie per decifrare le password. Di conseguenza, il mio portatile ha impiegato circa 9 minuti per rompere una singola password WiFi con le caratteristiche di un numero di cellulare. (10**8)/194,000 = ~516 (secondi) / 60 = ~ 9 minuti.

La velocità di cracking per gli hashtypes differisce a causa delle diverse funzioni di hash e del numero di iterazioni. Ad esempio, PMKID è molto lento rispetto a MD5 o NTLM. Tuttavia, è possibile decifrare un hash PMKID se l’attaccante si concentra su una rete specifica e la password non è abbastanza complicata.

In seguito, abbiamo eseguito un attacco dizionario standard con il dizionario più comune, Rockyou.txt, e incrinato più di 900 hash. Ecco un piccolo assaggio in Rockyou.contenuto txt:

123456 12345 123456789 password iloveyou princess 1234567 rockyou 12345678 abc123 nicole daniel babygirl monkey lovely jessica 654321 michael ashley

Diamo un’occhiata alle statistiche degli hash incrinati:

Password incrinate per la loro lunghezza:

Lunghezza Della Password Occorrenze
10 2405
8 744
9 368
12 14
11 14
14 7
13 7
Somma 3,559

Come si può vedere, tranne che per le 10 cifre — che abbiamo avuto una maschera su misura per la lunghezza della password è aumentato, il numero di password incrinate è diminuito. La lezione qui? Più lunga è la password, meglio è.

Top 4 maschere per il cracking delle password:

Maschera Occorrenze Significato
Maschera Occorrenze Significato
?d?d?d?d?d?d?d?d?d?d 2349 10 cifre
?d?d?d?d?d?d?d?d 596 8 cifre
?d?d?d?d?d?d?d?d?d 368 9 cifre
?l?l?l?l?l?l?l?l 320 8 lettere minuscole
Somma 3,633

Possiamo vedere che il cracking delle password più spesso di montare una maschera che contiene solo cifre o solo caratteri minuscoli.

Non tutti i router supportano le funzionalità di roaming e non sono quindi vulnerabili all’attacco PMKID. Tuttavia, la nostra ricerca ha rilevato che i router prodotti da molti dei più grandi fornitori del mondo sono vulnerabili.

Come ho stimato in precedenza, il processo di sniffing WIFIS e le successive procedure di cracking era un’impresa molto accessibile in termini di attrezzature, costi ed esecuzione.

La linea di fondo è che in un paio d’ore e con circa $50, il tuo vicino o un attore malintenzionato può compromettere la tua privacy e molto altro se non hai una password complessa.

Conclusione

In totale, abbiamo rotto più di 3.500 rete WiFi in ed intorno a Tel Aviv – il 70% del nostro campione.

La minaccia di una rete WiFi compromessa presenta gravi rischi per gli individui, i proprietari di piccole imprese e le imprese. E come abbiamo dimostrato, quando un utente malintenzionato può violare più del 70% delle reti WiFi in una grande città globale con relativa facilità, occorre prestare maggiore attenzione alla protezione di se stessi.

Al livello più elementare, le persone che utilizzano la tua rete prendono parte della tua larghezza di banda, il che potrebbe rallentare la tua esperienza Internet. Tuttavia, più consequenziale è che una volta che gli aggressori ottengono l’accesso alla rete, possono lanciare vari attacchi man-in-the-middle (MITM). Ciò può portare gli aggressori ad accedere ai tuoi account importanti, come il tuo conto bancario, il tuo account di posta elettronica (che è tutto nella vita moderna) e compromettere altre credenziali sensibili. Questo apre ulteriormente i vettori di attacco ai tuoi dispositivi IoT come apparecchiature per la casa intelligente, smart TV, sistemi di sicurezza, ecc.

Per le piccole imprese, il rischio risiede in un utente malintenzionato che si infiltra in una rete e poi si sposta lateralmente verso applicazioni o dati di alto valore, come un sistema di fatturazione o un cassiere.

Per quanto riguarda l’impresa, è possibile per un utente malintenzionato di ottenere l’accesso iniziale al WiFi di un utente remoto e poi salire al computer dell’utente e attendere una connessione VPN o per l’utente di andare in ufficio e spostare lateralmente da lì.

Da una prospettiva più ampia, i computer e altri dispositivi di solito non sono accessibili dall’esterno della rete a causa del NAT, ma una volta che un utente malintenzionato è nella rete, facilita una serie di vettori di attacco.

Come dovrei proteggermi?

  1. Scegli una password complessa. Una password complessa deve includere almeno un carattere minuscolo, un carattere maiuscolo, un simbolo, una cifra. Dovrebbe essere lungo almeno 10 caratteri. Dovrebbe essere facilmente ricordato e difficile da anticipare. Cattivo esempio: Summer Summer 021
  2. Cambia il nome utente e la password predefiniti del tuo router.
  3. Aggiornare la versione del firmware del router.
  4. Disabilitare i protocolli di crittografia deboli (come WAP o WAP1).
  5. Disabilita WPS.

È importante notare che l’implementazione dell’autenticazione a più fattori (MFA) per il WiFi personale è difficile e in gran parte poco pratica per un WiFi personale e un consumatore non tecnico. È anche improbabile che MFA sarà ampiamente disponibile per i casi d’uso generale dei consumatori nella funzione near.

Vorrei dare un grande applauso ad Atom e ZerBea per il loro incredibile lavoro su questa tecnica di attacco e per il loro lavoro in generale.

Spero che ti sia piaciuto questo blog e che adotterai le misure necessarie per proteggere la tua rete WiFi. E come promemoria, nessuna delle password che abbiamo decifrato è stata utilizzata per l’accesso non autorizzato a queste reti WiFi o qualsiasi altra informazione accessibile tramite queste reti.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.