
Strumento di test IEEE 802.11 Wi-Fi per lo sfruttamento delle debolezze del protocollo, inclusi beacon flooding, deauthentication, packet fuzzing e IDS evasion. Supporta l'iniezione a doppia scheda e 2.4/5GHz.
MDK è uno strumento proof-of-concept per sfruttare le vulnerabilità comuni del protocollo IEEE 802.11.
MDK4 è una nuova versione di MDK3.
MDK4 è uno strumento di test Wi-Fi realizzato da E7mer, ASPj di k2wrlz; utilizza la libreria osdep del progetto aircrack-ng per iniettare frame su diversi sistemi operativi. Molte parti sono state contribuite dalla grande comunità di aircrack-ng: Antragon, moongray, Ace, Zero_Chaos, Hirte, thefkboss, ducttape, telek0miker, Le_Vert, sorbo, Andy Green, bahathir, Dawid Gajownik e Ruslan Nabioullin. GRAZIE!
MDK4 è distribuito sotto licenza GPLv3 o successiva.
apt-get install pkg-config libnl-3-dev libnl-genl-3-dev libpcap-dev
git clone https://github.com/aircrack-ng/mdk4
cd mdk4
make
sudo make install
# Su Arch Linux (e derivate) aggiungere `CC=clang` dopo ogni `make` nei comandi.
ATTACK MODE b: Beacon Flooding
Invia frame beacon per mostrare falsi AP ai client.
Può talvolta far crashare scanner di rete e persino driver!
ATTACK MODE a: Authentication Denial-Of-Service
Invia frame di autenticazione a tutti gli AP trovati nel raggio d'azione.
Troppi client possono bloccare o resettare diversi AP.
ATTACK MODE p: SSID Probing e Bruteforcing
Sonda gli AP e controlla la risposta, utile per verificare se l'SSID è
stato correttamente decloaked e se l'AP è nel raggio di trasmissione.
È disponibile anche il bruteforcing di SSID nascosti con o senza wordlist.
ATTACK MODE d: Deauthentication e Disassociation
Invia pacchetti di deautenticazione e disassociazione alle stazioni
basandosi sul traffico dati per disconnettere tutti i client da un AP.
ATTACK MODE m: Michael Countermeasures Exploitation
Invia pacchetti casuali o reinietta duplicati su un'altra coda QoS
per provocare le contromisure Michael sugli AP TKIP.
L'AP si spegnerà quindi per un intero minuto, rendendo questo un DoS efficace.
ATTACK MODE e: EAPOL Start e Logoff Packet Injection
Inonda un AP con frame EAPOL Start per tenerlo occupato con sessioni fittizie
e quindi impedirgli di gestire client legittimi.
Oppure disconnette i client iniettando messaggi EAPOL Logoff falsi.
ATTACK MODE s: Attacchi per reti mesh IEEE 802.11s
Vari attacchi alla gestione dei collegamenti e al routing nelle reti mesh.
Inonda vicini e rotte, crea buchi neri e devia il traffico!
ATTACK MODE w: WIDS Confusion
Confonde/Abusa dei sistemi di rilevamento e prevenzione delle intrusioni
collegando trasversalmente i client a più nodi WDS o a falsi AP rogue.
ATTACK MODE f: Packet Fuzzer
Un semplice fuzzer di pacchetti con molteplici sorgenti di pacchetti
e un bel set di modificatori. Attenzione!
ATTACK MODE x: Poc Testing
Proof-of-concept di vulnerabilità nell'implementazione del protocollo WiFi,
per testare se il dispositivo ha vulnerabilità wifi.
Può causare la disconnessione della connessione wifi o il crash del dispositivo bersaglio.
mdk4 <interfaccia> <modalità_attacco> [opzioni_attacco]
mdk4 <interfaccia in> <interfaccia out> <modalità_attacco> [opzioni_attacco]
Prova mdk4 --fullhelp per tutte le opzioni di attacco
Prova mdk4 --help <modalità_attacco> per informazioni su un singolo attacco
OPZIONI COMPLETE:
ATTACK MODE b: Beacon Flooding
Invia frame beacon per generare falsi AP ai client.
Può talvolta far crashare scanner di rete e persino driver!
-n <ssid>
Usa SSID <ssid> invece di quelli generati casualmente
-a
Usa anche caratteri non stampabili negli SSID generati
e crea SSID che superano il limite di 32 byte
-f <filename>
Leggi SSID da file
-v <filename>
Leggi MAC e SSID da file. Vedi file di esempio!
-t <adhoc>
-t 1 = Crea solo rete Ad-Hoc
-t 0 = Crea solo reti Managed (AP)
senza questa opzione, vengono generati entrambi i tipi
-w <encryptions>
Seleziona quale tipo di crittografia devono avere le reti fittizie
Opzioni valide: n = Nessuna crittografia, w = WEP, t = TKIP (WPA), a = AES (WPA2)
Puoi selezionare più tipi, es. "-w wta" creerà solo reti WEP e WPA
-b <bitrate>
Seleziona se creare reti a 11 Mbit (b) o 54 MBit (g)
Senza questa opzione, verranno usati entrambi i tipi.
-m
Usa MAC di accesspoint validi dal database OUI integrato
-h
Salta sul canale dove viene spoofata la rete
Questo è più efficace con alcuni dispositivi/driver
Ma riduce il tasso di pacchetti a causa del salto di canale.
-c <chan>
Crea reti fittizie sul canale <chan>. Se vuoi che la tua scheda
salti su questo canale, devi anche impostare l'opzione -h.
-i <HEX>
Aggiungi IE definiti dall'utente in esadecimale alla fine dei parametri taggati
-s <pps>
Imposta velocità in pacchetti al secondo (Default: 50)
ATTACK MODE a: Authentication Denial-Of-Service
Invia frame di autenticazione a tutti gli AP trovati nel raggio d'azione.
Troppi client possono bloccare o resettare diversi AP.
-a <ap_mac>
Testa solo l'AP specificato
-m
Usa MAC client validi dal database OUI integrato
-i <ap_mac>
Esegui test intelligente sull'AP
Questo test collega i client all'AP e reinietta dati sniffati per mantenerli attivi.
-s <pps>
Imposta velocità in pacchetti al secondo (Default: illimitato)
ATTACK MODE p: SSID Probing e Bruteforcing
Sonda gli AP e controlla la risposta, utile per verificare se l'SSID è
stato correttamente decloaked e se l'AP è nel raggio di trasmissione.
È disponibile anche il bruteforcing di SSID nascosti con o senza wordlist.
-e <ssid>
SSID da sondare
-f <filename>
Leggi SSID da file per il bruteforcing di SSID nascosti
-t <bssid>
Imposta indirizzo MAC dell'AP bersaglio
-s <pps>
Imposta velocità (Default: 400)
-b <character sets>
Usa modalità Bruteforce completa (consigliata solo per SSID brevi!)
Puoi selezionare più set di caratteri contemporaneamente:
* n (Numeri: 0-9)
* u (Maiuscole: A-Z)
* l (Minuscole: a-z)
* s (Simboli: ASCII)
-p <word>
Continua il bruteforcing, partendo da <parola>.
-r <channel>
Test di probe request (mod-musket)
ATTACK MODE d: Deauthentication e Disassociation
Invia pacchetti di deautenticazione e disassociazione alle stazioni
basandosi sul traffico dati per disconnettere tutti i client da un AP.
-w <filename>
Leggi file contenente MAC da ignorare (modalità Whitelist)
-b <filename>
Leggi file contenente MAC su cui eseguire il test (modalità Blacklist)
-s <pps>
Imposta velocità in pacchetti al secondo (Default: illimitato)
-x
Abilita la massima stealth IDS abbinando tutti i numeri di sequenza
I pacchetti verranno inviati solo con gli indirizzi dei client
-c [chan,chan,...,chan[:speed]]
Abilita il salto di canale. Quando viene dato -c h, mdk4 salterà su tutti
i 14 canali b/g. Il canale verrà cambiato ogni 3 secondi,
se non viene specificata la velocità. Il valore di velocità è in millisecondi!
-E <AP ESSID>
Specifica un ESSID AP da attaccare.
-B <AP BSSID>
Specifica un BSSID AP da attaccare.
-S <Station MAC address>
Specifica un indirizzo MAC stazione da attaccare.
-W <Whitelist Station MAC address>
Specifica un MAC stazione in whitelist.
ATTACK MODE m: Michael Countermeasures Exploitation
Invia pacchetti casuali o reinietta duplicati su un'altra coda QoS
per provocare le contromisure Michael sugli AP TKIP.
L'AP si spegnerà quindi per un intero minuto, rendendo questo un DoS efficace.
-t <bssid>
Imposta AP bersaglio con crittografia TKIP
-j
Usa il nuovo exploit QoS che richiede solo la reiniezione di pochi pacchetti invece
dell'iniezione casuale di pacchetti, che è inaffidabile ma funziona senza QoS.
-s <pps>
Imposta velocità in pacchetti al secondo (Default: 400)
-w <seconds>
Aspetta <secondi> tra ogni burst di pacchetti casuali (Default: 10)
-n <count>
Invia <conteggio> pacchetti casuali per burst (Default: 70)
ATTACK MODE e: EAPOL Start e Logoff Packet Injection
Inonda un AP con frame EAPOL Start per tenerlo occupato con sessioni fittizie
e quindi impedirgli di gestire client legittimi.
Oppure disconnette i client iniettando messaggi EAPOL Logoff falsi.
-t <bssid>
Imposta AP WPA bersaglio
-s <pps>
Imposta velocità in pacchetti al secondo (Default: 400)
-l
Usa messaggi Logoff per cacciare i client
ATTACK MODE s: Attacchi per reti mesh IEEE 802.11s
Vari attacchi alla gestione dei collegamenti e al routing nelle reti mesh.
Inonda vicini e rotte, crea buchi neri e devia il traffico!
-f <type>
Test di fuzzing di base. Raccoglie frame Action e Beacon dall'aria, li modifica e li riproduce:
Sono implementati i seguenti tipi di modifica:
1: Riproduce frame identico fino all'arrivo di uno nuovo (duplicate flooding)
2: Cambia sorgente e BSSID (possibilmente causando Neighbor Flooding)
3: Taglia il pacchetto corto, lasciando intatta l'intestazione 802.11 (trova errori di buffer)
4: Modalità shotgun, sovrascrive casualmente byte dopo l'intestazione (trova bug)
5: Attacco automatico da skript-kid che prova tutto quanto sopra casualmente :)
-b <impersonated_meshpoint>
Crea un Blackhole, usando l'indirizzo MAC del meshpoint impersonato
mdk4 risponderà a ogni Route Request in arrivo con una rotta perfetta attraverso il nodo impersonato.
-p <impersonated_meshpoint>
Path Request Flooding usando l'indirizzo del meshpoint impersonato
Regola l'interruttore della velocità (-s) per il massimo profitto!
-l
Crea semplicemente loop su ogni rotta trovata modificando le Path Replies
-s <pps>
Imposta velocità in pacchetti al secondo (Default: 100)
-n <meshID>
Bersaglia questa rete mesh
ATTACK MODE w: WIDS Confusion
Confonde/Abusa dei sistemi di rilevamento e prevenzione delle intrusioni
collegando trasversalmente i client a più nodi WDS o a falsi AP rogue.
Confonde un WDS con client multi-autenticati che scombina le tabelle di routing
-e <SSID>
SSID della rete WDS bersaglio
-c [chan,chan,...,chan[:speed]]
Abilita il salto di canale. Quando viene dato -c h, mdk4 salterà su tutti
i 14 canali b/g. Il canale verrà cambiato ogni 3 secondi,
se non viene specificata la velocità. Il valore di velocità è in millisecondi!
-z
attiva l'exploit WIDS di Zero_Chaos
(autentica i client da un WDS ad AP esterni per fare impazzire il WIDS)
-s <pps>
Imposta velocità in pacchetti al secondo (Default: 100)
ATTACK MODE f: Packet Fuzzer
Un semplice fuzzer di pacchetti con molteplici sorgenti di pacchetti
e un bel set di modificatori. Attenzione!
mdk4 seleziona casualmente le sorgenti date e uno o più modificatori.
-s <sources>
Specifica una o più delle seguenti sorgenti di pacchetti:
a - Sniffa pacchetti dall'aria
b - Crea frame beacon validi con SSID e proprietà casuali
c - Crea frame CTS in broadcast (puoi anche usarlo per un CTS DoS)
p - Crea probe request in broadcast
-m <modifiers>
Seleziona almeno uno dei modificatori qui:
n - Nessun modificatore, non modificare i pacchetti
b - Imposta indirizzo di destinazione a broadcast
m - Imposta indirizzo sorgente a broadcast
s - Shotgun: sovrascrive casualmente un paio di byte
t - Aggiunge byte casuali (crea parametri taggati danneggiati in beacon/probe)
c - Taglia i pacchetti corti, preferibilmente in intestazioni o tag
d - Inserisce valori casuali nei campi Duration e Flags
-c [chan,chan,...,chan[:speed]]
Abilita il salto di canale. Quando viene dato -c h, mdk4 salterà su tutti
i 14 canali b/g. Il canale verrà cambiato ogni 3 secondi,
se non viene specificata la velocità. Il valore di velocità è in millisecondi!
-p <pps>
Imposta velocità in pacchetti al secondo (Default: 250)
ATTACK MODE x: Poc Testing
Proof-of-concept di vulnerabilità nell'implementazione del protocollo WiFi,
per testare se il dispositivo ha vulnerabilità wifi.
Può causare la disconnessione della connessione wifi o il crash del dispositivo bersaglio.
-s <pps>
Imposta velocità in pacchetti al secondo (Default: illimitato)
-c [chan,chan,...,chan[:speed]]
Abilita il salto di canale. Quando viene dato -c h, mdk4 salterà su tutti
14 canali b/g. Il canale verrà cambiato ogni 3 secondi,
se non viene specificata la velocità. Il valore di velocità è in millisecondi!
-v <vendor>
nome file nella directory pocs, default testa tutti.
-A <AP MAC>
imposta un MAC AP
-S <Station MAC>
imposta un MAC stazione.