Skip to content

802.11 Massive Monitoring

Andrés BlancoAndrés Gazzoli

Andrés Blanco and Andrés Gazzoli present an OpenWrt-based distributed capture architecture to simultaneously monitor and inject frames across all 802.11 channels.

Summary

### The Multichannel Problem in 802.11 Wireless Auditing Wireless penetration testing, defensive spectrum analysis, and red teaming require comprehensive visibility into 802.11 Wi-Fi communications. However, physical 802.11 radio transceivers can only tune to a single RF channel at any given instant. When assessing expansive enterprise deployments spanning multiple access points and roving client devices across the 2.4 GHz spectrum (channels 1 through 14), security practitioners face significant visibility gaps. Traditional monitoring relies on channel hopping—rapidly switching a single wireless network interface card (NIC) across channels every few hundred milliseconds. This technique inevitably drops crucial frames, missing ephemeral client probe requests, authentication handshakes, WPA 4-way key exchanges, and rogue access point beacons.

### Limitations of Channel Hopping and USB Host Saturation To eliminate missed frames, security researchers often attempt to connect multiple USB Wi-Fi dongles (e.g., Alfa AWUS cards) into a single laptop. Andrés Blanco and Andrés Gazzoli demonstrate that this naive multi-dongle approach quickly encounters severe hardware and OS bottlenecks: - **USB Bus Saturation:** High-density 802.11 packet capture generates hundreds of thousands of raw 802.11 frames per minute. Pushing concurrent packet streams from ten or more monitor-mode adapters overwhelms internal USB host controllers. - **Contention with Internal USB Peripherals:** Modern laptops internally wire webcams, Bluetooth radios, and touchpad controllers to the same internal USB root hubs, causing dropped packets and kernel driver crashes under sustained wireless capture. - **Power and Form-Factor Constraints:** Supplying sufficient current (500mA+ per radio) across twelve external USB interfaces causes voltage drops, overheating, and rapid laptop battery depletion.

### The Wireless Workers (WWA) Distributed Architecture To resolve these bottlenecks, the researchers introduce "Wireless Workers" (Wi-Wo / WWA), a modular, distributed, open-source 802.11 frame monitoring and injection framework. Instead of channeling raw RF data through USB host controllers, WWA distributes the radio workload across a cluster of independent, inexpensive embedded router nodes acting as "workers": - **Dedicated Channel Allocation:** Each router node is assigned a single fixed Wi-Fi channel in monitor mode, guaranteeing 100% continuous temporal coverage without frame drops or channel hopping. - **Ethernet Backbone:** Worker nodes capture 802.11 frames locally and stream them back to a central management computer over standard switched Ethernet (100BASE-T), completely bypassing USB bandwidth and host controller limits. - **Cross-Platform Management:** The central orchestrator is written in Python, providing a unified API to discover workers, dynamically assign channels, set Berkeley Packet Filters (BPF), and aggregate capture streams across Linux, macOS, and Windows.

### Hardware Selection and OpenWrt Customization The team implemented WWA using commercial off-the-shelf, low-cost portable routers such as the TP-Link TL-MR3020 and TL-WR703N: - **Embedded Footprint:** These devices feature an integrated Atheros AR9331 SoC, onboard 802.11n radio, and an Ethernet interface, available for approximately twenty dollars each. - **Custom OpenWrt Firmware:** To fit within the tight 4MB flash and 32MB RAM constraints, the authors stripped standard OpenWrt images of web servers (LuCI), unnecessary network daemons, and debug utilities. - **Optimized C Daemon:** A purpose-built, lightweight C daemon named `worker` was installed directly into firmware. The daemon interfaces with the kernel `mac80211` driver, extracts raw 802.11 frames from `mon0`, encapsulates them in a custom, low-overhead Ethernet protocol, and streams them to the manager with minimal CPU utilization.

### Software Orchestration, Wireshark Integration, and In-Field Deployment The WWA Python library abstracts the distributed hardware into a seamless, virtual multichannel sniffer: - **Live Wireshark Streaming:** The framework feeds aggregated, multi-channel packet streams into Wireshark via named pipes or FIFO buffers in real time, allowing analysts to inspect full spectrum traffic as if captured on a single hyper-capable interface. - **Targeted Filtering and Injection:** In addition to passive surveillance, the protocol supports frame injection, enabling coordinated multi-channel deauthentication attacks, client probing, and rogue AP deployment. - **Self-Contained Audit Kits:** The researchers demonstrate a portable field kit packaging twelve worker nodes, a compact multi-port Ethernet switch, and a centralized USB power supply into a single Pelican case, demonstrating a cost-effective, enterprise-grade wireless surveillance platform.

(AI summary — Gemini 3.8 Flash)

Related talks