Saltar al contenido

Los ataques ARP Poisoning, también conocidos como ARP Spoofing, son una de las formas más peligrosas y conocidas del ataque Man in the Middle en redes cableadas e inalámbricas. Si un ciberdelincuente lleva a cabo este ataque de manera exitosa, podrá interceptar todas las comunicaciones entre la víctima y su conexión a Internet. Además, utilizando técnicas más avanzadas, incluso podría modificar el tráfico en tiempo real e incluso comprometer la seguridad del protocolo HTTPS, convirtiéndolo en HTTP y violando nuestra seguridad. En este artículo, explicaremos qué implica un ataque ARP Poisoning, cómo se puede llevar a cabo utilizando la distribución Kali Linux y cómo podemos protegernos de este tipo de ataque de red.

¿Qué es el protocolo ARP?

El Protocolo ARP (Address Resolution Protocol) es uno de los protocolos fundamentales en redes IPv4. Sin este protocolo, no sería posible obtener una dirección IP a través de DHCP ni comunicarse con otros dispositivos, aunque se haya asignado una dirección IP privada al propio equipo. El protocolo ARP permite que las comunicaciones en la red lleguen a su destino correctamente al traducir las direcciones IP (direcciones lógicas) en direcciones MAC (direcciones físicas) y viceversa. Su función principal es crear una tabla de parejas IP-MAC para permitir que los equipos de una red local se comuniquen entre sí sin problemas. También se encarga de permitir que los equipos se comuniquen con el enrutador para acceder a Internet, ya que el enrutador también tiene una dirección IP de la LAN y una dirección MAC a la que los diferentes dispositivos envían sus tramas para su gestión.

Es importante tener en cuenta que el Protocolo ARP solo existe en redes IPv4. En las redes IPv6, esta función es realizada por el ICMPv6, que tiene más características que el protocolo en IPv4. Uno puede ver la tabla ARP de su propio equipo para conocer los dispositivos con los que actualmente se está comunicando. Si se abre una consola y se ejecuta el comando correspondiente, se mostrarán las direcciones IP privadas (direcciones de Internet) y las direcciones MAC de los dispositivos. La tabla ARP puede mostrar las diferentes tarjetas de red y se pueden agregar o eliminar manualmente las parejas IP-MAC de esta tabla.

Todos los equipos mantienen una tabla ARP en caché, lo que significa que se actualiza temporalmente o a medida que aparecen nuevos equipos para los que se desea establecer una comunicación. Por lo tanto, esta es una tabla dinámica que cambia según las comunicaciones que se realizarán. Si un equipo no conoce la dirección MAC de una dirección IP específica, deberá enviar una solicitud ARP a otros equipos para obtener la dirección MAC correspondiente.

Uno de los elementos más importantes de la tabla ARP es la entrada del enrutador, que generalmente es la primera dirección IP de la subred. Los ataques ARP Poisoning se centran en esta entrada en particular, y explicaremos por qué. El Protocolo ARP no fue diseñado con el objetivo de ser seguro, por lo que no verifica si la respuesta a una solicitud ARP realmente proviene de un host legítimo. Esto significa que cualquier persona puede hacerse pasar por otro host de manera fácil y rápida al llevar a cabo un ataque ARP Poisoning.

¿En qué consiste el ataque ARP Poisoning?

El ataque ARP Poisoning implica envenenar la tabla ARP de una víctima, haciéndole creer que el enrutador es el atacante. Esto tiene como objetivo hacer que la víctima redirija todo su tráfico hacia el atacante, permitiéndole realizar un «sniffing» de todas las conexiones realizadas. De esta manera, el dispositivo víctima podría enviar todo su tráfico de red al atacante sin ser consciente de ello, lo que abre la puerta a dos tipos de ataques diferentes:

  • Ataque de Denegación de Servicio (DoS): Si el atacante no redirige las conexiones hacia el enrutador para acceder a Internet, la víctima quedará sin conexión a Internet.
  • Ataque Man in the Middle (MitM): Si el atacante redirige las conexiones hacia el enrutador para acceder a Internet, realizará un ataque MitM, lo que significa que podrá obtener todo el tráfico de red de la víctima para su posterior análisis. Además, el atacante podría modificar la información transmitida o recibida por la víctima. Uno de los ataques más peligrosos es el «SSL Stripping», que permite al atacante eliminar la seguridad del tráfico HTTPS convirtiéndolo en HTTP y espiar todas las comunicaciones. El atacante puede continuar redirigiendo todas las comunicaciones y obtener toda la información. También puede robar las cookies de la víctima y suplantar su identidad sin necesidad de robar las credenciales de inicio de sesión.
  • Secuestro de sesiones: Se utiliza para robar los identificadores de sesión, lo que garantiza el acceso a los atacantes y a los sistemas que utilizan.

