0 Bewertungen0% fanden dieses Dokument nützlich (0 Abstimmungen)
16 Ansichten3 Seiten
El documento describe cómo crackear una contraseña autenticada mediante EAP-MD5, que es insegura. Explica que el tráfico no está encriptado, por lo que una captura de paquetes permite generar ataques de diccionario para probar contraseñas hasta obtener el mismo hash MD5 que el cliente. El autor modificó una herramienta para optimizar el proceso y generar la configuración para usar hashcat u oclhashcat con GPU para probar un gran número de contraseñas rápidamente.
El documento describe cómo crackear una contraseña autenticada mediante EAP-MD5, que es insegura. Explica que el tráfico no está encriptado, por lo que una captura de paquetes permite generar ataques de diccionario para probar contraseñas hasta obtener el mismo hash MD5 que el cliente. El autor modificó una herramienta para optimizar el proceso y generar la configuración para usar hashcat u oclhashcat con GPU para probar un gran número de contraseñas rápidamente.
El documento describe cómo crackear una contraseña autenticada mediante EAP-MD5, que es insegura. Explica que el tráfico no está encriptado, por lo que una captura de paquetes permite generar ataques de diccionario para probar contraseñas hasta obtener el mismo hash MD5 que el cliente. El autor modificó una herramienta para optimizar el proceso y generar la configuración para usar hashcat u oclhashcat con GPU para probar un gran número de contraseñas rápidamente.
Recientemente me he encontrado con un punto de acceso con configuracin WPA2
Enterprise y autenticacin EAP-MD5. Seguramente uno de los ltimos que quedan, ya que est configuracin es insegura, incluso ms que WEP. Pero para mi sorpresa, la contrasea era bastante robusta.
Antes de entrar al tajo, permitidme que haga una pequea introduccin.
Tanto WPA como WPA2 soportan dos mtodos de autenticacin distintos: 1.- Contrasea compartida o PSK de sus siglas Pre Shared Key, tan simple como que ambas partes, punto de acceso y todos los clientes, conocen la contrasea. Siempre la misma. 2.- "Enterprise" 802.1x, donde mediante un segundo servicio de autenticacin denominado radius se valida cada uno de los distintos usuarios y sus contraseas usando alguna de las extensiones disponibles en EAP (Extensible Authentication Protocol). Una de estas extensiones es MD5.
En el caso de EAP-MD5, la comprobacin de estas credenciales se hace mediante un desafo y su respuesta de la siguiente forma: 1. Hasta que se ha realizado la validacin el punto de acceso tan solo transmite desde el radius hasta el cliente sin intervenir en el proceso. 2. El primer paso es la identificacin del cliente que trata de conectar con el nombre de usuario "Identity" hasta el radius. 3. El radius contesta con un paquete que contiene el identificador de la peticin, por ejemplo la "1", y un desafo que es hash md5 obtenido al azar, por ejemplo: 6119212b50e2c9eba01fd618288f316c 4. El cliente obtiene ambos valores y junto a la contrasea, por ejemplo "test", genera un nuevo hash de la siguiente forma: md5(requestid + contrasea + desafo), lo que se traduce como: md5(\x01test\x61\x19\x21\x2b\x50\xe2\xc9\xeb\xa0\x1f\xd6\x18\x28\x8f\x31\6 c) y lo manda nuevamente al radius. En el ejemplo anterior: a4f3d177f37cff946daa45b8327e80c8 5. El radius har el mismo md5 con la contrasea que l conoce para ese usuario y si obtiene el mismo hash que le mand el cliente como respuesta (a4f3d177f37cff946daa45b8327e80c8), es que la contrasea es vlida.
Esquema de 802.1x (imagen de http://www.juansa.net/) Todo este trfico se manda en texto claro, por lo que una captura de como conecta un cliente permite generar fcilmente un ataque de diccionario sobre la contrasea, generando tantos md5 como sean necesarios hasta que se obtenga el mismo que el cliente mand en el ltimo paso.
Con este concepto hay un par de scripts: eapmd5crack y eapmd5pass que hacen la labor. Pero por desgracia estas utilidades no estn optimizadas para probar un elevado nmero de contraseas en poco tiempo.
Para intentar optimizar el proceso he modificado eapmd5crack. Ahora en vez de tratar de obtener la contrasea directamente, creara la configuracin necesaria para ejecutar posteriormente hashcat (en caso de CPU) o oclhashcat si disponemos de GPU mostrando el comando a ejecutar.
El script est disponible en el repositorio de SbD.
epamd5hcgen.py
Respondiendo a un comentario aado esta informacin explicando los parmetros de hashcat: -m 10: que identifican que es un MD5 del tipo hash:salt --quiet: para que no muestre la salida completa y solo el resultado. --hex-salt: para indicarle que el salt (challange enviado por el radius) es binario y no un string en hexadecimal --outfile-format 7: para que muestre la salida con el resultado tambin en hexadecimal ToPwn: es el fichero que contiene el hash:salt /usr/share/wordlists/rockyou.txt: el diccionario -r eap.rule: se utiliza para aadir el ID del paquete al inicio de cada palabra probada.Necesario como se vio en la explicacin de como se compone el MD5. awk...sed, simplemente es para eliminar de la contrasea el ID del paquete.