This is an old revision of the document!
Table of Contents
Installing Aircrack-ng from Source
Requirements
Linux
- Kernel headers and gcc as well as make have to be installed on your system. On Debian-based distros (Debian, Ubuntu, Xubuntu, …), issue the following command in a console to install them:
sudo apt-get install build-essential
- OpenSSL (development). It is called openssl-dev or libssl-dev depending on your distribution.
- pkg-config
The following is required only if you want Airolib-ng:
- SQLite (development) > 3.3.17 (but latest version is recommended)
Windows
It requires additional libraries to be installed:
- OpenSSL (development): openssl-devel
The following is required only if you want Airolib-ng:
- SQLite3 (development) > 3.3.17 (but latest version is recommended): libsqlite3-devel
OS X
Install the following via macports:
- gmake 3.81
- sqlite3
FreeBSD
Install the following via pkg:
- gmake
- pkgconf
- pcre
- sqlite3
Compiling and installing
Note: For OS X, use 'gmake' instead of 'make'.
Current version
It requires some additional libraries:
- OpenSSL (libssl-dev on Debian-based system)
- SQLite > 3.3.17 (latest version is recommended) if you want to use Airolib-ng
wget http://download.aircrack-ng.org/aircrack-ng-1.2-rc2.tar.gz tar -zxvf aircrack-ng-1.2-rc2.tar.gz cd aircrack-ng-1.2-rc2 make make install
Compiling with Airolib-ng support
Simply append 'sqlite=true' parameter to make and make install:
make sqlite=true make sqlite=true install
Compiling with PCRE support
Airodump-ng can match SSID with a regular expression when compiled with PCRE:
make pcre=true make pcre=true install
OS X
Change CFLAGS in src/Makefile to point to the macpports install of SQLite3 before compiling. Change the following line:
CFLAGS += -Iinclude
to
CFLAGS += -Iinclude -arch i386 -I/opt/local/include -L/opt/local/lib
Compiling with AirPcap support (cygwin only)
- Copy 'developer' directory from the AirPcap CD at the same level as 'Aircrack-ng' directory
- Append 'airpcap=true' parameter to make:
make airpcap=true make install
Compiling with Airolib-ng and AirPcap support (cygwin only)
Simply append both parameter to make and make install:
make sqlite=true airpcap=true make sqlite=true install
Compiling with CUDA support - Not supported
This is still under heavy development so it is not yet been added to the backtrack repositories however it deserves mentioning. Aircrack-ng can be built with a switch to add GPU acceleration. In order to do this we need to grab Aircrack-ng from SVN (subversion). You must have the CUDA toolkit and the sdk already installed to be able to build this.
svn co http://svn.aircrack-ng.org/branch/aircrack-ng-cuda/ aircrack-ng-cuda
Next we will build it like normal but it needs a few extra arguments:
cd aircrack-ng-cuda CUDA=true make make CUDA=true sqlite=true experimental=true install
Also see: BackTrack 4 CUDA Guide
Latest SVN (development) Sources
svn co http://svn.aircrack-ng.org/trunk/ aircrack-ng cd aircrack-ng make make install
Latest SVN with Airolib-ng support and experimental (unstable) programs (requires SQLite installed)
(like Tkiptun-ng, Easside-ng (and buddy-ng), Wesside-ng and Besside-ng)
make sqlite=true experimental=true make sqlite=true experimental=true install
Latest SVN with Airolib-ng and and experimental (unstable) programs plus external scripts
(like Airoscript-ng, Versuck-ng, Airgraph-ng and Airdrop-ng)
make sqlite=true experimental=true ext_scripts=true make sqlite=true experimental=true ext_scripts=true install
Note: Experimental scripts:
- Each scripts has its own dependencies, for details refer to the “README” file contained in their folder
Nightly Build
http://nightly.aircrack-ng.org/ contains a nightly tarball from each day. This is handy if you don't have access to SVN (subversion). Just download and build per building the current version instructions. Optionally you can enable the extra features with “sqlite=true” and “experimental=true” per above.
Legacy
wget http://download.aircrack-ng.org/aircrack-ng-0.9.3.tar.gz tar -zxvf aircrack-ng-0.9.3.tar.gz cd aircrack-ng-0.9.3 make make install
Troubleshooting Tips
"command not found" error message
After you do “make install” then try to use any of the Aircrack-ng suite commands, you get the error message “command not found” or similar. Your system will look for the Aircrack-ng commands in the directories defined by the PATH command.
Normally, the Aircrack-ng suite programs and man pages are placed in:
/usr/local/bin /usr/local/sbin /usr/local/man
On your system, to determine which directories have the Aircrack-ng programs enter the following. If using “locate” be sure to first run “updatedb”.
locate aircrack-ng locate airmon-ng
or
find / -name aircrack-ng find / -name airmon-ng
Once you know the directories (exclude the source directories) then determine which directories are in your PATH. To see which directories are included in PATH on your particular system enter:
echo $PATH
It should show something like:
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/lib/ccache:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
At this point compare the actual locations with the directories in your PATH. If the directories are missing from your PATH then you have a few options:
- Add the directories to your PATH. See the one or more of the following web sites for details of how to do this:
http://www.linuxheadquarters.com/howto/basic/path.shtml http://www.cyberciti.biz/faq/howto-print-path-variable/ http://www.troubleshooters.com/linux/prepostpath.htm http://linux.about.com/od/linux101/l/blnewbie3_1_4.htm
- Change to the particular directory with “cd” and then run the commands from within the directory. Don't forget to add “./” in front of each command.
- Specify the full path for each command. So if Aircrack-ng is located in the “/usr/local/bin” directory then run the command as “/usr/local/bin/aircrack-ng”.
- Specify the location prefix when installing. Lets say you have /usr/bin and /usr/sbin directories in your PATH, then do “make prefix=/usr install”. This will install the programs to /usr/bin and /usr/sbin.
"build" - No such file or directory
On Debian-based distros, if you get something similar to:
/bin/sh: line 0: cd: /lib/modules/2.6.15-28-amd64-generic/build: No such file or directory Makefile.inc:66: *** /lib/modules/2.6.15-28-amd64-generic/build is missing, please set KERNELPATH. Stop.
Solution:
The build directory gets installed together with the kernel headers, so either you lack the correct headers or your KERNELPATH is wrong. Please check that `uname -r` returns “2.6.15-28-amd64-generic”.
Do a “sudo apt-get install linux-headers-`uname -r`” or just “sudo apt-get install linux-headers”.
If uname returns exactly that string and the current headers are installed, the remove the headers and install them again. Also check /usr/src for installed header files, maybe it got mixed up for whatever reason.
In the above examples, needless to say, change “2.6.15-28-amd64-generic” to whatever you are running.
"openssl/hmac.h" - No such file or directory
If you get something similar to:
crypto.h:12:26: error: openssl/hmac.h: No such file or directory crypto.h:13:25: error: openssl/sha.h: No such file or directory crypto.h:15:25: error: openssl/rc4.h: No such file or directory crypto.h:16:25: error: openssl/aes.h: No such file or directory
Solution: You are missing the OpenSSL development package. Depending on the distribution, download and install openssl-devel or libssl-devel (libssl-dev /Ubuntu/). Or worst case, install it from source: http://www.openssl.org.
"zlib.h" No such file or directory
If you get something similar to:
wesside-ng.c:54:18: error: zlib.h: No such file or directory
Solution: You are missing the zlib development package. Depending on the distribution, download and install zlib-devel. Or worst case, install it from source: http://www.zlib.net.
"__le64" error on 64 bit machines when compiling
You get something similar to:
radiotap-parser.h:29: error: conflicting types for ‘__le64’ /usr/include/linux/types.h:158: error: previous declaration of ‘__le64’ was here
See this thread for a solution.
Installing pre-compiled binaries
Linux
Open your package manager and install 'Aircrack-ng' package. Be sure to check that the version offered is up-to-date – you may see problems with older versions, especially if you have a card for which support was added recently, e.g. ACX, Broadcom or Intel. Ubuntu and Debian are particularly problematic in this matter.
Windows
The Windows version of the Aircrack-ng suite does not have an install program. You must manually install (unzipping archive) the software.
Here are the steps to follow for Windows XP:
- Download the latest version of the Aircrack-ng suite for Windows to your PC. The link for the zip file can be found on the Wiki home page.
- Unzip the contents of the Aircrack-ng zip file into “C:\”. This will create a directory called “aircrack-ng-0.9.3-win”. This directory name will vary based on the exact version that you downloaded. This main directory contains three subdirectories - “bin”, “src” and “test”.
Prior to using the software, make sure to install the drivers for your particular wireless card. See this link for the instructions.
To now use the Aircrack-ng suite, start Windows Explorer and double click on Aircrack-ng GUI.exe inside “bin” subdirectory. The GUI requires .NET Framework 2.0 to run (.NET Frameworks 1.0/1.1 are not able to run this executable, 2.0 or better MUST be installed).
Alternatively, open a command prompt (Start menu → Execute → cmd.exe) and change to the “C:\aircrack-ng-0.9-win\bin” directory and execute the individual commands.
Important notes:
- Remember that Windows only supports a limited subset of the commands.
- Some troubleshooting tips specific to XP and Vista can be found on this page.
Installing on Mac OSX
The simplest and easiest way to install on Mac OS X is via Macports. You simply do “sudo port install aircrack-ng”.
Alternatively, use the following instructions:
Make sure you have Xcode installed on your Mac, which can be found on the installer CD/DVD which came with your Mac. After getting the source you can do a simple “make && sudo make install” from the untarred directory. When you use the stable, you need to rename the Makefile.osx to Makefile and when you use the dev version it will autodetect you are using Darwin and compile fine.
Mind you, airodump-ng and aireplay-ng are linux only and will not work under OSX native, so for reinjecting and sniffing you will have to use other means.
If you have an intel Mac check out the VMware Fusion option which is mentioned lower on this page.
Optional is openssl-dev and sqlite3 which can be installed through fink
Installing on OpenBSD
See this thread for instructions on installing and using the Aircrack-ng suite on OpenBSD.
Installing VMware Image - UNSUPPORTED
Important Note: Virtualization solutions (VMware/VirtualBox/Virtual PC/…) only work with USB cards. Card that are PCI/MiniPCI/PCMCIA/CardBus/Express Card/PCI Express/PCI-X/MiniPCI Express won't work at all.
Requirements
- VMWare Workstation 6.02, VMWare Player 2.02 (freeware) or VMWare Fusion beta for intel based Mac's
- Wireless USB with one of the following chipsets:
- rtl8187
- rt2570
- rt73
- Approximately 2Gb of hard disk space
Important note: VMWare Workstation 6.5 (and maybe Player 2.5 too) is known not to work correctly with rtl8187 driver. It uses the whole CPU and it seems to be hanging (it is really slow) for an unknown reason.
Starting
- Install VMWare Workstation or Player
- Download this VMware image here or via BitTorrent and unpack it somewhere.
- Start VMware and select “open”. (Open the virtual machine)
- Attach your USB adapter.
- If the USB adapter is recognized automatically you'll find a small USB icon in the lower right corner of your VMWare window. If not you have to attach it manually.
Notes:
- Uncompress the file on a filesystem that supports large files; NTFS, ext3, … (all FAT filesystems, including FAT32, do not support large files).
- Here are a few reasons why the download doesn't work:
- That sounds logical but make sure the URL is correct.
- Check your DNS, make sure it can resolve “download.aircrack-ng.org” (by the way, the server answers to ping). If it doesn't, use OpenDNS (Primary: 208.67.222.222 - Secondary: 208.67.220.220).
- You don't need any driver for wireless adapters (and other USB adapters) on the OS running VMware.
- The login credentials for the image are user id “root” with password “root”. On some versions the password is “toor”.
- The FAQ has some limited information about running the Aircrack-ng suite under VMWare.
Manually attaching USB device
On VMware Player, the device should be shown in the title bar, click on it to activate it. On VMware Workstation, use menu “VM –> Removable devices –> USB” and then select the device:
It will automatically unplug the device from Windows and attach it to the virtual machine.