Para llevar a cabo un ataque de Envenenamiento ARP, se requiere cumplir con ciertos requisitos:

  • El agresor debe estar en la misma red que la víctima, ya sea una red cableada o una red WiFi.
  • Es necesario escanear toda la red local en busca de la dirección IP de la víctima, para luego realizar el ataque.
  • El agresor debe utilizar herramientas especializadas, como Arpspoof o BetterCap, para crear un paquete ARP falso y enviarlo a la víctima. RedesZone ofrece un completo tutorial sobre el uso de BetterCap.
  • Una vez que se envían los paquetes ARP falsos a la víctima, esta creerá que el agresor es el enrutador. Sin embargo, para lograr una comunicación bidireccional, también es necesario hacer que el enrutador crea que el agresor es la víctima. Por lo tanto, se deben lanzar dos ataques de Envenenamiento ARP, uno hacia la víctima y otro hacia el enrutador.

Una vez que tanto la víctima como el enrutador hayan recibido los paquetes ARP falsos, comenzarán a comunicarse directamente con el agresor en lugar de hacerlo entre ellos, lo que permite al agresor interferir en la comunicación.

Pasos más comunes en los ataques de Envenenamiento ARP

Este tipo de ataques tienden a seguir una estructura similar, lo cual facilita su identificación.

  • El agresor utiliza una herramienta de Envenenamiento ARP y selecciona una dirección IP.
  • Se realiza un escaneo de las direcciones MAC e IP correspondientes al host objetivo en la red.
  • Se elige el destino y se envían los paquetes maliciosos que contienen las direcciones previamente seleccionadas.
  • Los paquetes suplantan o falsifican la identidad del equipo objetivo y alteran los datos para redirigir el ataque.
  • Se lleva a cabo el robo de datos o el envío de paquetes de seguimiento.

Este ataque se basa en la manipulación de la tabla ARP de una red. La tabla ARP se utiliza para traducir direcciones MAC a direcciones IP, permitiendo la comunicación entre dispositivos de red.

En un ataque de Envenenamiento ARP, el agresor envía mensajes ARP falsos a los dispositivos de la red. Estos mensajes ARP falsos contienen información engañosa que hace que los dispositivos de la red asocien la dirección MAC del agresor con la dirección IP de otro dispositivo en la red, como el enrutador o el servidor. Una vez que la tabla ARP de un dispositivo ha sido comprometida, todo el tráfico destinado a la dirección IP del dispositivo comprometido es redirigido hacia el agresor. El agresor puede entonces examinar, manipular o bloquear el tráfico dirigido a la víctima.

Este ataque consta de dos etapas: la etapa de envenenamiento y la etapa de escucha. En la etapa de envenenamiento, el agresor envía paquetes ARP falsificados a los dispositivos de la red. Estos paquetes falsificados contienen una dirección MAC falsa que se asocia con una dirección IP válida de otro dispositivo en la red. De este modo, cuando un dispositivo intenta comunicarse con el dispositivo asociado a esa dirección IP, envía los paquetes a la dirección MAC del agresor en lugar del dispositivo real.

En la etapa de escucha, el agresor intercepta el tráfico que fluye entre los dispositivos. El agresor puede examinar el tráfico en busca de información confidencial, como credenciales de inicio de sesión o información financiera. También puede manipular el tráfico para lograr sus objetivos, como bloquear el acceso a recursos en línea o redirigir el tráfico a sitios web falsos para robar información. Cada agresor puede ajustar las variables del ataque según sus propios objetivos.

Cómo llevar a cabo un ataque de Envenenamiento ARP con Kali Linux

En primer lugar, debemos buscar la sección «9. Sniffing y Spoofing» en la lista de aplicaciones, ya que es allí donde se encuentran las herramientas necesarias para este tipo de ataque informático. A continuación, abrimos «Ettercap-graphical» y aparecerá una ventana similar a la siguiente.

Después, debemos introducir la contraseña de superusuario, es decir, la clave «root», que por defecto es «kali».

