
Un outil pour casser une phrase de passe WPA2 avec la valeur PMKID sans clients ni désauthentification
Ce programme est un outil écrit en Python pour récupérer la clé pré-partagée d'un réseau WiFi WPA2 sans déconnexion (de-authentication) et sans nécessiter la présence de clients sur le réseau. Il cible la faiblesse de certains points d'accès qui annoncent la valeur PMKID dans le message EAPOL 1.
python pmkidcracker.py -s <SSID> -ap <APMAC> -c <CLIENTMAC> -p <PMKID> -w <WORDLIST> -t <THREADS(Optional)>
REMARQUE : apmac, clientmac, pmkid doivent être une chaîne hexadécimale, par exemple b8621f50edd9
Les deux formules principales pour obtenir un PMKID sont les suivantes :
Ceci est seulement pour la compréhension, les deux sont déjà implémentés dans find_pw_chunk et calculate_pmkid.
Voici les étapes pour obtenir le PMKID manuellement en inspectant les paquets dans WireShark.
*Vous pouvez utiliser Hcxtools ou Bettercap pour obtenir rapidement le PMKID sans les étapes ci-dessous. La méthode manuelle est pour la compréhension.
Pour obtenir le PMKID manuellement depuis Wireshark, placez votre antenne sans fil en mode monitor, commencez à capturer tous les paquets avec airodump-ng ou des outils similaires. Connectez-vous ensuite au point d'accès en utilisant un mot de passe invalide pour capturer le message d'échange EAPOL 1. Suivez les 3 étapes suivantes pour obtenir les champs nécessaires aux arguments.
Ouvrez le fichier pcap dans WireShark :
wlan_rsna_eapol.keydes.msgnr == 1 dans WireShark pour afficher uniquement les paquets du message EAPOL 1.Si le point d'accès est vulnérable, vous devriez voir la valeur PMKID comme dans la capture d'écran ci-dessous :
Cet outil est destiné uniquement à des fins éducatives et de test. Ne l'utilisez pas pour exploiter la vulnérabilité sur un réseau dont vous n'êtes pas propriétaire ou pour lequel vous n'avez pas la permission de tester. Les auteurs de ce script ne sont pas responsables de toute mauvaise utilisation ou des dommages causés par son utilisation.