Hacking desde 0: Man in the Middle (MiTM) con SSLstrip

Vamos a ver como hacer un MiTM con SSLstrip del gran Moxie Marlinspike. Esto no es nuevo ni mucho menos. Moxie presentó la herramienta en 2009 en la Black Hat.

Básicamente y resumiendo conceptos para que todos puedan entenderlo, lo que hace SSLstrip es cambiar al vuelo el trafico HTTPS por HTTP, es decir, buscas una web en Google que es “segura” (facebook) y al hacer clic para acceder, ya es HTTP con el consecuente riesgo que ya sabemos que acarrea eso (el trafico ya no viaja cifrado).

Para este laboratorio necesitamos un equipo con Kali (maquina virtual) y otra maquina Windows 7 (también virtual), Wireshark y obviamente SSLstrip, así que vamos con ello.

Lo primero es ir a la web de Moxie y descargar su herramienta.

screenshot_1

La dejamos en el escritorio de momento. Lo siguiente es ver que equipos tenemos en la red para poder atacar. Para ello vamos a usar el archiconocido nmap.

nmap 192.168.1.*

Obviamente ya sabemos el rango de la red y estamos conectados a ella.

Ya hemos visto (en la imagen) que la maquina con Windows tiene la IP 192.168.1.39 así que vamos a comenzar.

Vamos a configurar IP forwading en la maquina Kali de la siguiente manera:

echo 1 > /proc/sys/net/ipv4/ip_forward

Ahora vamos a usar el arpspoof entre las dos maquinas, es decir el ataque MiTM.

arpspoof -i eth0 -t 192.168.1.39 192.168.1.1  (arpspoof -i interfaz -t victima router)

Descomprimimos la carpeta del SSLstrip que habíamos dejado en el escritorio.

Ingresamos en la carpeta, y a continuación, vamos a redirigir el trafico del puerto 80 (TCP) al 10000 que es el que usa SSLstrip con IPTABLES. De esta manera todo el trafico (las web que visitemos) pasará por el programa de Moxie.

iptables -t nat -A PREROUTING -p tcp –destination-port 80 -j REDIRECT –to-ports 10000

Es el momento de iniciar el programa

sslstrip -l 1000    (sslstrip -l <puerto>)

Y por ultimo abrimos Wireshark para ver lo que esta pasando. Elegimos la interfaz (en este caso eth0) y le damos a start.

Aplicamos un filtro HTTP para solo ver esos paquetes.

Ahora nos vamos a la maquina Windows 7 y abrimos nuestro navegador para acceder a facebook por ejemplo.

Nos logamos con nuestro usuario y contraseña como hacemos siempre, pero veamos que pasa si en Wireshark buscamos un paquete que lleve por nombre “login”.

Seleccionamos el paquete y con el botón derecho del ratón le damos a “Follow TCP Stream”

Una vez dentro podemos ver lo siguiente

Con esto, ya tenemos el correo y la contraseña de un usuario de su facebook (podría ser twitter, o cualquier otro sitio).

Si nos vamos a la maquina Windows 7, y revisamos la tabla ARP (con un arp -a desde el CMD) vemos que algo no cuadra.

Observamos que para la IP 192.168.1.1 (el router) y para la 192.168.1.50 (maquina Kali) la dirección MAC es la misma, y esto no debería ser posible, ya que como dijimos en otra entrada, las MAC deben ser únicas para cada tarjeta.

Esta es una de las “alertas” que vemos, la otra es que al entrar en facebook (si se fijaron antes) la dirección era HTTP y no HTTPS.

Por ultimo recuerda que lo mejor es no poner tus credenciales (usuario y contraseña) en ninguna pagina, aunque sea tu equipo, si no ves el HTTPS por ningún lado.

Y por supuesto, también indicar que esto es solo con fines educativos.

 

Fuente: 1gbdeinfo

Leave a Reply

%d bloggers like this: