This is an old revision of the document!
The first reported success and how to do it is in this thread message.
This needs updating!
This is how you can get the Intel WiFi Link 4965AGN/5xxxAGN card to inject under Linux using the iwlwifi drivers. Please note that the injection is still under development, but is possible at this point. Fake auth doesn't work but there's a workaround: using wpa_supplicant. Deauth seems to be buggy.
What you need :
Please note that the instructions provided here are suited for generic Linux. Your distribution, especially if it uses some kind of advanced package managing (Debian, Ubuntu, etc.), may have the needed packages in its repositories (so that you don't need to compile them manually from source).
You need to make sure that your kernel configuration includes these options. Pay attention which are to be build as modules and which can be built-in.
Networking -> Wireless : [M] Improved wireless configuration API [*] nl80211 new netlink interface support [*] Wireless extensions [M] Generic IEEE 802.11 Networking Stack (mac80211) [M] Generic IEEE 802.11 Networking Stack (DEPRECATED) [M] IEEE 802.11 WEP encryption (802.1x) [M] IEEE 802.11i CCMP support [M] IEEE 802.11i TKIP encryption [M] Software MAC add-on to the IEEE 802.11 networking stack
You must also enable “Automatic kernel module loading” under “Loadable module support”, otherwise you will have module dependency errors.
At this point, it is assumed that you've got your kernel properly configured, up and running right now.
The development versions of the drivers are a part of the compat-wireless project. We will need the latest version of the package, which can be obtained here:
Download it to your home directory. Having downloaded it, we need to download the patches for the iwlwifi drivers and the fragmentation patch for mac80211. The latter is available on http://patches.aircrack-ng.org (get the 2.6.26-wl version). The first one, however, is available here : http://pastebin.com/f7bc96631.
cd ~ tar xjf compat-wireless-2.6.tar.bz2 cd compat-wireless-2008-* wget http://pastebin.com/pastebin.php?dl=f7bc96631 -O iwl4965-injection.patch wget http://patches.aircrack-ng.org/mac80211_2.6.26-wl_frag.patch patch -p1 < iwl4965-injection.patch patch -p1 < mac80211_2.6.26-wl_frag.patch make make install [as root!] make unload; rmmod ssb mac80211 cfg80211 [as root!] make load [as root!] echo options iwl4965 swcrypto=1 >> /etc/modprobe.d/options [as root!]
That should get you the patched driver module up and running, you should also see “wlan0” and “wmaster0” as your interfaces, the first one should also be available by using iwconfig.
Due to the way how mac80211 works, you cannot inject on the card's “stock” interface - wlan0. This is where the airmon-ng tool comes in handy. It will create a mon0 interface suited for injecting after running it this way :
airmon-ng start wlan0
It may complain about the “iw” program missing. If it does, the link is provided, so just download and compile it. The “iw” program, however, requires the “libnl” libraries, available here : http://people.suug.ch/~tgr/libnl/. If you have it all, run the program again, and it should give you output somewhat similar to this:
# airmon-ng start wlan0 Interface Chipset Driver wlan0 Intel 4965 a/b/g/n iwl4965 - [phy0] (monitor mode enabled on mon0)
If that's how it looks, you're good to go. The mon0 interface can be used for both listening with airodump-ng and injecting with aireplay-ng.