802.11b, using the Wired Equivalent Protocol (WEP), is crippled with numerous security flaws. Most damning of these is the weakness described in "Weaknesses in the Key Scheduling Algorithm of RC4" by Scott Fluhrer, Itsik Mantin and Adi Shamir. Adam Stubblefield was the first to implement this attack, but he has not made his software public. AirSnort, along with WEPCrack, which was released about the same time as AirSnort, are the first publicly available implementations of this attack.

AirSnort requires approximately 5-10 million encrypted packets to be gathered. Once enough packets have been gathered, AirSnort can guess the encryption password in under a second.

Requirements

AirSnort runs under Windows or Linux, and requires that your wireless nic be capable of rf monitor mode, and that it pass monitor mode packets up via the PF_PACKET interface. Cards known to do this are:

Cisco Aironet

Prism2 based cards using wlan-ng drivers or Host-AP drivers

Orinoco cards and clones using patched orinoco_cs drivers

Orinoc cards using the latest Orinoco drivers >= 0.15 with built in monitor mode support

And many others.

Windows: Any card supported by Airopeek.

For Linux users, the best resources for finding out if your card can do monitor mode and what drivers you will need are those maintained at the Kismet site.

Compilation

To compile AirSnort, do the following:

* Get your drivers working! To do this you may need one or more of the following

Kernel source

PCMCIA CS package

wlan-ng package

Orinoco driver patches

Host AP drivers

* Install the LATEST version of libpcap. Please make sure that you have removed any old version of pcap that may be resident on your system. (not required for Windows users.)

* Make sure you have gtk+-2.2 installed as AirSnort is a GUI application. You will also need gtk+-devel

Linux

Linux users perform the following steps:

tar -xzf airsnort-0.2.6.tar.gz

cd airsnort-0.2.6

./configure

make

make install (optional)

Poof you're done. The airsnort executable is in the airsnort-0.2.6/src subdirectory, do with it what you will. There are some man pages in airsnort-0.2.6/man

Windows

Airsnort is designed to work best with Linux/Unix thus it is not recommended to use Airsnort under Windows. There is no support for it due to the proprietary nature of the operating system and wireless card drivers. You may be required to develop your own DLLs to link Airsnort to your wireless card.

You may need more DLLs (iconv.dll, intl.dll) easily found on the internet in your Airsnort directory.

Start Airsnort!

Orinoco

Orinoco Notes: The latest patches seem to smooth things out for all versions of Orinoco firmware. Please make sure you are using the latest patches. If you do not see a patch for your version of pcmcia-cs, then PLEASE determine what version of the orinoco drivers are included with your version of pcmcia-cs and get the appropriate orinoco-0.XX patches. To do this look in pcmcia-cs-X.Y.Z/wireless/orinoco_cs.c which will list the version number in the first couple of lines.