How aircrack-ng/mdk4 works
MDK4 is a command-line Wi-Fi protocol testing tool. The documented workflow is to select an interface and attack mode, configure its options, then probe or inject 802.11 traffic; some modes also inspect received frames. Its attack family spans discovery, denial-of-service, mesh, WIDS, fuzzing, and proof-of-concept testing, with packet construction and OS-dependent capture/injection underneath. The README documents capabilities, but the main dispatcher and many attack implementations were not sampled, so those links are marked unverified.
Main entry points: mdk4.c MDK4 CLI · osdep.c OS Abstraction · deauth.c Deauth Disassoc · poc.c PoC Testing
Components 23
Command and Dispatch
- MDK4 CLI
src/mdk4.c - Attack Interface
src/attacks/attacks.h
Attack Modes
- Beacon Flood
src/attacks/beacon_flood.c - Authentication DoS
src/attacks/auth_dos.c - SSID Probing
src/attacks/probing.c - SSID Brute Force
src/brute.c - Deauth Disassoc
src/attacks/deauth.c - TKIP Countermeasures
src/attacks/countermeasures.c - EAPOL Injection
src/attacks/eapol.c - Mesh Attacks
src/attacks/ieee80211s.c - WIDS Confusion
src/attacks/wids.c - Packet Fuzzer
src/attacks/fuzzer.c - PoC Testing
src/attacks/poc.c
Traffic Evasion
- Fragment Evasion
src/fragmenting.c - Ghosting Evasion
src/ghosting.c - Channel Hopping
src/channelhopper.c
Packet Support
- 802.11 Packets
src/packet.c - MAC Utilities
src/mac_addr.c
Radio I/O
- OS Abstraction
src/osdep.c - Linux Radio
src/osdep/linux.c - Radiotap Parsing
src/osdep/radiotap/radiotap-parser.c
Other components
- Operator
- Wi-Fi Interface
Connections 25
- Operator → MDK4 CLI: selects mode
- MDK4 CLI → Attack Interface: dispatches attacks
- MDK4 CLI → Beacon Flood: offers mode
- MDK4 CLI → Authentication DoS: offers mode
- MDK4 CLI → SSID Probing: offers mode
- MDK4 CLI → Deauth Disassoc: offers mode
- MDK4 CLI → TKIP Countermeasures: offers mode
- MDK4 CLI → EAPOL Injection: offers mode
- MDK4 CLI → Mesh Attacks: offers mode
- MDK4 CLI → WIDS Confusion: offers mode
- MDK4 CLI → Packet Fuzzer: offers mode
- MDK4 CLI → PoC Testing: offers mode
- SSID Probing → SSID Brute Force: uses
src/attacks/probing.c - Deauth Disassoc → Channel Hopping: initializes
src/attacks/deauth.c - Authentication DoS → OS Abstraction: reads frames
src/attacks/auth_dos.c - Deauth Disassoc → OS Abstraction: reads frames
src/attacks/deauth.c - Fragment Evasion → OS Abstraction: sends fragments
src/fragmenting.c - Fragment Evasion → 802.11 Packets: modifies frames
src/fragmenting.c - Mesh Attacks → OS Abstraction: uses radio API
src/attacks/ieee80211s.c - PoC Testing → Channel Hopping: uses hopping
src/attacks/poc.c - PoC Testing → OS Abstraction: uses radio API
src/attacks/poc.c - Attack Interface → 802.11 Packets: defines packet API
src/attacks/attacks.h - OS Abstraction → Linux Radio: selects backend
- Linux Radio → Radiotap Parsing: parses headers
src/osdep/linux.c - OS Abstraction → Wi-Fi Interface: captures and injects