El siguiente paso consiste en seleccionar los parámetros básicos de Ettercap. Podemos dejar los parámetros por defecto y comenzar el sniffing al inicio. También debemos seleccionar la tarjeta de red que queramos utilizar (por defecto es eth0). El resto de opciones las dejamos sin cambios y pulsamos el botón de aceptar en la parte superior derecha para confirmar los ajustes.

Una vez que hayamos iniciado el programa, debemos hacer clic en la «lupa» que se encuentra en la parte superior izquierda. Esto permitirá a Ettercap explorar toda la red local a la que estamos conectados para encontrar dispositivos conectados y posibles víctimas para nuestro ataque.

Aquí se mostrarán todos los hosts o dispositivos conectados a nuestra red. En caso de que no aparezcan todos, podremos realizar una exploración completa de la red haciendo clic nuevamente en la «lupa» de la parte superior izquierda. Después de unos segundos, la lista se actualizará y mostrará todos los dispositivos, junto con sus respectivas direcciones IP y direcciones MAC, conectados a nuestra red.

Si deseamos realizar un ataque dirigido a un único host, como suplantar la identidad de la puerta de enlace para monitorear las conexiones de una víctima específica que aparece en la lista de dispositivos, debemos establecer los dos objetivos antes de comenzar el ataque.

Para hacer esto, debajo de la lista de hosts se encuentran tres botones, prestaremos atención a los dos últimos:

  • Objetivo 1 – Seleccionamos la dirección IP del dispositivo que queremos monitorear, en este caso, la víctima, y pulsamos el botón correspondiente.
  • Objetivo 2 – Hacemos clic en la dirección IP que deseamos suplantar, en este caso, la de la puerta de enlace.

Todo está listo. Ahora solo debemos seleccionar el menú «MITM» en la parte superior y elegir la opción «ARP Poisoning».

Al abrir la configuración, encontraremos una ventana pequeña donde debemos asegurarnos de marcar la opción «Sniff Remote Connections». Es importante dejar desmarcada la opción «only poison one-way», ya que esto nos permitirá realizar el ARP Poisoning en ambas direcciones y tener comunicación bidireccional. Es esencial no modificar la configuración predeterminada y dejar la opción «only poison one-way» desmarcada.

Una vez realizados los ajustes, pulsamos «Ok» para llevar a cabo el ataque. Ahora tendremos control sobre el host seleccionado como «Target 1».

A continuación, podemos utilizar herramientas como Wireshark para capturar todos los paquetes de red y analizarlos en busca de información relevante, o aprovechar los diferentes complementos que ofrece Ettercap, como el navegador web remoto que carga todas las páginas web visitadas por el objetivo. Por ejemplo, hemos realizado un ping a Google y el equipo atacante ha capturado todos los datos correctamente.

Es importante recordar que estas técnicas solo deben utilizarse en redes privadas propias o en redes donde tengamos permiso legal. El uso de estas técnicas para monitorear los sistemas de otras personas constituye un delito.

Una vez que hemos aprendido cómo realizar este ataque de manera fácil y rápida con Kali Linux, es importante entender cómo podemos mitigarlo.

Detección y mitigación de este ataque para una navegación segura

Este tipo de ataque a las redes de datos es muy común y está al alcance de cualquiera, por lo que es crucial saber detectar si estamos siendo víctimas de él y cómo mitigar este ataque para evitar su éxito. En muchos casos, la única opción será cifrar todas nuestras comunicaciones para que, aunque logren capturar la información, no puedan acceder a su contenido. A continuación, se detallan los pasos para detectar y mitigar este ataque.

Medidas de prevención

Actualmente existen varios métodos que pueden ayudar a prevenir este tipo de ataques. Estos métodos pueden complementarse entre sí y se pueden utilizar en conjunto. Algunas opciones son:

  • Filtrado de paquetes: Esta medida consiste en inspeccionar y bloquear los paquetes que se transmiten a través de una red específica. Es muy útil contra el ARP, ya que permite filtrar y bloquear paquetes que contengan información de una fuente de conflicto.
  • Software de detección: En el mercado existen programas diseñados para prevenir este tipo de ataques. Estos programas inspeccionan y certifican los datos antes de su transmisión. Si detectan algo peligroso, lo bloquean.
  • Uso de protocolos criptográficos: Estos protocolos refuerzan la seguridad al prevenir ataques de este tipo. Utilizan el cifrado de datos antes de la transmisión y verifican la autenticidad al recibirlos. Algunos ejemplos son TLS, SSH, HTTPS, entre otros.

