1. Aircrack-NG
Conjunto de herramientas para la auditoría de
redes inalámbricas (Backtrack,Wifislax,Wifiway)
Airmon-ng: para activar la placa en modo monitor
Airodump-ng: programa captura de paquetes
Aireplay-ng: programa para la inyección de paquetes
Aircrack-ng: recupera claves estáticas WEP y WPA-PSK
Airdecap-ng: desencripta archivos de capturas WEP/WPA
IvsTools: manipulación de Ivs
Ingles: http://www.aircrack-ng.org/ Español: http://www.aircrack.es/
2. Recuperar una clave WEP estática
• Hay que capturar tanto tráfico encriptado
como sea posible.
• Cada paquete de datos WEP tiene asociado un
Vector de Inicialización (IV) de 3-bytes:
Después de recoger un número suficiente de
paquetes de datos, habría que ejecutar
aircrack sobre el archivo de captura
resultante. Entonces se ejecutará un conjunto
de ataques de tipo estadístico.
3. • ¿ La clave WEP es la correcta ?
• Hay dos modos de autenticación WEP:
• Open-System Authentication: Por default, el AP acepta
todos los clientes, y nunca comprueba la clave:
siempre concede la asociación .
Ahora, si la clave es incorrecta no podrán recibir o
enviar paquetes (porque fallará la desencriptación), y
por tanto DHCP, ping, etc. acabarán interrumpiéndose.
• Shared-Key Authentication: el cliente debe encriptar la
petición antes de que le sea concedida la asociación
por el AP. Este modo tiene fallas y provoca la
recuperación de la clave, por lo que nunca está
activado de modo predeterminado.
4. • Conclusión : sólo por que parezca que se
conectan de forma satisfactoria al AP
¡no significa que la clave WEP sea la correcta!
Para comprobar la clave WEP, se desencripta un
archivo de captura con el programa airdecap.
5. ¿Cuántos IVs se necesitan para recuperar claves WEP ?
• Depende de la longitud de la clave WEP, y también de la suerte.
• Normalmente, una clave WEP de 40-bit se podría con 300.000 IVs, y
una de 104-bit con 1.000.000 de IVs; con mala suerte se pueden
necesitar dos millones de IVs, o más. Aunque se puede recuperar
una clave wep con solo 2IVs si usa un patrón por defecto. Existen
aplicaciones particulares para la generación de diccionarios súper
reducidos.
• No hay manera de saber la longitud de la clave WEP: esta
información está oculta y nunca es anunciada, guardada bien en
paquetes de datos; airodump no puede reportar la longitud de la
clave WEP.
• Se recomienda ejecutar aircrack dos veces: cuando tienes 250.000
IVs, inicias aircrack con "-n 64" para recuperar la WEP de 40-bit. Si no
la sacas, lo vuelves a iniciar (sin la opción -n) para recuperar la WEP
de 104-bit.
6. ¿Si no se consegui IVs, que hago?
Posibles motivos:
• Se encuentran demasiado lejos del punto de acceso.
• No hay tráfico en la red escogida.
• Hay tráfico de tipo G pero estás capturando en modo B.
• Problemas con su tarjeta (¿problema de firmware ?)
• Los beacons sólo son "paquetes anuncio" sin encriptar.
No sirven para la recuperación de claves WEP.
7. Tools utilizadas Windows
• Retina Wifi Wireless
• NetStumbler
• Radar Wifi Scanner
• Aireplay-ng for windows
• CommView
• Wireshark
• Inssider
• Look Lan
• Airodump
• Mac changer
8. ¿ Cómo cambiar la dirección MAC?
• En Linux:
• ifconfig wlan0 down
• ifconfig wlan0 hw ether 00:11:22:33:44:55
• ifconfig wlan0 up
Si no funciona, intenta sacar y re-insertar la tarjeta.
• Macchanger (Linux)
• En Windows:
• Etherchange (Win)
• Si dicho programas no lo permiten siempre
hacerlo directamente con las herramientas que el
mismo SO incorpora
9. ¿ Cómo se recupera claves de una red wifi con WPA-PSK ?
• Debes capturar hasta que se produzca un "saludo"
(handshake) entre un cliente inalámbrico y el punto de
acceso. Para forzar al cliente a reautenticarse puedes iniciar
un ataque de desautenticación con aireplay.
También es necesario un buen diccionario
http://ftp.se.kde.org/pub/security/tools/net/Openwall/wordlists/
• No es posible pre-computar grandes tablas de Pairwise
Master Keys como hace rainbowcrack, puesto que la
contraseña está entremezclada con el ESSID.
10. • La única vulnerabilidad a tener en cuenta es el
ataque con diccionario, que falla si la contraseña
es lo suficientemente robusta.
• WPA2 (aka 802.11i) es exactamente lo mismo
que WPA1, excepto que usa CCMP (////AES in
counter mode////) en lugar de RC4 y HMAC-
SHA1 en lugar de HMAC-MD5 para el EAPOL MIC
11. • ¡ Tengo más de un millón de IVs, pero no encuentra la clave !
• Posibles motivos:
• Mala suerte: necesitan capturar más IVs. normalmente, una
WEP de 104-bit puede ser recuperada con aproximadamente un
millón de IVs, aunque a veces se necesitan más IVs.
• Si todos los votos (votes) parecen iguales, o si hay muchos votos
negativos, entonces el archivo con la captura está corrupto, o la
clave no es estática (¿se está usando EAP/802.1X ?).
• Un falso positivo evitó que se obtuviera la clave.
Probar desactivar cada ataque korek (-k 1 .. 17)
Subir nivel de fuerza bruta (-f)
Probar con ataque inverso experimental único (-y)
12. ¿cómo desencripto un archivo de captura ?
• Pueden usar el programa airdecap-ng :
airdecap-ng [opciones] <archivo pcap>
-l : no elimina la cabecera del 802.11
-b bssid : filtro de dirección MAC del punto de acceso
-k pmk : WPA Pairwise Master Key en hex
-e essid : Identificador en ascii de la red escogida
-p pass : contraseña WPA de la red escogida
-w key : clave WEP de la red escogida en hex
Ejemplos:
airdecap-ng -b 00:09:5B:10:BC:5A open-network.cap
airdecap-ng -w 11A3E229084349BC25D97E2939 wep.cap
airdecap-ng -e "el ssid" -p contraseña tkip.cap
13. ¿Como recuperar claves en Win?
• Pueden usar el programa WZCOOK que recupera
las claves WEP de la utilidad de XP Wireless Zero
Configuration.
• Éste es un software experimental, por lo que
puede que funcione y puede que no, dependiendo
del nivel de service pack que tengas.
14. ¿ Cómo uso aireplay-ng ?
• Si el controlador está correctamente parcheado, aireplay-
ng es capaz de inyectar paquetes 802.11 en modo Monitor
en bruto; fundamentalmente implementa un conjunto
principal de 5 ataques diferentes .
• Si reciben el mensaje
• "ioctl(SIOCGIFINDEX) failed: No such device”
Habría que revisar que el nombre de su dispositivo es
correcto y que no olvidamos un parámetro en la línea de
comandos.
• En los siguientes ejemplos, 00:13:10:30:24:9C es la
dirección MAC del punto de acceso (en el canal 6), y
00:09:5B:EB:C5:2B es la dirección MAC de un cliente
inalámbrico.
15. Ataque 0: desautenticación
• Este ataque es probablemente el más útil para
recuperar un ESSID oculto (no difundido) y para
capturar "saludos" WPA forzando a los clientes a
reautentificarse. También puede ser usado para
generar peticiones ARP en tanto que los clientes
Windows a veces vacían su cache de ARP cuando
son desconectados. Desde luego, este ataque es
totalmente inservible si no hay clientes asociados.
• Normalmente es más efectivo fijar como blanco
una estación específica usando el parámetro -c.
16. • Captura del "saludo" WPA
• airmon-ng start wlan0
• airodump-ng mon0 -w out –c 6 (cambiar a otra
consola)
• aireplay-ng -0 5 -a 00:13:10:30:24:9C -c
00:09:5B:EB:C5:2B mon0 (esperar unos segundos)
• aircrack-ng -w /ruta/al/diccionario out.cap
17. • Generar peticiones ARP
• airmon-ng start wlan0
• airodump-ng mon0 -w out -c 6 (cambiar a otra
consola)
• aireplay-ng -0 10 -a 00:13:10:30:24:9C mon0
aireplay-ng -3 -b 00:13:10:30:24:9C -h
00:09:5B:EB:C5:2B mon0
• Después de enviar tres tandas de paquetes de
desautentificación, comenzamos a escuchar en
busca de peticiones ARP con el ataque 3. La
opción -h es esencial y debe ser la dirección MAC
de un cliente asociado.
18. • Denegación de servicio masiva
• airmon-ng start wlan0
• aireplay-ng -0 0 -a 00:13:10:30:24:9C mon0
• Con el parámetro 0, este ataque enviará en un
bucle infinito paquetes de desautentificación
a las direcciones de broadcast, evitando así
que los clientes permanezcan conectados.
19. Ataque 1: autenticación falsa
• Este ataque es particularmente útil cuando no hay
clientes asociados: creamos la dirección MAC de un
cliente falso, la cual quedará registrada en la tabla de
asociación del AP. Esta dirección será usada para los
ataques 3 (reinyección de peticiones ARP) y 4
(desencriptación WEP "chopchop"). Es mejor
preparar la tarjeta con la MAC usada
(abajo, 00:11:22:33:44:55) de modo que el
controlador envíe ACKs de forma adecuada.
• De todos modos si este ataque falla y hay ya un
cliente asociado, es más efectivo usar simplemente
su dirección MAC (aquí, 00:09:5B:EB:C5:2B) para los
ataques 3 y 4.
20. • ifconfig wlan0 down
• ifconfig wlan0 hw ether 00:11:22:33:44:55
• ifconfig wlan0 up
• // o bien macchanger -c 00:11:22:33:44:55 wlan0
• aireplay-ng -1 0 -e "el ssid" -a 00:13:10:30:24:9C -h
00:11:22:33:44:55 mon0
• 12:14:06 Sending Authentication Request
• 12:14:06 Authentication successful
• 12:14:06 Sending Association Request
• 12:14:07 Association successful :-)
21. • Algunos puntos de acceso requieren de
reautentificación cada 30 segundos, si no nuestro cliente
falso será considerado desconectado. En este caso utiliza
el retardo de re-asociación periódica:
• aireplay-ng -1 30 -e "el ssid" -a 00:13:10:30:24:9C -h
00:11:22:33:44:55 mon0
• Si este ataque parece fallar (aireplay-ng permanece
enviando paquetes de petición de autenticación), puede
que esté siendo usado un filtrado de direcciones MAC.
22. Asegurarse que:
• Estar lo suficientemente cerca del punto de acceso, pero
ojo no demasiado porque también puede fallar.
• El controlador está correctamente parcheado e instalado.
• La tarjeta está configurada en el mismo canal que el AP.
• El BSSID y el ESSID (opciones -a / -e) son correctos.
• Si se trata de Prism2, asegúrate de que el firmware está
actualizado.
23. Ataque 2: Reenvío interactivo de paquetes
• Este ataque permite elegir un paquete dado para
reenviarlo; a veces proporciona resultados más efectivos
que el ataque 3 (reinyección automática de ARP).
• Podrían usarlo, por ejemplo, para intentar el ataque
"redifundir cualesquiera datos", el cuál sólo funciona si el
AP realmente reencripta los paquetes de datos WEP:
• aireplay-ng -2 -b 00:13:10:30:24:9C -n 100 -p 0841 -h
00:09:5B:EB:C5:2B -c FF:FF:FF:FF:FF:FF mon0
• También pueden usar el ataque 2 para reenviar
manualmente paquetes de peticiones ARP encriptadas con
WEP, cuyo tamaño es bien 68 o 86 bytes (dependiendo del
sistema operativo):
• aireplay-ng -2 -b 00:13:10:30:24:9C -d FF:FF:FF:FF:FF:FF -
m 68 -n 68 -p 0841 -h 00:09:5B:EB:C5:2B mon0
• aireplay-ng -2 -b 00:13:10:30:24:9C -d FF:FF:FF:FF:FF:FF -
m 86 -n 86 -p 0841 -h 00:09:5B:EB:C5:2B mon0
24. Ataque 3: Reinyección de petición ARP
• El clásico ataque de reinyección de petición ARP es el mas
efectivo para generar nuevos IVs, y funciona de forma muy
eficaz. Necesitan o bien la dirección MAC de un cliente asociado
(00:09:5B:EB:C5:2B), o bien la de un cliente falso del ataque 1
(00:11:22:33:44:55). Puede que tengan que esperar un par de
minutos, o incluso más, hasta que aparezca una petición ARP;
este ataque fallará si no hay tráfico.
• Por favor, fijarse en que también pueden reutilizar una petición
ARP de una captura anterior usando el interruptor -r .
• aireplay-ng -3 -b 00:13:10:30:24:9C -h 00:11:22:33:44:55 mon0
Saving ARP requests in replay_arp-0627-121526.cap
You must also start airodump to capture replies.
Read 2493 packets (got 1 ARP requests), sent 1305 packets...
25. Ataque 4: El "chopchop" de KoreK (predicción
de CRC)
• Este ataque, cuando es exitoso, puede desencriptar
un paquete de datos WEP sin conocer la clave.
Incluso puede funcionar con WEP dinámica. Este
ataque no recupera la clave WEP en sí misma, sino
que revela meramente el texto plano. De cualquier
modo, la mayoría de los puntos de acceso no son en
absoluto vulnerables. Algunos pueden en principio
parecer vulnerables pero en realidad tiran los
paquetes menores de 60 bytes. Este ataque necesita
al menos un paquete de datos WEP.
26. • Primero, desencriptemos un paquete:
• aireplay-ng -4 -h 00:09:5B:EB:C5:2B mon0
• Echemos un vistazo a la dirección IP:
• tcpdump -s 0 -n -e -r replay_dec-0627-022301.cap
reading from file replay_dec-0627-022301.cap, link-
type [...] IP 192.168.1.2 > 192.168.1.255: icmp 64:
echo request seq 1
• Ahora, forjemos una petición ARP. La IP inicial no
importa (192.168.1.100), pero la Ip de destino
(192.168.1.2) debe responder a peticiones ARP. La
dirección MAC inicial debe corresponder a una estación
asociada.
• ./arpforge replay_dec-0627-022301.xor 1
00:13:10:30:24:9C 00:09:5B:EB:C5:2B 192.168.1.100
192.168.1.2 arp.cap
• Y reenviemos nuestra petición ARP forjada:
• aireplay-ng -2 -r arp.cap mon0