User Tools

Site Tools


airolib-ng

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
airolib-ng [2008/07/31 01:40]
darkaudax Added pre-made test database
airolib-ng [2019/04/15 19:07] (current)
mister_x Updated links to cowpatty
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. ​ The program uses the lightweight SQLite3 database as the storage mechanism which is available on most platforms. ​ The SQLite3 database was selected taking in consideration platform availability plus management, memory and disk overhead.+Airolib-ng is an aircrack-ng suite tool designed ​to store and manage essid and password lists, compute their Pairwise Master Keys (PMKs) and use them in WPA/WPA2 cracking. ​ The program uses the lightweight SQLite3 database as the storage mechanism which is available on most platforms. ​ The SQLite3 database was selected taking in consideration platform availability plus management, memory and disk overhead.
  
 WPA/WPA2 cracking involves calculating the pairwise master key, from which the private transient key (PTK) is derived. ​  Using the PTK, we can compute the frame message identity code (MIC) for a given packet and will potentially find the MIC to be identical to the packet'​s thus the PTK was correct therefore the PMK was correct as well. WPA/WPA2 cracking involves calculating the pairwise master key, from which the private transient key (PTK) is derived. ​  Using the PTK, we can compute the frame message identity code (MIC) for a given packet and will potentially find the MIC to be identical to the packet'​s thus the PTK was correct therefore the PMK was correct as well.
  
-Calculating the PMK is very slow since it uses the pbkdf2 algorithm. ​ Yet the PMK is always the same for a given ESSID and password combination. This allows us to pre-compute the PMK for given combinations and speed up cracking the wpa/wpa2 handshake. ​ Tests on have shown that using this technique in [[aircrack-ng]] can check more than 30,000 passwords per second using pre-computed PMK tables.+Calculating the PMK is very slow since it uses the pbkdf2 algorithm. ​ Yet the PMK is always the same for a given ESSID and password combination. This allows us to pre-compute the PMK for given combinations and speed up cracking the wpa/wpa2 handshake. ​ Tests have shown that using this technique in [[aircrack-ng]] can check more than 50 000 passwords per second using pre-computed PMK tables.
  
 Computing the PMK is still required, yet we can: Computing the PMK is still required, yet we can:
Line 30: Line 20:
 To learn more about coWPAtty: To learn more about coWPAtty:
  
