En las redes de computadoras , la suplantación de ARP , el envenenamiento de la caché ARP o el enrutamiento envenenado de ARP es una técnica mediante la cual un atacante envía ( falsificados ) mensajes del Protocolo de resolución de direcciones (ARP) a una red de área local . Generalmente, el objetivo es asociar la dirección MAC del atacante con la dirección IP de otro host , como la puerta de enlace predeterminada , haciendo que cualquier tráfico destinado a esa dirección IP se envíe al atacante.
La suplantación de ARP puede permitir a un atacante interceptar tramas de datos en una red, modificar el tráfico o detener todo el tráfico. A menudo, el ataque se utiliza como apertura para otros ataques, como ataques de denegación de servicio , hombre en el medio o secuestro de sesión . [1]
El ataque sólo se puede utilizar en redes que utilizan ARP y requiere que el atacante tenga acceso directo al segmento de la red local que se va a atacar. [2]
El Protocolo de resolución de direcciones (ARP) es un protocolo de comunicaciones ampliamente utilizado para resolver direcciones de capa de Internet en direcciones de capa de enlace .
Cuando se envía un datagrama de Protocolo de Internet (IP) de un host a otro en una red de área local , la dirección IP de destino debe resolverse en una dirección MAC para la transmisión a través de la capa de enlace de datos . Cuando se conoce la dirección IP de otro host y se necesita su dirección MAC, se envía un paquete de difusión a la red local. Este paquete se conoce como solicitud ARP . La máquina de destino con la IP en la solicitud ARP responde con una respuesta ARP que contiene la dirección MAC para esa IP. [2]
ARP es un protocolo sin estado . Los hosts de la red almacenarán en caché automáticamente cualquier respuesta ARP que reciban, independientemente de si los hosts de la red las solicitaron. Incluso las entradas ARP que aún no hayan caducado se sobrescribirán cuando se reciba un nuevo paquete de respuesta ARP. No existe ningún método en el protocolo ARP mediante el cual un host pueda autenticar al igual desde el cual se originó el paquete. Este comportamiento es la vulnerabilidad que permite que se produzca la suplantación de ARP. [1] [2] [3]
El principio básico detrás de la suplantación de ARP es explotar la falta de autenticación en el protocolo ARP enviando mensajes ARP falsificados a la LAN. Los ataques de suplantación de ARP se pueden ejecutar desde un host comprometido en la LAN o desde la máquina de un atacante que esté conectada directamente a la LAN de destino.
Un atacante que utilice la suplantación de ARP se disfrazará de host para la transmisión de datos en la red entre los usuarios. [4] Entonces los usuarios no sabrían que el atacante no es el verdadero host de la red. [4]
Generalmente, el objetivo del ataque es asociar la dirección MAC del host del atacante con la dirección IP de un host objetivo , de modo que cualquier tráfico destinado al host objetivo se envíe al host del atacante. El atacante puede optar por inspeccionar los paquetes (espionaje), mientras reenvía el tráfico al destino predeterminado real para evitar ser descubierto, modificar los datos antes de reenviarlos ( ataque de hombre en el medio ) o lanzar una denegación de servicio. ataque provocando que algunos o todos los paquetes de la red se eliminen.
La forma más sencilla de certificación es el uso de entradas estáticas de sólo lectura para servicios críticos en la caché ARP de un host. Las asignaciones de dirección IP a dirección MAC en la caché ARP local se pueden ingresar estáticamente. Los hosts no necesitan transmitir solicitudes ARP donde existen dichas entradas. [5] Si bien las entradas estáticas brindan cierta seguridad contra la suplantación de identidad, resultan en esfuerzos de mantenimiento, ya que se deben generar y distribuir asignaciones de direcciones para todos los sistemas en la red. Esto no se escala en una red grande ya que la asignación debe configurarse para cada par de máquinas, lo que da como resultado n 2 - n entradas ARP que deben configurarse cuando hay n máquinas presentes; En cada máquina debe haber una entrada ARP para todas las demás máquinas de la red; n-1 entradas ARP en cada una de las n máquinas.
El software que detecta la suplantación de ARP generalmente se basa en algún tipo de certificación o verificación cruzada de las respuestas de ARP. Luego se bloquean las respuestas ARP no certificadas. Estas técnicas se pueden integrar con el servidor DHCP para que se certifiquen direcciones IP tanto dinámicas como estáticas . Esta capacidad puede implementarse en hosts individuales o puede integrarse en conmutadores Ethernet u otros equipos de red. La existencia de múltiples direcciones IP asociadas con una única dirección MAC puede indicar un ataque de suplantación de ARP, aunque existen usos legítimos de dicha configuración. En un enfoque más pasivo, un dispositivo escucha las respuestas ARP en una red y envía una notificación por correo electrónico cuando cambia una entrada ARP. [6]
AntiARP [7] también proporciona prevención de suplantación de identidad basada en Windows a nivel del kernel. ArpStar es un módulo de Linux para kernel 2.6 y enrutadores Linksys que descarta paquetes no válidos que violan el mapeo y contiene una opción para volver a envenenar o reparar.
Algunos entornos virtualizados, como KVM, también proporcionan mecanismos de seguridad para evitar la suplantación de MAC entre invitados que se ejecutan en el mismo host. [8]
Además, algunos adaptadores Ethernet proporcionan funciones antisuplantación de identidad MAC y VLAN. [9]
OpenBSD observa pasivamente los hosts que se hacen pasar por el host local y notifica en caso de cualquier intento de sobrescribir una entrada permanente [10]
Los sistemas operativos reaccionan de manera diferente. Linux ignora las respuestas no solicitadas, pero, por otro lado, utiliza respuestas a solicitudes de otras máquinas para actualizar su caché. Solaris acepta actualizaciones de entradas sólo después de un tiempo de espera. En Microsoft Windows, el comportamiento de la caché ARP se puede configurar a través de varias entradas de registro en HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters, ArpCacheLife, ArpCacheMinReferenceLife, ArpUseEtherSNAP, ArpTRSingleRoute, ArpAlwaysSourceRoute, ArpRetryCount. [11]
Las técnicas que se utilizan en la suplantación de ARP también se pueden utilizar para implementar la redundancia de los servicios de red. Por ejemplo, algunos programas permiten que un servidor de respaldo emita una solicitud ARP gratuita para reemplazar un servidor defectuoso y ofrecer redundancia de manera transparente. [12] [13] Circle [14] y CUJO son dos empresas que han comercializado productos centrados en esta estrategia.
Los desarrolladores suelen utilizar la suplantación de ARP para depurar el tráfico IP entre dos hosts cuando se utiliza un conmutador: si el host A y el host B se comunican a través de un conmutador Ethernet, su tráfico normalmente sería invisible para un tercer host de monitoreo M. El desarrollador configura A debe tener la dirección MAC de M para B y B debe tener la dirección MAC de M para A; y también configura M para reenviar paquetes. M ahora puede monitorear el tráfico, exactamente como en un ataque de intermediario.
Algunas de las herramientas que se pueden utilizar para realizar ataques de suplantación de identidad ARP:
{{cite web}}
: Mantenimiento CS1: copia archivada como título ( enlace )