airolib-ng
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
airolib-ng [2007/07/10 21:27] – compile error example when SQLite is back versioned darkaudax | airolib-ng [2009/09/26 20:49] – darkaudax | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Airolib-ng ====== | ====== Airolib-ng ====== | ||
- | |||
- | ++++++ IMPORTANT ++++++\\ | ||
- | ++++++ IMPORTANT ++++++\\ | ||
- | ++++++ IMPORTANT ++++++\\ | ||
- | |||
- | This functionality will be available in a future release. It is NOT available currently. | ||
- | |||
- | ++++++ IMPORTANT ++++++\\ | ||
- | ++++++ IMPORTANT ++++++\\ | ||
- | ++++++ IMPORTANT ++++++\\ | ||
===== Description ===== | ===== Description ===== | ||
- | Airolib-ng is a tool for the aircrack-ng suite to store and manage essid and password lists, compute their Pairwise Master Keys (PMKs) and use them in WPA/WPA2 cracking. | + | Airolib-ng is an aircrack-ng suite tool designed |
WPA/WPA2 cracking involves calculating the pairwise master key, from which the private transient key (PTK) is derived. | WPA/WPA2 cracking involves calculating the pairwise master key, from which the private transient key (PTK) is derived. | ||
- | Calculating the PMK is very slow since it uses the pbkdf2 algorithm. | + | Calculating the PMK is very slow since it uses the pbkdf2 algorithm. |
Computing the PMK is still required, yet we can: | Computing the PMK is still required, yet we can: | ||
Line 48: | Line 38: | ||
Here are the valid operations: | Here are the valid operations: | ||
- | * init | + | * - -stats - Output some information about the database. |
- | * stats - Output some information about the database. | + | * - -sql {sql} - Execute the specified SQL statement. |
- | * sql {sql} - Execute the specified SQL statement. | + | * - -clean [all] - Perform steps to clean the database from old junk. The option ' |
- | * clean [all] - Perform steps to clean the database from old junk. The option ' | + | * - -batch - Start batch-processing all combinations of ESSIDs and passwords. |
- | * batch - Start batch-processing all combinations of ESSIDs and passwords. | + | * - -verify [all] - Verify a set of randomly chosen PMKs. If the option ' |
- | * verify [all] - Verify a set of randomly chosen PMKs. If the option ' | + | * - -export cowpatty {essid} {file} |
- | * export cowpatty {essid} {file} | + | * - -import cowpatty {file} |
- | * import cowpatty {file} | + | * - -import {essid|passwd} {file} |
- | * import | + | |
===== Usage Examples ===== | ===== Usage Examples ===== | ||
Here are usage examples for each operation. | Here are usage examples for each operation. | ||
- | |||
- | ==== Init Operation ==== | ||
- | |||
- | You must be in the directory where you want the database created or specify the fully qualified path name. | ||
- | |||
- | Enter: | ||
- | |||
- | | ||
- | |||
- | Where: | ||
- | |||
- | * testdb is the name of the database to be created. | ||
- | * init is the operation to be performed. | ||
- | |||
- | The system does not respond with any output. | ||
- | |||
==== Status Operation ==== | ==== Status Operation ==== | ||
Line 83: | Line 55: | ||
Enter: | Enter: | ||
- | | + | |
Where: | Where: | ||
* testdb is the name of the database to be created. | * testdb is the name of the database to be created. | ||
- | * stats is the operation to be performed. | + | * - -stats is the operation to be performed. |
The system responds: | The system responds: | ||
Line 97: | Line 69: | ||
| | ||
| | ||
- | |||
==== SQL Operation ==== | ==== SQL Operation ==== | ||
Line 105: | Line 76: | ||
Enter: | Enter: | ||
- | | + | |
The system responds: | The system responds: | ||
Line 116: | Line 87: | ||
Enter: | Enter: | ||
- | | + | |
The system responds: | The system responds: | ||
| | ||
- | |||
==== Clean Operation ==== | ==== Clean Operation ==== | ||
Line 127: | Line 97: | ||
To do a basic cleaning, enter: | To do a basic cleaning, enter: | ||
- | | + | |
The system responds: | The system responds: | ||
Line 139: | Line 109: | ||
To do a basic cleaning, reduce the file size if possible and run an integrity check., enter: | To do a basic cleaning, reduce the file size if possible and run an integrity check., enter: | ||
- | | + | |
The system responds: | The system responds: | ||
Line 152: | Line 122: | ||
Query done. 2 rows affected. | Query done. 2 rows affected. | ||
Done. | Done. | ||
- | |||
==== Batch Operation ==== | ==== Batch Operation ==== | ||
Line 158: | Line 127: | ||
Enter: | Enter: | ||
- | | + | |
The system responds: | The system responds: | ||
| | ||
- | |||
- | IMPORTANT: You must press control-C to terminate this program once it is finished or it will continue to run indefinitely. | ||
- | |||
- | |||
==== Verify Operation ==== | ==== Verify Operation ==== | ||
Line 172: | Line 137: | ||
To verify a 1000 random PMKs, enter: | To verify a 1000 random PMKs, enter: | ||
- | | + | |
The system responds: | The system responds: | ||
Line 184: | Line 149: | ||
To verify all PMKs, enter: | To verify all PMKs, enter: | ||
- | | + | |
The system responds: | The system responds: | ||
Line 192: | Line 157: | ||
- | ==== Export | + | ==== Cowpatty table Export Operation ==== |
Enter: | Enter: | ||
- | | + | |
The system responds: | The system responds: | ||
Line 204: | Line 169: | ||
- | ==== Import | + | ==== Import Operation ==== |
- | Enter: | + | === SSID === |
- | + | To import an ascii list of SSIDs and create the database if it does not exist, enter: | |
- | | + | |
- | + | ||
- | The system responds: | + | |
- | + | ||
- | | + | |
- | | + | |
- | | + | |
- | | + | |
- | + | ||
- | + | ||
- | ==== Import ascii Operation | + | |
- | + | ||
- | To import an ascii list of SSIDs, enter: | + | |
- | | + | |
Where: | Where: | ||
- | * testdb is the name of the database to be updated and this must already | + | * testdb is the name of the database to be updated and it will be created if it does not exist. |
- | * import | + | * - -import is the operation to be performed. |
* essid indicates it is a list of SSIDs. | * essid indicates it is a list of SSIDs. | ||
* ssidlist.txt is the file name containing the SSIDs. | * ssidlist.txt is the file name containing the SSIDs. | ||
Line 237: | Line 189: | ||
Done. | Done. | ||
+ | === Passwords === | ||
+ | To import an ascii list of passwords and create the database if it does not exist, enter: | ||
- | To import an ascii list of passwords, enter: | + | airolib-ng testdb |
- | + | ||
- | airolib-ng testdb import | + | |
Where: | Where: | ||
- | * testdb is the name of the database to be updated and this must already | + | * testdb is the name of the database to be updated and it will be created if it does not exist. |
- | * import | + | * - -import is the operation to be performed. |
* passwd indicates it is a list of passwords. | * passwd indicates it is a list of passwords. | ||
- | * password.list is the file name. One per line. It can optionally be fully qualified. | + | * password.list is the file name. One per line. It can optionally be fully qualified. |
The system responds: | The system responds: | ||
Line 254: | Line 206: | ||
| | ||
Done. | Done. | ||
+ | |||
+ | === Cowpatty tables === | ||
+ | |||
+ | Imports a cowpatty table and create the database if it does not exist, enter: | ||
+ | |||
+ | | ||
+ | |||
+ | Where: | ||
+ | |||
+ | * testdb is the name of the database to be updated and it will be created if it does not exist. | ||
+ | * - -import is the operation to be performed. | ||
+ | * cowpatty indicates it is a cowpatty table. | ||
+ | * cowexportoftest is the file name. One per line. It can optionally be fully qualified. | ||
+ | |||
+ | The system responds: | ||
+ | |||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
Line 274: | Line 246: | ||
===== Usage Tips ===== | ===== Usage Tips ===== | ||
+ | |||
+ | ==== Creating your own database example ==== | ||
To test the tool yourself... | To test the tool yourself... | ||
- | * get yourself the sqlite3 library and headers | + | * get yourself the sqlite3 library and headers |
* get yourself the 1.0dev version of the aircrack-ng suite | * get yourself the 1.0dev version of the aircrack-ng suite | ||
- | | + | * import |
- | | + | |
- | * import some passwords, e.g. "echo 12345678 | airolib-ng testdb | + | |
- | * start the batch process (" | + | |
- | * crack your WPA/WPA2 handshake, e.g. " | + | |
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | Done. | ||
+ | |||
+ | * import a password, e.g. "echo 12345678 | airolib-ng testdb --import passwd -" | ||
+ | |||
+ | | ||
+ | | ||
+ | Done. | ||
+ | |||
+ | * start the batch process (" | ||
+ | |||
+ | | ||
+ | |||
+ | * Check the database to confirm everything has been computed (" | ||
+ | |||
+ | There are 1 ESSIDs and 1 passwords in the database. 1 out of 1 possible combinations have been computed (100%). | ||
+ | |||
+ | | ||
+ | | ||
+ | |||
+ | * crack your WPA/WPA2 handshake, e.g. " | ||
+ | |||
+ | KEY FOUND! [ 12345678 ] | ||
+ | |||
+ | |||
+ | |||
+ | ==== Using a sample pre-made database ==== | ||
+ | |||
+ | Another way to test for yourself is to download a pre-made database called [[http:// | ||
+ | |||
+ | The commands are either of: | ||
+ | |||
+ | | ||
+ | | ||
+ | |||
+ | This should give you the passphase. | ||
===== Usage Troubleshooting ===== | ===== Usage Troubleshooting ===== | ||
- | Although this is not a usage troublshooting | + | |
+ | ==== Enabling Airolib-ng ==== | ||
+ | Airolib-ng is not compiled by default. | ||
+ | |||
+ | ==== Compile Error ==== | ||
+ | Although this is not a usage troubleshooting | ||
gcc -g -W -Wall -Werror -O3 -D_FILE_OFFSET_BITS=64 -D_REVISION=`../ | gcc -g -W -Wall -Werror -O3 -D_FILE_OFFSET_BITS=64 -D_REVISION=`../ | ||
Line 298: | Line 312: | ||
make: *** [all] Error 2 | make: *** [all] Error 2 | ||
| | ||
+ | ==== When is the SQLite patch needed? ==== | ||
+ | |||
+ | The SQLite patch included with aircrack-ng sources is only needed when compiling under Windows. | ||
+ | |||
+ | It is not required for linux installations. | ||
+ | |||
+ | ==== Airolib-ng fails to open or create the database ==== | ||
+ | |||
+ | On windows only, opening/ | ||
+ | |||
+ | The solution is to move airolib-ng and its database in another directory without these special characters. | ||
+ | |||
+ | ==== " | ||
+ | |||
+ | This error message may occur when importing passwords or ESSIDs. | ||
+ | |||
+ | * Passwords must have a length of 8 through 63 characters | ||
+ | * ESSIDs must have a length of 1 through 32 characters | ||
+ | |||
+ | ==== " | ||
+ | If you subsequently run aircrack-ng and only receive " | ||
airolib-ng.txt · Last modified: 2019/04/15 19:07 by mister_x