
Outil de test Wi-Fi IEEE 802.11 pour l'exploitation de faiblesses de protocole, incluant inondation de balises, désauthentification, fuzzing de paquets et évasion IDS. Prend en charge l'injection double carte et les bandes 2.4/5 GHz.
MDK est un outil de preuve de concept pour exploiter les faiblesses courantes du protocole IEEE 802.11.
MDK4 est une nouvelle version de MDK3.
MDK4 est un outil de test Wi-Fi créé par E7mer, ASPj de k2wrlz. Il utilise la bibliothèque osdep du projet aircrack-ng pour injecter des trames sur plusieurs systèmes d'exploitation. De nombreuses parties ont été contribuées par la grande communauté aircrack-ng : Antragon, moongray, Ace, Zero_Chaos, Hirte, thefkboss, ducttape, telek0miker, Le_Vert, sorbo, Andy Green, bahathir, Dawid Gajownik et Ruslan Nabioullin. MERCI !
MDK4 est sous licence GPLv3 ou ultérieure.
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
# Sous Arch Linux (et dérivés) ajoutez `CC=clang` après chaque `make` dans les commandes.
ATTACK MODE b : Beacon Flooding
Envoie des trames balises pour afficher des faux points d'accès aux clients.
Cela peut parfois faire planter les scanners réseau et même les pilotes !
ATTACK MODE a : Authentication Denial-Of-Service
Envoie des trames d'authentification à tous les points d'accès trouvés à portée.
Trop de clients peuvent geler ou réinitialiser plusieurs points d'accès.
ATTACK MODE p : SSID Probing and Bruteforcing
Interroge les points d'accès et vérifie la réponse, utile pour vérifier si le SSID a
été correctement démasqué et si le point d'accès est dans votre portée d'envoi.
Le bruteforce de SSID cachés avec ou sans liste de mots est également disponible.
ATTACK MODE d : Deauthentication and Disassociation
Envoie des paquets de désauthentification et de dissociation aux stations
en fonction du trafic de données pour déconnecter tous les clients d'un point d'accès.
ATTACK MODE m : Michael Countermeasures Exploitation
Envoie des paquets aléatoires ou réinjecte des doublons sur une autre file d'attente QoS
pour provoquer des contre-mesures Michael sur les points d'accès TKIP.
Le point d'accès s'arrêtera alors pendant une minute entière, ce qui en fait un déni de service efficace.
ATTACK MODE e : EAPOL Start and Logoff Packet Injection
Inonde un point d'accès avec des trames EAPOL Start pour le maintenir occupé avec de fausses sessions
et le désactive ainsi pour traiter tout client légitime.
Ou déconnecte les clients en injectant de faux messages EAPOL Logoff.
ATTACK MODE s : Attacks for IEEE 802.11s mesh networks
Diverses attaques sur la gestion des liaisons et le routage dans les réseaux maillés.
Inonde les voisins et les routes, crée des trous noirs et détourne le trafic !
ATTACK MODE w : WIDS Confusion
Confond/Abuse les systèmes de détection et de prévention d'intrusion en
connectant de manière croisée des clients à plusieurs nœuds WDS ou de faux points d'accès rogues.
ATTACK MODE f : Packet Fuzzer
Un simple fuzzer de paquets avec plusieurs sources de paquets
et un bel ensemble de modificateurs. Soyez prudent !
ATTACK MODE x : Poc Testing
Preuve de concept de vulnérabilité d'implémentation du protocole Wi-Fi,
pour tester si l'appareil présente des vulnérabilités Wi-Fi.
Cela peut provoquer la déconnexion de la connexion Wi-Fi ou le crash de l'appareil cible.
mdk4 <interface> <attack_mode> [attack_options]
mdk4 <interface in> <interface out> <attack_mode> [attack_options]
Essayez mdk4 --fullhelp pour toutes les options d'attaque
Essayez mdk4 --help <attack_mode> pour des informations sur une seule attaque
OPTIONS COMPLÈTES :
ATTACK MODE b : Beacon Flooding
Envoie des trames balises pour générer de faux points d'accès chez les clients.
Cela peut parfois faire planter les scanners réseau et les pilotes !
-n <ssid>
Utiliser le SSID <ssid> au lieu de ceux générés aléatoirement
-a
Utiliser également des caractères non imprimables dans les SSID générés
et créer des SSID qui dépassent la limite de 32 octets
-f <filename>
Lire les SSID depuis un fichier
-v <filename>
Lire les MAC et SSID depuis un fichier. Voir le fichier exemple !
-t <adhoc>
-t 1 = Créer uniquement un réseau ad-hoc
-t 0 = Créer uniquement des réseaux gérés (points d'accès)
sans cette option, les deux types sont générés
-w <encryptions>
Sélectionner le type de chiffrement que les faux réseaux auront
Options valides : n = Aucun chiffrement, w = WEP, t = TKIP (WPA), a = AES (WPA2)
Vous pouvez sélectionner plusieurs types, ex. "-w wta" créera uniquement des réseaux WEP et WPA
-b <bitrate>
Sélectionner si des réseaux à 11 Mbit (b) ou 54 MBit (g) sont créés
Sans cette option, les deux types seront utilisés.
-m
Utiliser une MAC de point d'accès valide provenant de la base OUI intégrée
-h
Sauter sur le canal où le réseau est usurpé
Ceci est plus efficace avec certains appareils/pilotes
Mais réduit le débit de paquets en raison des sauts de canal.
-c <chan>
Créer des faux réseaux sur le canal <chan>. Si vous voulez que votre carte
saute sur ce canal, vous devez également définir l'option -h.
-i <HEX>
Ajouter un ou plusieurs IE définis par l'utilisateur en hexadécimal à la fin des paramètres étiquetés
-s <pps>
Définir la vitesse en paquets par seconde (Défaut : 50)
ATTACK MODE a : Authentication Denial-Of-Service
Envoie des trames d'authentification à tous les points d'accès trouvés à portée.
Trop de clients peuvent geler ou réinitialiser plusieurs points d'accès.
-a <ap_mac>
Tester uniquement le point d'accès spécifié
-m
Utiliser une MAC client valide provenant de la base OUI intégrée
-i <ap_mac>
Effectuer un test intelligent sur le point d'accès
Ce test connecte les clients au point d'accès et réinjecte les données sniffées pour les maintenir actifs.
-s <pps>
Définir la vitesse en paquets par seconde (Défaut : illimité)
ATTACK MODE p : SSID Probing and Bruteforcing
Interroge les points d'accès et vérifie la réponse, utile pour vérifier si le SSID a
été correctement démasqué et si le point d'accès est dans votre portée d'envoi.
Le bruteforce de SSID cachés avec ou sans liste de mots est également disponible.
-e <ssid>
SSID à sonder
-f <filename>
Lire les SSID depuis un fichier pour le bruteforce de SSID cachés
-t <bssid>
Définir l'adresse MAC du point d'accès cible
-s <pps>
Définir la vitesse (Défaut : 400)
-b <character sets>
Utiliser le mode Bruteforce complet (recommandé uniquement pour les SSID courts !)
Vous pouvez sélectionner plusieurs ensembles de caractères en même temps :
* n (Chiffres : 0-9)
* u (Majuscules : A-Z)
* l (Minuscules : a-z)
* s (Symboles : ASCII)
-p <word>
Continuer le bruteforce, en commençant par <mot>.
-r <channel>
Tests de requêtes de sondage (mod-musket)
ATTACK MODE d : Deauthentication and Disassociation
Envoie des paquets de désauthentification et de dissociation aux stations
en fonction du trafic de données pour déconnecter tous les clients d'un point d'accès.
-w <filename>
Lire un fichier contenant les MAC à ne pas prendre en compte (mode liste blanche)
-b <filename>
Lire un fichier contenant les MAC sur lesquelles effectuer le test (mode liste noire)
-s <pps>
Définir la vitesse en paquets par seconde (Défaut : illimité)
-x
Activer le camouflage IDS complet en faisant correspondre tous les numéros de séquence
Les paquets ne seront envoyés qu'avec les adresses des clients
-c [chan,chan,...,chan[:speed]]
Activer le saut de canal. Lorsque -c h est donné, mdk4 sautera sur tous les
14 canaux b/g. Le canal changera toutes les 3 secondes,
si la vitesse n'est pas spécifiée. La valeur de vitesse est en millisecondes !
-E <AP ESSID>
Spécifier un ESSID de point d'accès à attaquer.
-B <AP BSSID>
Spécifier un BSSID de point d'accès à attaquer.
-S <Station MAC address>
Spécifier une adresse MAC de station à attaquer.
-W <Whitelist Station MAC address>
Spécifier une MAC de station en liste blanche.
ATTACK MODE m : Michael Countermeasures Exploitation
Envoie des paquets aléatoires ou réinjecte des doublons sur une autre file d'attente QoS
pour provoquer des contre-mesures Michael sur les points d'accès TKIP.
Le point d'accès s'arrêtera alors pendant une minute entière, ce qui en fait un déni de service efficace.
-t <bssid>
Définir le point d'accès cible, qui utilise le chiffrement TKIP
-j
Utiliser la nouvelle exploitation QoS qui nécessite seulement de réinjecter quelques paquets au lieu
de l'injection de paquets aléatoires, qui est peu fiable mais fonctionne sans QoS.
-s <pps>
Définir la vitesse en paquets par seconde (Défaut : 400)
-w <seconds>
Attendre <secondes> entre chaque rafale de paquets aléatoires (Défaut : 10)
-n <count>
Envoyer <nombre> paquets aléatoires par rafale (Défaut : 70)
ATTACK MODE e : EAPOL Start and Logoff Packet Injection
Inonde un point d'accès avec des trames EAPOL Start pour le maintenir occupé avec de fausses sessions
et le désactive ainsi pour traiter tout client légitime.
Ou déconnecte les clients en injectant de faux messages EAPOL Logoff.
-t <bssid>
Définir le point d'accès WPA cible
-s <pps>
Définir la vitesse en paquets par seconde (Défaut : 400)
-l
Utiliser les messages Logoff pour déconnecter les clients
ATTACK MODE s : Attacks for IEEE 802.11s mesh networks
Diverses attaques sur la gestion des liaisons et le routage dans les réseaux maillés.
Inonde les voisins et les routes, crée des trous noirs et détourne le trafic !
-f <type>
Tests de fuzzing de base. Capture les trames Action et Beacon dans l'air, les modifie et les rejoue :
Les types de modification suivants sont implémentés :
1 : Rejouer une trame identique jusqu'à l'arrivée d'une nouvelle (inondation de doublons)
2 : Changer la source et le BSSID (pouvant entraîner une inondation de voisins)
3 : Couper le paquet court, laisser l'en-tête 802.11 intact (trouver des erreurs de tampon)
4 : Mode fusil à pompe, écraser aléatoirement des octets après l'en-tête (trouver des bugs)
5 : Attaque automatisée script-kid tentant tous les éléments ci-dessus de manière aléatoire :)
-b <impersonated_meshpoint>
Créer un trou noir, en utilisant l'adresse MAC du point maillé usurpé
mdk4 répondra à chaque demande de route entrante avec une route parfaite passant par le nœud usurpé.
-p <impersonated_meshpoint>
Inondation de demandes de chemin utilisant l'adresse du point maillé usurpé
Ajustez le commutateur de vitesse (-s) pour un profit maximal !
-l
Créer simplement des boucles sur chaque route trouvée en modifiant les réponses de chemin
-s <pps>
Définir la vitesse en paquets par seconde (Défaut : 100)
-n <meshID>
Cibler ce réseau maillé
ATTACK MODE w : WIDS Confusion
Confond/Abuse les systèmes de détection et de prévention d'intrusion en
connectant de manière croisée des clients à plusieurs nœuds WDS ou de faux points d'accès rogues.
Confond un réseau WDS avec des clients multi-authentifiés ce qui perturbe les tables de routage
-e <SSID>
SSID du réseau WDS cible
-c [chan,chan,...,chan[:speed]]
Activer le saut de canal. Lorsque -c h est donné, mdk4 sautera sur tous les
14 canaux b/g. Le canal changera toutes les 3 secondes,
si la vitesse n'est pas spécifiée. La valeur de vitesse est en millisecondes !
-z
Activer l'exploitation WIDS de Zero_Chaos
(authentifie les clients d'un WDS vers des points d'accès étrangers pour rendre le WIDS fou)
-s <pps>
Définir la vitesse en paquets par seconde (Défaut : 100)
ATTACK MODE f : Packet Fuzzer
Un simple fuzzer de paquets avec plusieurs sources de paquets
et un bel ensemble de modificateurs. Soyez prudent !
mdk4 sélectionne aléatoirement les sources données et un ou plusieurs modificateurs.
-s <sources>
Spécifier une ou plusieurs des sources de paquets suivantes :
a - Sniffer des paquets depuis l'air
b - Créer des trames balises valides avec des SSID et propriétés aléatoires
c - Créer des trames CTS en diffusion (vous pouvez également l'utiliser pour un déni de service CTS)
p - Créer des demandes de sondage en diffusion
-m <modifiers>
Sélectionner au moins un des modificateurs suivants :
n - Aucun modificateur, ne pas modifier les paquets
b - Définir l'adresse de destination en diffusion
m - Définir l'adresse source en diffusion
s - Fusil à pompe : écraser aléatoirement quelques octets
t - Ajouter des octets aléatoires (crée des paramètres étiquetés cassés dans les balises/sondages)
c - Couper les paquets courts, de préférence quelque part dans les en-têtes ou les étiquettes
d - Insérer des valeurs aléatoires dans les champs Durée et Drapeaux
-c [chan,chan,...,chan[:speed]]
Activer le saut de canal. Lorsque -c h est donné, mdk4 sautera sur tous les
14 canaux b/g. Le canal changera toutes les 3 secondes,
si la vitesse n'est pas spécifiée. La valeur de vitesse est en millisecondes !
-p <pps>
Définir la vitesse en paquets par seconde (Défaut : 250)
ATTACK MODE x : Poc Testing
Preuve de concept de vulnérabilité d'implémentation du protocole Wi-Fi,
pour tester si l'appareil présente des vulnérabilités Wi-Fi.
Cela peut provoquer la déconnexion de la connexion Wi-Fi ou le crash de l'appareil cible.
-s <pps>
Définir la vitesse en paquets par seconde (Défaut : illimité)
-c [chan,chan,...,chan[:speed]]
Activer le saut de canal. Lorsque -c h est donné, mdk4 sautera sur tous les
14 canaux b/g. Le canal changera toutes les 3 secondes,
si la vitesse n'est pas spécifiée. La valeur de vitesse est en millisecondes !
-v <vendor>
Nom de fichier dans le répertoire pocs, par défaut teste tout.
-A <AP MAC>
Définir une MAC de point d'accès
-S <Station MAC>
Définir une MAC de station.