ataque man in the middle. conceptos previos

Man in the Middle es un tipo de ataque en el que un equipo atacante consigue ponerse en medio de la comunicación entre dos o más equipos, logrando suplantarlos a todos, tanto a emisor como a receptor, sin que ninguno de ellos se de cuenta, es decir, en un ataque Man in The Middle lo que conseguimos es ponernos en medio de una comunicación para poder lograr diferentes fines, como pueden ser alterar la información que llega al receptor o estar como espectador, de manera que todos los datos entre emisor y receptor pasarían por nuestro equipo, quedando copia de estos en el mismo, y retransmitiendose después hacia la fuente de destino original.

 

Esto es lo que vamos a hacer en este tutorial.

Para nuestra tranquilidad y seguridad, estos ataques se encontraban en el epicentro de su actividad cuando todo el tráfico de internet era HTTP, tras la llegada de HTTPS con la implementación de HSTS, el principal enemigo de estos ataques, nuestros datos son mucho más difíciles de interceptar a través de la red (pero no imposible ojo)

HSTS. EL PRINCIPAL ENEMIGO DE LOS ATAQUES MAN IN THE MIDDLE

HSTS son siglas de HTTP Strict Transport Security o HTTP con Seguridad de Transporte Estricta, este protocolo en la actualidad se encuentra implementado prácticamente todas las páginas web actuales donde se exponen datos personales. HSTS define dos reglas que son clave para entender por qué los ataques Man in The Middle dejan de ser útiles en redes seguras

En HTTP es muy sencillo realizar una redirección de una página a otra sin que el usuario se percate, simplemente enviando una cabecera 301 al receptor, esto hacía muy sencillo complementar estos ataques con otro tipo de ataques conocidos como DNS Spoofing, en los que podíamos redirigir a nuestra víctima desde la página original de su banco, redes sociales etc... hacia una página clon albergada en un servidor malicioso, de manera que cuando ésta introdujese sus credenciales, el atacante podría robarlas, actualmente con HTTPS y HSTS, cuando una página trata de redirigirnos hacia otra no segura, recibimos un mensaje alertándonos como éste:

Igualmente, todavía quedan cientos de miles de páginas en internet que utilizan HTTP como protocolo, por lo que creo conveniente y pertinente explicar el ataque MITM en una guía de seguridad informática.

 

Para nuestro ataque vamos a utilizar bettercap 2.x, que es la herramienta más sofisticada en la actualidad para esto.

Si buscamos en internet tutoriales sobre ataques Man in The Middle, encontraremos cientos de tutoriales sobre como realizarlos con MiTMf o con bettercap 1.x, sin embargo es muy difícil encontrar un tutorial donde se explique el funcionamiento de bettercap 2.x ya que en esta versión, la aplicación se ha reinventado por completo, modificando toda la sintaxis de comandos y funcionamiento.

 

Bajo mi experiencia personal puedo afirmar que la diferencia entre usar bettercap 2.x a utilizar MiTMf o bettercap 1.x es abismal, puesto que estos últimos me han dado varios problemas, llegando en ocasiones a ralentizar la red hasta extremos desesperantes o directamente cortando el acceso a internet de todos los dispositivos.

Paso 1. Actualizando bettercap 2.x

Desconozco si en Kali será necesario realizar este paso, pero en Parrot la versión preinstalada de bettercap, además de no incluir ningún caplet instalado por defecto, me daba problemas a la hora de capturar datos, lo cual solucioné actualizando bettercap a su última versión.

 

Para ello abrimos una terminal y escribimos los comandos:

su

go get github.com/bettercap/bettercap

cuando finalice, ejecutamos el siguiente comando:

cp /root/go/bin/bettercap /usr/bin/bettercap

Con esto hemos actualizado bettercap a la última versión.

Paso 2. Instalando los caplets

Ahora es necesario descargar los caplets, que son scripts que ejecutarán los comandos por nosotros, para ello bien abrimos una nueva terminal o bien ejecutamos el comando “cd /home/*nuestrousuario*”

 

Posteriormente descargamos los caplets ejecutando el siguiente comando:

git clone https://github.com/bettercap/caplets.git

Una vez finalice la descarga ya estaremos listos para atacar con bettercap

Paso 3. Atacando con bettercap

Primero deberemos obtener privilegios de root si no los teníamos previamente (comando su)

 

Despues vamos a ejecutar bettercap cargando el caplet que nos permite recolectar las claves de los sistios HTTP y usar SSLSTRIP para convertir los sitios HTTPS en HTTP (Al usuario se le notificará)

 

Para ello vamos a lanzar el siguiente comando:

bettercap -caplet caplets/http-req-dump.cap

Con esto lanzaremos el ataque a toda la red:

Sin embargo si queremos atacar únicamente a una víctima, lo harémos de la siguiente manera:

 

Deberemos conocer la IP de la víctima a la que queremos atacar, esto podemos hacerlo con NMAP como se explica en el primer tutorial, o podemos hacerlo con bettercap:

Ejecutamos bettercap, y se nos abrirá la consola del mismo, introducimos el comando net.show y se nos mostrará una tabla con todas las IP de la red:

Ahora salimos de bettercap con el comando exit y lo volvemos a cargar con el caplet correcto, ejecutamos el siguiente comando:

bettercap -caplet caplets/http-req-dump.cap -eval “set.arp.spoof.targets IP DE LA VÍCTIMA”

Independientemente del tipo de ataque que lancemos, una vez lo tengamos en marcha, empezará a capturar credenciales de nuestras víctimas

Sin embargo, si la víctima trata de acceder a una página HTTPS, recibirá el siguiente aviso, aunque si lo omite y decide continuar accediendo a la página, capturaremos igualmente las credenciales

Juan Navarro Utiel

2º STI - CURSO 2017/2018

 

Eres libre de copiar y distribuir este contenido, siempre y cuando sea para aprendizaje y sin ánimo de lucro.