
Una herramienta para descifrar la contraseña WPA2 con valor PMKID sin clientes ni desautenticación.
Este programa es una herramienta escrita en Python para recuperar la clave precompartida de una red WiFi WPA2 sin necesidad de desautenticación ni requerir que haya clientes en la red. Aprovecha la debilidad de ciertos puntos de acceso que anuncian el valor PMKID en el mensaje 1 de EAPOL.
python pmkidcracker.py -s <SSID> -ap <APMAC> -c <CLIENTMAC> -p <PMKID> -w <WORDLIST> -t <THREADS(Optional)>
NOTA: apmac, clientmac, pmkid deben ser una cadena hexadecimal, p.ej. b8621f50edd9
Las dos fórmulas principales para obtener un PMKID son las siguientes:
Esto es solo para comprenderlo, ambas ya están implementadas en find_pw_chunk y calculate_pmkid.
A continuación se presentan los pasos para obtener el PMKID manualmente inspeccionando los paquetes en WireShark.
*Puede usar Hcxtools o Bettercap para obtener rápidamente el PMKID sin los pasos siguientes. La forma manual es para comprensión.
Para obtener el PMKID manualmente desde Wireshark, ponga su antena inalámbrica en modo monitor, comience a capturar todos los paquetes con airodump-ng o herramientas similares. Luego conéctese al AP usando una contraseña inválida para capturar el mensaje de handshake EAPOL 1. Siga los siguientes 3 pasos para obtener los campos necesarios para los argumentos.
Abra el pcap en WireShark:
wlan_rsna_eapol.keydes.msgnr == 1 en WireShark para mostrar solo los paquetes del mensaje 1 de EAPOL.Si el punto de acceso es vulnerable, debería ver el valor PMKID como en la siguiente captura de pantalla:
Esta herramienta es solo para fines educativos y de prueba. No la utilice para explotar la vulnerabilidad en ninguna red que no posea o para la cual no tenga permiso de prueba. Los autores de este script no se responsabilizan por cualquier uso indebido o daño causado por su uso.