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