Velocizzare il cracking WPA/WPA2 con Aerolib
by admin on Jun.30, 2009, under Hacking, Linux, Networking, Sicurezza
Il cracking di una chiave WPA/WPA2 può contare solamente su di un attacco di tipo brute-force, o meglio, basato su dizionario. L’efficacia di un simile approccio è perciò direttamente proporzionale alle capacità computazionali a disposizione.
Airolib-ng può servire per creare un database contenente al proprio interno le password precomputate con l’ESSID di una particolare rete, rendendo in tal modo la fase di verifica, da parte di Aircrack-ng, molto più veloce.
Per meglio rendere il concetto, se normalmente nella ricerca di una chiave WPA tramite dizionario si raggiunge una velocità di circa 50-100 key/s, diviene possibile aumentare questa velocità a circa 10.000 key/s precompilando una tabella con l’ESSID e le password.
Come prerequisito, occorre avere installato SQLite3. Chi non lo avesse, può installarlo normalmente tramite apt-get (o conformemente alla propria distribuzione Linux).
Anche la suite Aircrack deve comprendere il supporto a SQLite3. Se così non fosse, occorre riscaricarla sotto forma di sorgente e ricompilarla con:
# make sqlite=true
# make sqlite=true install
A questo punto si può creare il database di appoggio con Airolib-ng:
# echo NETGEAR | airolib-ng newtestdb --import essid -
Database <newtestdb> does not already exist, creating it...
Database <newtestdb> sucessfully created
Reading file...
Writing...
Done.
Con questo comando andremo a creare un database chiamato “newtestdb” relativo all’ ESSID indicato in precedenza.
Per importarvi una password, il comando è:
# echo 12345678 | airolib-ng newtestdb --import passwd -
mentre, più realisticamente, per importare una lista di possibili password:
# airolib-ng newtestdb import ascii passwd lista_password.txt
Ovviamente, per la generazione di una lista di password si può fare ricorso ad un potente tool come John the Ripper, che è in grado di effettuare rielaborazioni a partire da una lista di base:
# john --wordlist=./passwords --rules --stdout | airolib-ng newtestdb --import ascii passwd -
La creazione delle PMK computando password con essid, viene fatto automaticamente da Airolib-ng con il comando:
# airolib-ng newtestdb batch
il tempo impiegato dipende dalla quantità di password elaborate e dal numero di essid (1 nel nostro caso) oltre che dalle performances del sistema in nostro possesso.
Volendo assicurarsi di aver creato un database senza errori si può utilizzare l’opzione “verify”; in tal caso Airolib-ng effettua una verifica volta ad eliminare ogni PMK che rilevi come non valida:
# airolib-ng newtestdb verify all
A questo punto non resta che cercare di recuperare la chiave WPA con Aircrack-ng usando il database appena creato e il file pcap contenente l’handshake WPA che avremo in precedenza catturato, come già visto in un post precedente:
# aircrack-ng -r newtestdb handshake.cap


July 1st, 2009 on 3:19 am