Cómo prevenir la suplantación de ARP

Existen medidas que se pueden tomar para intentar prevenir este tipo de suplantación. Si bien no son infalibles, dificultarán en gran medida cualquier intento de ataque.

  • Monitorización: Existen numerosas herramientas en Internet que facilitan la monitorización y detección de posibles problemas en la red. Muchas de estas herramientas son gratuitas, incluso de código abierto. Es recomendable utilizar una aplicación que permita tener control sobre toda la actividad del tráfico de Ethernet. Esto proporcionará una visión general de los dispositivos conectados y ayudará a detectar intrusiones.
  • Dividir la red: Dividir la red en diferentes partes puede ser una medida efectiva para evitar que un ataque afecte a toda la red. De esta manera, solo se verá afectada una parte pequeña de la misma. Sin embargo, este tipo de configuraciones son más complejas y requieren más equipamiento, lo que implica una inversión económica adicional. Puede ser útil contar con un router adicional u otros dispositivos que permitan gestionar la seguridad.
  • Protocolos: Algunos protocolos pueden proporcionar una mayor seguridad. Un ejemplo de ello es Secure Neighbor Discovery, el cual es compatible con los sistemas operativos más conocidos. No obstante, en algunos casos puede resultar un poco complejo de implementar.
  • Otras medidas de protección: Siempre es recomendable mantener la red protegida en la medida de lo posible. Aunque siempre puede existir alguna brecha de seguridad, lo importante es asegurarse de que no esté en nuestras manos. Proteger la red implica proteger el router y todos los dispositivos que forman parte de ella. Una de las mejores prácticas consiste en mantener todos los dispositivos actualizados.

¿Cómo detectar un ataque de suplantación de ARP?

La forma más sencilla de detectar un ataque de ARP Poisoning o ARP Spoofing es comprobar la tabla ARP. Mediante el comando «arp -a» se puede visualizar la tabla ARP completa del dispositivo. Si se observa que dos direcciones IP tienen la misma dirección MAC física, significa que alguien está realizando un ataque Man in the Middle con ARP Poisoning. Por ejemplo, si se tiene la siguiente tabla ARP:

192.168.1.1 00-01-02-03-04-05
192.168.1.2 00-01-02-03-04-AA
192.168.1.3 00-01-02-03-04-05

En este caso, se puede ver claramente que el router y el segundo PC tienen la misma dirección MAC. Esto indica que la tabla ARP ha sido envenenada. Existen programas de seguridad que permiten detectar automáticamente si se está siendo víctima de este tipo de ataques. Estos programas revisan constantemente la tabla ARP en busca de direcciones MAC duplicadas y envían alertas al usuario en caso de detectar alguna.

Medidas para mitigar este tipo de ataque

Para mitigar este tipo de ataque, los usuarios pueden utilizar una VPN, lo cual garantizará la confidencialidad y autenticidad de todas las conexiones. Se debe tener en cuenta que, en ciertos casos, las conexiones HTTPS también son vulnerables a técnicas como el SSL Stripping. Por lo tanto, se recomienda el uso de VPNs basadas en protocolos como IPsec, OpenVPN o WireGuard, ya que brindan seguridad y privacidad en la red.

Otra medida que los usuarios pueden tomar es agregar una entrada estática en la tabla ARP. Sin embargo, esto solo funciona si se conectan siempre a las mismas redes. En caso contrario, sería necesario agregar y eliminar constantemente entradas ARP, lo cual resulta incómodo. Para equipos estáticos como computadoras de escritorio, esta opción puede ser viable, pero a nivel de red es mejor dejarlo en manos del administrador.

En el caso de los administradores de la red, en la actualidad, los switches y routers/firewalls tienen herramientas para prevenir el ARP-spoofing. Al activar estas medidas de seguridad, se evita que un atacante pueda atacar a otros usuarios dentro de la red, lo cual es una característica crucial para proteger a los propios usuarios. Otra medida que podemos emplear es activar el DHCP Snooping, que impide que un atacante configure su propio servidor DHCP para asignar direcciones IP a una víctima o a varias.

Finalmente, una vez hayamos implementado estas medidas de mitigación, recomendamos encarecidamente que se realicen pruebas de este tipo de ataques para verificar la efectividad de las defensas. Es decir, es sumamente importante que se compruebe la seguridad propia.

Artículos relacionados