Ya hace tiempo que he visto por ahi esta herramienta para auditorias wpa/wpa2. Lo que hace este programa es optimizar el ataque de diccionario. Para que funcione hace falta el handshake completo (four-way handshake), cosa que no conseguiremos a menudo, a no ser que inatalen un parche que permita hacer el ataque a uno incompleto, como hace aircrack-ng.
Comenzemos por descargar cowpatty, desde aqui:
http://wirelessdefence.org/Contents/Files/cowpatty-4.6.tgz
Y aqui esta el parche (existe la version 16, pero esta es mas estable):
http://proton.cygnusx-1.org/~edgan/cowpatty/cowpatty-4.6-fixup14.patch
Vamos a comenzar con la practica:
Código:
$ sudo apt-get install openssl #Instalamos las dependencias necesarias.
$ sudo apt-get install libpcap0.8-dev
$ sudo apt-get install libssl-dev
$ tar zxvf cowpatty-4.6.tgz #Descomprimimos el archivo previamente descargado.
$ mv cowpatty-4.6-fixup14.patch cowpatty-4.6 #Movemos el parche a la carpeta extraida.
$ cd cowpatty-4.6/ #Nos movemos a dicha carpeta.
$ patch < cowpatty-4.6-fixup14.patch #Aplicamos el parche.
$ sudo make install #Instalamos la aplicación.
Tambien se instalara genpmk, para crear diccionarios precomputados.
Para las pruebas he tenido que buscar por la red (en aircrack-ng.org) una captura de un handshake, ya que en ese momento no disponia de uno propio. Ya solo me falta el diccionario, en el que pondre cuidadosamente la contraseña correcta. Para esta labor "tire" de StrinGenerator, y en medio segundo ya me habra creado unas 300.000 claves. ¿Y por que lo cortas tan rapido?, pues como he dicho anteriormente ahora tengo que poner la contraseña correcta al final, y el "gedit" aguanta, pero hasta un punto.
Ahora voy a proceder a probar el ataque con aircrack-ng para asegurar que lo encuentra, y asi comparo las velocidades de cada herramienta. Vamos a empezar con el primer handshake cuya contraseña es Password1.
Prueba con aircrack-ng:
Código:
sudo aircrack-ng -w prueba.txt prueba.cap
Es muy importante revisar la temperatura de vez en cuando:
Bien ahora vamos con cowpatty, para esta prueba vamos a utilizar el segundo handshake cuya contraseña es preinstall, ademas he bajado considerablemente el tamaño del diccionario:
Prueba con cowpatty+diccionario:
Código:
cowpatty -r prueba2.cap -f prueba.txt -s virgin\ broadband
Y ahora vamos ha ver el verdadero poder de cowpatty, vamos a crear un diccionario precomputado, para esto nececitamos el essid de la red y el diccionario (esta vez si voy a usar el de 300.000 palabras). Tarda bastante a generarlo.
Creando diccionario precomputado para el essid "virgin broadband".
Código:
genpmk -f prueba.txt -d salida_precom -s virgin\ broadband
Ahora probamos el handshake junto con el nuevo diccionario precomputado.
Código:
cowpatty -r prueba2.cap -d salida_precom -s virgin\ broadband
Bien, pues vamos ha hacer el estudio, de cada herramienta. La velocidad de crackeo varía segun el hardware:
*Aircrack-ng: Velocidad--> unas 1.200 claves por segundo. Es sin duda el mas fiable de todos, ya que no es tan escrupuloso con el handshake, y permite que este sea imcompleto. La velocidad en ataque con diccionario es mayor que en cowpatty, al utilizar el 100% del procesador.
*Cowpatty+diccionario: Velocidad--> unas 150 claves por segundo. Como hemos dicho anteriormente, requiere de la instalacción de un parche para trabajar con handshake incompletos. Ademas de esta forma tendremos muchas incompatibilidades con determinados handshake, por lo que el programa parcheado no es muy fiable. Va mucho mas lento que aircrack-ng, pero solo utiliza el 50% del procesador.
*Cowpatty+diccionario precomputado: Velocidad--> unas 100.000 claves por segundo. Como veis la velocidad es enorme, pero tambien es verdad que tarda bastante a generar el diccionario precom. (unas 150 claves por segundo). Aunque una vez generado nos puede servir para ataques en otras redes con el mismo essid.
Lo ideal es tener el handshake completo, y si nos podemos descargar diccionarios ya precomputados pues mucho mejor, pero fijate que esta generado para tu essid, si no no valdra, ok.
Os dejo un enlace a una recopilación de diccionarios: http://foro.seguridadwireless.net/enlaces-descarga-aplicaciones-wireless-linux/diccionarios-wordlist-listas-de-palabras/