-  * [[http://www.churchofwifi.org/default.asp?PageLink=Project_Display.asp?​PID=95|Church of Wifi CoWPAtty]] +  * [[https://www.willhackforsushi.com/?page_id=50|Will Hack For SUSHI > CoWPAtty]] 
-  * [[http://​www.wirelessdefence.org/​Contents/​coWPAttyMain.htm|Wireless Defense CoWPAtty writeup]]+  * [[https://​web.archive.org/​web/​20081217032421/​http://​www.wirelessdefence.org/​Contents/​coWPAttyMain.htm|Wireless Defense CoWPAtty writeup]]
  
 As stated above, this program requires the SQLite3 database environment. ​ You must be running version 3.3.17 or above. ​ You may obtain the latest version from the [[http://​www.sqlite.org/​download.html|SQLite download page]]. As stated above, this program requires the SQLite3 database environment. ​ You must be running version 3.3.17 or above. ​ You may obtain the latest version from the [[http://​www.sqlite.org/​download.html|SQLite download page]].
- 
  
 ===== Usage ===== ===== Usage =====
Line 255: Line 244:
  
  
 +===== Usage Tips =====
  
- +==== Creating your own database example ​====
-===== Usage Tips =====+
  
 To test the tool yourself... To test the tool yourself...
Line 277: Line 266:
    Done.    Done.
  
-  * start the batch process ("​airolib-ng testdb --batch"​),​ wait for it to run out of work, kill it+  * start the batch process ("​airolib-ng testdb --batch"​),​ wait for it to run out of work or pause it with Ctrl-C
  
    ​Computed 1 PMK in 0 seconds (1 PMK/s, 0 in buffer). All ESSID processed.    ​Computed 1 PMK in 0 seconds (1 PMK/s, 0 in buffer). All ESSID processed.
Line 292: Line 281:
    KEY FOUND! [ 12345678 ]    KEY FOUND! [ 12345678 ]
  
-Another way to test for yourself is to download a pre-made database called [[http://​download.aircrack-ng.org/​wiki-files/​other/​passphrases.db|passphrases.db]]. ​ Then try this database with the two test WPA/WPA2 files supplied in the test directory of the aircrack-ng sources. ​ The WPA/WPA2 test files are called "​wpa.cap"​ and "​wpa2.eapol.cap"​.+ 
 + 
 +==== Using a sample pre-made database ==== 
 + 
 +Another way to test for yourself is to download a pre-made database called [[http://​download.aircrack-ng.org/​wiki-files/​other/​passphrases.db|passphrases.db]].  ​This  file is also located in the test directory of the aircrack-ng sources. ​Then try this database with the two test WPA/WPA2 files supplied in the test directory of the aircrack-ng sources. ​ The WPA/WPA2 test files are called "​wpa.cap"​ and "​wpa2.eapol.cap"​.
  
 The commands are either of: The commands are either of:
  
-   ​aircrack-ng -r passphrase.db wpa.cap +   ​aircrack-ng -r passphrases.db wpa.cap 
-   ​aircrack-ng -r passphrase.db wpa2.eapol.cap+   ​aircrack-ng -r passphrases.db wpa2.eapol.cap
  
 This should give you the passphase. ​ Success indicates that your setup is working correctly. This should give you the passphase. ​ Success indicates that your setup is working correctly.
 +
  
 ===== Usage Troubleshooting ===== ===== Usage Troubleshooting =====
 +
  
 ==== Enabling Airolib-ng ==== ==== Enabling Airolib-ng ====
-Airolib-ng is not compiled by default. ​ To enable compiling, do "​make ​SQLITE=true" and "make sqlite=true install"​.+Airolib-ng is not compiled by default. ​ To enable compiling, do "​make ​sqlite=true" and "make sqlite=true install"​.
  
 ==== Compile Error ==== ==== Compile Error ====
-Although this is not a usage troublshooting ​tip, it is a common problem during the compilation of the 1.0dev version. ​ As a reminder, SQLite must be version 3.3.13 or above. ​ This is the compile error you receive when your version of SQLite is less then the requirement:​+Although this is not a usage troubleshooting ​tip, it is a common problem during the compilation of the 1.0dev version. ​ As a reminder, SQLite must be version 3.3.13 or above. ​ This is the compile error you receive when your version of SQLite is less then the requirement:​
  
   gcc -g -W -Wall -Werror -O3 -D_FILE_OFFSET_BITS=64 -D_REVISION=`../​evalrev` -I/​usr/​local/​include -Iinclude -DHAVE_SQLITE ​  -c -o airolib-ng.o airolib-ng.c   gcc -g -W -Wall -Werror -O3 -D_FILE_OFFSET_BITS=64 -D_REVISION=`../​evalrev` -I/​usr/​local/​include -Iinclude -DHAVE_SQLITE ​  -c -o airolib-ng.o airolib-ng.c
Line 330: Line 325:
 ==== "​invalid lines ignored"​ error message ==== ==== "​invalid lines ignored"​ error message ====
  
-This error message ​can occur when importing passwords or ESSIDs. ​  It is the number of records with invalid passwords or ESSIDs lengths. ​ The valid lengths are:+This error message ​may occur when importing passwords or ESSIDs. ​  It is the number of records with invalid passwords or ESSIDs lengths. ​ The valid lengths are:
  
   * Passwords must have a length of 8 through 63 characters   * Passwords must have a length of 8 through 63 characters
airolib-ng.1217461253.txt.gz · Last modified: 2008/07/31 01:40 by darkaudax