packetspammer is a small C app that is used to demonstrate mac80211 Monitor Mode packet injection
Monitor Interface injection is the new method we are trying to get into the mac80211 stack, which uses a flexible radiotap header to allow injection of all kinds of packets at various rates, transmit strengths and antenna selections.
Packetspammer both listens for packets with a 13:22:33:44:xx:xx MAC address in them and generates them at the same time. If you run packetspammer on two mac80211-based devices that are near each other, they will report the other station's packets like this:
RX: Rate: 54.0Mbps, Freq: 2.417GHz, Ant: 0, Flags: 10
0000: 50 61 63 6B 65 74 73 70 61 6D 6D 65 72 20 2D 2D Packetspammer --
0010: 62 72 6F 61 64 63 61 73 74 20 70 61 63 6B 65 74 broadcast packet
0020: 23 34 37 39 31 36 20 2D 2D 20 3A 2D 44 20 2D 2D #47916 :-D
0030: 75 6C 74 72 61 63 61 74 2E 68 6F 6D 65 2E 77 61 ultracat.home.wa
0040: 72 6D 63 61 74 2E 63 6F 6D rmcat.com
The example technical assets in the packetspammer sources for use in other GPL'd apps
- Receive radiotap parsing
- Building a transmit packet with radiotap
- Opening, injecting and monitoring with libpcap
Current version
Tarball:
packetspammer-0.6.tar.gz
F7 Binary RPM:
packetspammer-0.6-6.i686.rpm
F7 SRPM:
packetspammer-0.6-6.src.rpm
Development
Git Repository
Build hints
Just have libpcap-devel or equivalent installed and do a make.
Usage
Packetspammer (c)2007 Andy Green <andy@warmcat.com> GPL2
(c)2006-2007 Andy Green <andy@warmcat.com> Licensed under GPL2
Usage: packetspammer options <interface>
Options
-d/--delay <delay> Delay between packets
-f/--fcs Mark as having FCS (CRC) already
(pkt ends with 4 x sacrificial - chars)
echo -n mon0 > /sys/class/ieee80211/phy0/add_iface
iwconfig mon0 mode monitor
ifconfig mon0 up
packetspammer mon0 Spam down mon0 with
radiotap header first
Thanks
Matteo Croce for fixing getopt and help stuff, advice about build flags