Hacking WiFi: MiTM con Fake AP (Parte 6)

Hay varias forma de hacer un MITM en redes wireless. Por ahora vamos a centrarnos cuando la red es abierta, sin contraseña. Habría varias maneras de realizar a prueba. Una red abierta, y donde el atacante (nosotros) crearemos un AP con el mismo nombre que la red abierta existente. Como hemos visto anteriormente, desautenticaremos a la victima del AP abierto al que está conectado, con paquetes de Desautenticación, y de esta forma conseguiremos que se conecte a nuestro AP. Entonces todo el trafico que genera la víctima pasará por nosotros, puesto que tenemos el control sobre el AP. Otra forma podría ser que el atacante no tuviese conexión por cable, y estuviese conectado al mismo AP. Y se procedería de la misma forma, desautenticas a la victima del AP para que se conecte a ti. La tercera forma sería cuando el atacante se conecta a internet mediante GPRS, 3G o 4G. Y luego se realizaría el mismo procedimiento. 

Para nuestra prueba lo haremos de una cuarta forma. Nosotros como atacantes nos conectaremos a un AP con acceso a intenet por la interfaz de nuestra tarjeta de red del portatil, y la víctima estará conectada a un AP abierto sin contraseña que creamos con la interfaz de la tarjeta de red externa conectada por USB. Esta prueba la haremos con Kali en una máquina virtual.


Para ello tendremos que irnos a la configuración de la maquina virtual antes de encenderla, al apartado de USB, y allí añadir nuestra tarjeta de red externa que conectamos al PC por USB. Como veis en la foto siguiente, pinchar en el icono de agregar y seleccionar la tarjeta de red externa.

Cuando encendamos la maquina si hacemos ifconfig podremos ver que tenemos 3 interfaces. l0 que es propia del sistema y no nos imoprta, eth0 que es la que utiliza la maquina virtual para conectarse por NAT al ordenador principal y tener acceso a internet, y por ultimo, tenemos la interfaz wlan0 que será la de la tarjeta de red externa que hemos agregado.

Crearé un AP con un ESSID que se que está guardado en la lista de redes Wi-Fi de la víctima para que se conecte a mi automáticamente para simplificar las cosas, puesto que ya hemos visto anteriormente la forma que hay de que la víctima se conecte a nosotros y no es lo que nos preocupe en este momento. El AP lo crearé sobre la interfaz mon0 (que la he creado sobre la interfaz wlan0, la intefaz de mi tarjeta de red externa).

# airbase-ng --essid USR5462 mon0 



Hemos creado un AP con el ESSID "USR5462" que sabemos que es el nombre de una red abierta donde ha estado conectado la victima. Ahora tendremos que redirigir el tráfico de la interfaz mon0 (la cual hemos usado para crear al AP al que se ha conectado la víctima) a la interfaz eth0 que es la que está conectada a internet. También habrá que realizar lo contrario, es decir, lo que venga por wlan0 con la víctima como destino, redirigirlo a mon0 que es donde está al AP para que le pueda llegar. Esto lo haremos con la herramienta Bridge Control de linux de una forma facil y sencilla (también se podría hacer con iptables que sería más complicado).


Podemos ver en la foto que se nos ha creado una interfaz llamada at0, que simula ser la interfaz de un punto de acceso real que se conectaría por cable ethernet a internet, para que el AP pueda tener conexión a internet. Tendremos que levantar esta interfaz:

# ifconfig at0 up 

Ahora lo que haremos será conectar con un puente las dos interfaces, mon0 y eth0, como hemos dicho antes para que la victima pueda tener conexión a internet. Para esto utilizaremo una herramienta llamada brctl. Para utilizarla tendrás que instalarte primero las bridge- utils: 

# apt-get install bridge-utils 

Creamos el puente:

# brctl addbr mitm 

El nombre del puente que conectará las dos interfaces es "mitm". Habrá que añadir las 2 interfaces que queires que comunique el puente, es decir, estás creando un tunel entre esas 2 interfaces para que todo lo que entre por una lo mande a la otra, y viceversa.

# brctl addif mitm eth0 
# brctl addif mitm at0 

Ahora pondremos una dirección IP de todo ceros a las dos interfaces que queremos unir:

# ifconfig eth0 0.0.0.0 up 
# ifconfig at0 0.0.0.0 up 

Despues tenemos que levantar la interfaz puente que acbamos de crear, la mitm:
# ifconfig mitm up



Ahora tendremos que asignarle una IP a la interfaz mitm que es la que nos conecta eth0 con at0 para que la víctima pueda tener conexión a internet. Esto lo haremos con la herramienta dhclient3 para pedirle una configuración de red al DHCP para nuestra interfaz mitm.

# dhclient mitm (si tarda un rato pulsa control+c y ya se habrá configurado). 

Ahora ya estamos listos para que la víctima se conecte a nosotros! }:) 

Activamos el Wi-Fi de la víctima que en este caso es mi teléfono, y como anteriormente había estado conectado en una Wi-Fi con el nombre USR5462, vemos como se conectará automáticamente a nuestro Fake AP.


Podemos ver en la herramienta airbase-ng que teniamos abierta como nos indica de que un cliente se ha asociado al AP. Para comprobar que todo el tráfico de la victima está pasando por nosotros, haremos un poco de Sniffing y nos pondremos a capturar el tráfico con Wireshark. Capturaremos en la interfaz at0 puesto que todo el tráfico del cliente pasa por aquí, ya que como hemos explicado antes esta es la interfaz equivalente a la que va conectado el cable en en un AP legitimo para que pueda este tener internet.


Podemos ver que aparece en la foto el trafico de la ip 10.0.2.16 que es la víctima (mi teléfono móvil) y puedo ver como está haciendo peticiones a la pagina de www.as.com a la que me he conectado con el móvil. Pues ya tenemos interceptadas las comunicaciones a internet y la víctima no se dará cuenta de nada.

Artículo cortesía de Roberto (HighSec)