MDK4(2)
π
MDK4(2) β the mdk4 manual page (part 1) π
okay so this is the mdk4 page from the System Calls Manual, section 2 β and bestie, it is a whole mood. Buckle up. π¦
β¨ NAME β¨
mdk4β IEEE 802.11 PoC tool.
πΈ SYNOPSIS πΈ
It comes in two shapes, and yes you need both:
mdk4 <interface> <attack_mode> [attack_options]
mdk4 <interface in> <interface out> <attack_mode> [attack_options]
π DESCRIPTION π
mdk4 is a proof-of-concept (PoC) tool β like, the entire point is exploiting common IEEE 802.11 protocol weaknesses. It's giving security-research chaos, but make it PoC. π
π OPTIONS π
Baby steps first:
- Try
mdk4 --help <attack_mode>for info about one attack only. - Try
mdk4 --fullhelpfor all attack options.
π¦ ATTACK MODES π¦
Each mode is its own little main-character moment. Pick your fighter. π
b β Beacon Flooding π₯
Sends beacon frames to show fake APs at clients. This can sometimes crash network scanners and even drivers β no cap, it's spicy. π
-n <ssid>β Use SSID<ssid>instead of randomly generated ones.-aβ Use also non-printable characters in generated SSIDs and create SSIDs that break the32-bytelimit.-f <filename>β Read SSIDs from file.-v <filename>β Read MACs and SSIDs from file. See example file!-t <adhoc>β Pick your network type vibe:-t 1= Create only Ad-Hoc network-t 0= Create only Managed (AP) networks- without this option, both types are generated
-w <encryptions>β Encryption selection, and without this option, both types are generated. Valid options:n= No Encryption,w= WEP,t= TKIP (WPA),a= AES (WPA2). You can select multiple types, i.e.-w wtawill only create WEP and WPA networks.-b <bitrate>β Select if11 Mbit (b)or54 MBit (g)networks are created. Without this option, both types will be used.-mβ Use valid accesspoint MAC from built-in OUI database.-hβ Hop to channel where network is spoofed. This is more effective with some devices/drivers, but it reduces packet rate due to channel hopping.-c <chan>β Create fake networks on channel<chan>, If you want your card to hop on this channel, you have to set-hoption, too.-i <HEX>β Add user-defined IE(s) in hexadecimal at the end of the tagged parameters.-s <pps>β Set speed in packets per second (Default:50).
a β Authentication Denial-Of-Service π₯
Sends authentication frames to all APs found in range. Too many clients can freeze or reset several APs. It's giving "why is the AP sweating." π
-a <ap_mac>β Only test the specified AP.-mβ Use valid client MAC from built-in OUI database.-i <ap_mac>β Perform intelligent test on AP. This test connects clients to the AP and reinjects sniffed data to keep them alive.-s <pps>β Set speed in packets per second (Default: unlimited).
p β SSID Probing and Bruteforcing π
Probes APs and checks for answer β useful for checking if SSID has been correctly decloaked and if AP is in your sending range. Bruteforcing of hidden SSIDs with or without a wordlist is also available. Detective energy, honestly. π΅οΈββοΈ
-e <ssid>β SSID to probe for.-f <filename>β Read SSIDs from file for bruteforcing hidden SSIDs.-t <bssid>β Set MAC address of target AP.-s <pps>β Set speed (Default:400).-b <character_sets>β Use full Bruteforce mode (recommended for short SSIDs only!). You can select multiple character sets at once:n(Numbers:0-9)u(Uppercase:A-Z)l(Lowercase:a-z)s(Symbols: ASCII)
-p <word>β Continue bruteforcing, starting at<word>.-r <channel>β Probe request tests (mod-musket).
d β Deauthentication and Disassociation π
Sends deauthentication and disassociation packets to stations based on data traffic to disconnect all clients from an AP. It's giving "everyone get out of the group chat." π
-w <filename>β Read file containing MACs not to care about (Whitelist mode).-b <filename>β Read file containing MACs to run test on (Blacklist Mode).-s <pps>β Set speed in packets per second (Default: unlimited).-xβ Enable full IDS stealth by matching all Sequence Numbers. Packets will only be sent with clients addresses.-c [chan,chan,...,chan[:speed]]β Enable channel hopping. When-c his given,mdk4will hop all 14 b/g channels. Channel will be changed every 3 seconds, if speed is not specified. Speed value is in milliseconds!-E <essid>β Specify an AP ESSID to attack.-B <bssid>β Specify an AP BSSID to attack.-S <mac>β Specify a station MAC address to attack.-W <mac>β Specify a whitelist station MAC.
m β Michael Countermeasures Exploitation π
Sends random packets or re-injects duplicates on another QoS queue to provoke Michael Countermeasures on TKIP APs. AP will then shutdown for a whole minute, making this an effective DoS. Iconic, honestly. π
-t <bssid>β Set target AP, that runs TKIP encryption.-jβ Use the new QoS exploit which only needs to reinject a few packets instead of the random packet injection, which is unreliable but works without QoS.-s <pps>β Set speed in packets per second (Default:400).-w <seconds>β Wait<seconds>between each random packet burst (Default:10).-n <count>β Send<count>random packets per burst (Default:70).
e β EAPOL Start and Logoff Packet Injection πͺ
Floods an AP with EAPOL Start frames to keep it busy with fake sessions and thus disables it to handle any legitimate clients. Or logs off clients by injecting fake EAPOL Logoff messages. Fake-session overload, periodt. π
-t <bssid>β Set target WPA AP.-s <pps>β Set speed in packets per second (Default:400).-lβ Use Logoff messages to kick clients.
s β Attacks for IEEE 802.11s mesh networks πΈοΈ
Various attacks on link management and routing in mesh networks. Flood neighbors and routes, create black holes and divert traffic! Mesh chaos, but make it cute. π§
-f <type>β Basic fuzzing tests. Picks up Action and Beacon frames from the air, modifies and replays them. The following modification types are implemented:1: Replay identical frame until new one arrives (duplicate flooding)2: Change Source and BSSID (possibly resulting in Neighbor Flooding)3: Cut packet short, leave 802.11 header intact (find buffer errors)4: Shotgun mode, randomly overwriting bytes after header (find bugs)5: Skript-kid's automated attack trying all of the above randomly :)
-b <impersonated_meshpoint>β Create a Blackhole, using theimpersonated_meshpoint's MAC address.mdk4will answer every incoming Route Request with a perfect route over the impersonated node.-p <impersonated_meshpoint>β Path Request Flooding using theimpersonated_meshpoint's address. Adjust the speed switch (-s) for maximum profit!-lβ Just create loops on every route found by modifying Path Replies.-s <pps>β Set speed in packets per second (Default:100).-n <meshID>β Target this mesh network.
w β WIDS Confusion π
Confuse/Abuse Intrusion Detection and Prevention Systems by cross-connecting clients to multiple WDS nodes or fake rogue APs. Confuses a WDS with multi-authenticated clients which messes up routing tables. It's giving "the IDS is not okay." π
-e <SSID>β SSID of target WDS network.-c [chan,chan,...,chan[:speed]]β Enable channel hopping. When-c his given,mdk4will hop on all 14 b/g channels. Channel will be changed every 3 seconds, if speed is not specified. Speed value is in milliseconds!-zβ activateZero_Chaos'WIDS exploit (authenticates clients from a WDS to foreign APs to make WIDS go nuts).-s <pps>β Set speed in packets per second (Default:100).
f β Packet Fuzzer π²
A simple packet fuzzer with multiple packet sources and a nice set of modifiers.
Be careful! mdk4 randomly selects the given sources and one or multiple modifiers. This is not the moment to be surprised, bestie. π
-s <sources>β Specify one or more of the following packet sources:aβ Sniff packets from the airbβ Create valid beacon frames with random SSIDs and propertiescβ Create CTS frames to broadcast (you can also use this for a CTS DoS)pβ Create broadcast probe requests
-m <modifiers>β modifier time bestie π pick at least one here, you literally can't skip this:nβ No modifier, do not modify packetsccbβ Set destination address to broadcastmβ Set source address to broadcastsβ Shotgun: randomly overwrites a couple of bytestβ append random bytes (creates broken tagged parameters in beacons/probes)cβ Cut packets short, preferably somewhere in headers or tagsdβ Insert random values in Duration and Flags fields
ok so quick vibe check on that list:s,t,canddare all about messing with the packets, so know that going in π
-c [chan,chan,...,chan[:speed]]β Enable channel hopping π¦. When-c his given,mdk4will hop an all 14 b/g channels. Channel will be changed every 3 seconds, if speed is not specified. Speed value is in milliseconds! β±οΈ-p <pps>β Set speed in packets per second (Default:250) π
π§ͺ c x - Poc Testing
Proof-of-concept of WiFi protocol implementation vulnerability testing π₯ β yes, that's literally what the mode is for, it's giving "we're testing the implementation and something's about to be exposed" energy π
-s <pps>β Set speed in packets per second (Default:unlimited) π-c [chan,chan,...,chan[:speed]]β Enable channel hopping π. When-c his given,mdk4will hop an all 14 b/g channels. Channel will be changed every 3 seconds, if speed is not specified. Speed value is in milliseconds! β±οΈ-v<vendor>β File name inpocsdir, default test all π (so like, leave it alone and it'll run through everything, iykyk)-A <AP MAC>β Set an AP MAC π-S <Station MAC>β Set a Station MAC π
π«Ά AUTHORS
mdk4 was written by E7mer, Pedro Larbig (ASPj) with contributions from the aircrack-ng community: Antragon, moongray, Ace, Zero_Chaos, Hirte, thefkboss, ducttape, telek0miker, Le_Vert, sorbo, Andy Green, bahathir, Dawid Gajownik and Ruslan Nabioullin πΈ
Not me being obsessed with the whole squad getting their credit, periodt π
And that's the whole page bestie, ty for reading β¨ this was mdk4 v2, dated July 2021, and the manual page is MDK4(2) β go be iconic with it ππ
π¦ where this page comes from
- arch rolling: mdk4 4.2-2 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms