jueves, 30 de junio de 2022

ARP y HTTP = MITM

Hace unas semanas daba una clase de redes donde explicaba que es internet y cómo es que llega una pagina a nuestras pantallas, luego de un rato explicando todo el tema de los protocolos de red, TCP, UDP, HTTP, SSL/TSL, DNS, modelos cliente - servidor, etc.

Logre darme de cuenta que algunos estaban un poco perdido, y ciertamente el temas de redes no es muy sencillo de echo me causo dolores de cabeza cuando estaba aprendiendolo, así que para ilustrarlo un poco me quise ir por mi area y propuce hacer una demo de un ataque Man-In-The-Middle.

La idea era sencilla, montar dos maquinas virtuales, por un lado Ubuntu como maquina atacante y como no podia ser de otra forma, una maquina con Windows como Host victima, luego de eso configurar las maquinas en un entorno seguro, basicamente era envenenar las tablas ARP del Gateway  y del host victima con tecnicas ARP Spoofing, configurar Ubuntu como Gateway para que no ubiera interrupción en la comunicación y así poder capturar todo el trafico HTTP, importante hasta el momento sólo trafico HTTP, lo interesante es que durante el ataque MITM, podemos hacer un modelo de ataque DOS, y así dejar a la victima sin internet, esto seria util en el caso que fuera un intruso que merodea en nuestra red.

Antes de comenzar explique a profundidad el protocolo ARP, en Linux podemos ver la tabla ARP con el comando:

$ arp -e

Nos debe dar una respuesta parecida a esto:

 


Comence usando Nmap para la busqueda de host en la red, esto lo podemos hacer con el comando:

$ nmap -sn 192.168.1.0/24

Con el atributo -sn  le estamos diciendo que vamos a hacer busqueda de host en la red, y 192.168.1.0/24 es el rango de IP que vamos a manejar, esto nos debe responder una respuesta parecida a esto:

 

Llegados a este punto lo consiguiente seria elegir una victima en mi caso el 192.168.1.3, ahora practicaremos un modelo de DOS o un poco más conocido como denegacion de servicio, ejecutaremos un tools llamada arpspoof para esto debemos instalar el paquete dsniff:

$ sudo apt install dsniff -y

Eso deberia bastar para poder utilizar esa utilidad, haremos ahora un ARP Spoofing al host victima para que redirija los paquetes a nuestra terminal y así dejarlo sin internet:

$ sudo arpspoof -i wlp1s0 -t 192.168.1.3 192.168.1.1


 

Con el parametro -i  le indicamos la interfaz de red que vamos a usar en nuestro caso wlp1s0, con el parametro -t  indicamos a quien vamos a cambiar la MAC en este caso, va a cambiar la MAC del Gateway: 192.168.1.1 que tiene guardada la victima: 192.168.1.3, y con esto estariamos practicando una denegacion de servicio.

Siguiendo con el MITM habilitaremos nuestra terminal como Gateway para que la conexion entre la victima y el gateway sea exitosa:

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

Y ahora repetiremos el comando que utilizamos para el DOS pero con un leve cambio:

$ sudo arpspoof -i wlp1s0 -t 192.168.1.1 192.168.1.3

Solo cambiamos el orden de las ip, pero esto va a permitirnos interceptar no solo las peticones que haga la victima, tambien las respuestas que le de el servidor.

Para finalizar con una Sniphing de red como Wireshark podemos ver todo el trafico HTTP que se genera:


 

Importante solo trafico HTTP, si contamos con suerte seremos capaces de obtener las credenciales en texto plano de algun sitio sin sertificado STL, de hay la importancia de este.


No hay comentarios:

Publicar un comentario

Guillermo

Confusión de dependencia: cómo pirateé Apple, Microsoft y PayPal.

La historia de un nuevo ataque a la cadena de suministros.    Desde que comencé a aprender a codificar, me ha fascinado el nivel de confianz...