El Principio Del ARP Spoofing Es Enviar Mensajes ARP Falsos

6
El principio del ARP Spoofing es enviar mensajes ARP falsos (falsificados, o spoofed) a la Ethernet. Normalmente la finalidad es asociar la dirección MAC del atacante con la dirección IP de otro nodo (el nodo atacado), como por ejemplo la puerta de enlace predeterminada (gateway). Cualquier tráfico dirigido a la dirección IP de ese nodo, será erróneamente enviado al atacante, en lugar de a su destino real. El atacante, puede entonces elegir, entre reenviar el tráfico a la puerta de enlace predeterminada real (ataque pasivo o escucha), o modificar los datos antes de reenviarlos (ataque activo). El atacante puede incluso lanzar un ataque de tipo DoS (Denegación de Servicio) contra una víctima, asociando una dirección MAC inexistente con la dirección IP de la puerta de enlace predeterminada de la víctima. El ataque de ARP Spoofing puede ser ejecutado desde una máquina controlada (el atacante ha conseguido previamente hacerse con el control de la misma: intrusión), o bien la máquina del atacante está conectada directamente a la LAN Ethernet. APLICACIÓN ARP es un protocolo de la capa 2 (enlace). Tanto los paquetes “ARP request” como los “ARP reply” pueden ser tráfico de difusión (broadcast ). Como tales, no están diseñados para proporcionar ninguna validación de identificación en la transacción. Aunque el ARP Spoofing se puede ejecutar en el transcurso de transacciones ARP, creando una condición de carrera , el uso más común es la distribución de respuestas ARP no solicitadas, que son almacenadas por los clientes en sus

description

El Principio Del ARP

Transcript of El Principio Del ARP Spoofing Es Enviar Mensajes ARP Falsos

El principio del ARP Spoofing es enviar mensajes ARP falsos (falsificados, o spoofed) a la Ethernet. Normalmente la finalidad es asociar la direccin MAC del atacante con la direccin IP de otro nodo (el nodo atacado), como por ejemplo la puerta de enlace predeterminada (gateway). Cualquier trfico dirigido a la direccin IP de ese nodo, ser errneamente enviado al atacante, en lugar de a su destino real. El atacante, puede entonces elegir, entre reenviar el trfico a la puerta de enlace predeterminada real (ataque pasivo o escucha), o modificar los datos antes de reenviarlos (ataque activo). El atacante puede incluso lanzar un ataque de tipo DoS (Denegacin de Servicio) contra una vctima, asociando una direccin MAC inexistente con la direccin IP de la puerta de enlace predeterminada de la vctima.El ataque de ARP Spoofing puede ser ejecutado desde una mquina controlada (el atacante ha conseguido previamente hacerse con el control de la misma: intrusin), o bien la mquina del atacante est conectada directamente a la LAN Ethernet.

APLICACINARP es un protocolo de la capa 2 (enlace). Tanto los paquetes ARP request como los ARP reply pueden ser trfico de difusin (broadcast). Como tales, no estn diseados para proporcionar ninguna validacin de identificacin en la transaccin.Aunque el ARP Spoofing se puede ejecutar en el transcurso de transacciones ARP, creando una condicin de carrera, el uso ms comn es la distribucin de respuestas ARP no solicitadas, que son almacenadas por los clientes en sus caches ARP, generando de esta manera el escenario ARP Cache Poison, o caches ARP envenenadas.

DEFENSASUn mtodo para prevenir el ARP Spoofing, es el uso de tablas ARP estticas, es decir aadir entradas estticas ARP, de forma que no existe cach dinmica, cada entrada de la tabla mapea una direccin MAC con su correspondiente direccin IP. Sin embargo, esta no es una solucin prctica, sobre todo en redes grandes, debido al enorme esfuerzo necesario para mantener las tablas ARP actualizadas: cada vez que se cambie la direccin IP de un equipo, es necesario actualizar todas las tablas de todos los equipos de la red.Por lo tanto, en redes grandes es preferible usar otro mtodo: el DHCP snooping. Mediante DHCP, el dispositivo de red mantiene un registro de las direcciones MAC que estn conectadas a cada puerto, de modo que rpidamente detecta si se recibe una suplantacin ARP. Este mtodo es implementado en el equipamiento de red de fabricantes como Cisco, Extreme Networks y Allied Telesis.Otra forma de defenderse contra el ARP Spoofing, es detectarlo. Arpwatch es un programa Unix que escucha respuestas ARP en la red, y enva una notificacin va correo electrnico al administrador de la red, cuando una entrada ARP cambia.Comprobar la existencia de direcciones MAC clonadas (correspondientes a distintas direcciones IP) puede ser tambin un indicio de la presencia de ARP Spoofing, aunque hay que tener en cuenta, que hay usos legtimos de la clonacin de direcciones MAC.RARP (Reverse ARP, o ARP inverso) es el protocolo usado para consultar, a partir de una direccin MAC, su direccin IP correspondiente. Si ante una consulta, RARP devuelve ms de una direccin IP, significa que esa direccin MAC ha sido clonada.

El ARP Spoofing puede ser usado tambin con fines legtimos. Por ejemplo, algunas herramientas de registro de red, pueden redireccionar equipos no registrados a una pgina de registro antes de permitirles el acceso completo a la red.Otra implementacin legtima de ARP Spoofing, se usa en hoteles para permitir el acceso a Internet, a los porttiles de los clientes desde sus habitaciones, usando un dispositivo conocido como HEP (Head-End Processor o Procesador de Cabecera), sin tener en cuenta su direccin IP.El ARP Spoofing puede ser usado tambin para implementar redundancia de servicios de red. Un servidor de backup puede usar ARP Spoofing para sustituir a otro servidor que falla, y de esta manera ofrecer redundancia de forma transparente.

Por spoofing se conoce a la creacin de tramas TCP/IP utilizando una direccin IP falseada; la idea de este ataque - al menos la idea - es muy sencilla: desde su equipo, un pirata simula la identidad de otra mquina de la red para conseguir acceso a recursos de un tercer sistema que ha establecido algn tipo de confianza basada en el nombre o la direccin IP del host suplantado. Y como los anillos de confianza basados en estas caractersticas tan fcilmente falsificables son an demasiado abundantes (no tenemos ms que pensar en los comandos r-, los accesos NFS, o la proteccin de servicios de red mediante TCP Wrapper), el spoofing sigue siendo en la actualidad un ataque no trivial, pero factible contra cualquier tipo de organizacin.

Como hemos visto, en el spoofing entran en juego tres mquinas: un atacante, un atacado, y un sistema suplantado que tiene cierta relacin con el atacado; para que el pirata pueda conseguir su objetivo necesita por un lado establecer una comunicacin falseada con su objetivo, y por otro evitar que el equipo suplantado interfiera en el ataque

Probablemente esto ltimo no le sea muy difcil de conseguir: a pesar de que existen mltiples formas de dejar fuera de juego al sistema suplantado - al menos a los ojos del atacado - que no son triviales (modificar rutas de red, ubicar un filtrado de paquetes entre ambos sistemas...), lo ms fcil en la mayora de ocasiones es simplemente lanzar una negacin de servicio contra el sistema en cuestin.

Aunque en el punto siguiente hablaremos con ms detalle de estos ataques, no suele ser difcil de tumbar, o al menos bloquear parcialmente, un sistema medio; si a pesar de todo el atacante no lo consigue, simplemente puede esperar a que desconecten de la red a la mquina a la que desea suplantar (por ejemplo, por cuestiones de puro mantenimiento).

El otro punto importante del ataque, la comunicacin falseada entre dos equipos, no es tan inmediato como el anterior y es donde reside la principal dificultad del spoofing. En un escenario tpico del ataque, un pirata enva una trama SYN a su objetivo indicando como direccin origen la de esa tercera mquina que est fuera de servicio y que mantiene algn tipo de relacin de confianza con la atacada. El host objetivo responde con un SYN+ACK a la tercera mquina, que simplemente lo ignorar por estar fuera de servicio (si no lo hiciera, la conexin se reseteara y el ataque no sera posible), y el atacante enviar ahora una trama ACK a su objetivo, tambin con la direccin origen de la tercera mquina.

Para que la conexin llegue a establecerse, esta ltima trama deber enviarse con el nmero de secuencia adecuado; el pirata ha de predecir correctamente este nmero: si no lo hace, la trama ser descartada), y si lo consigue la conexin se establecer y podr comenzar a enviar datos a su objetivo, generalmente para tratar de insertar una puerta trasera que permita una conexin normal entre las dos mquinas.

Podemos comprobar que el spoofing no es inmediato; de entrada, el atacante ha de hacerse una idea de cmo son generados e incrementados los nmeros de secuencia TCP, y una vez que lo sepa ha de conseguir engaar a su objetivo utilizando estos nmeros para establecer la comunicacin; cuanto ms robusta sea esta generacin por parte del objetivo, ms difcil lo tendr el pirata para realizar el ataque con xito.

Adems, es necesario recordar que el spoofing es un ataque ciego: el atacante no ve en ningn momento las respuestas que emite su objetivo, ya que estas van dirigidas a la mquina que previamente ha sido deshabilitada, por lo que debe presuponer qu est sucediendo en cada momento y responder de forma adecuada en base a esas suposiciones.

Sera imposible tratar con el detenimiento que merecen todos los detalles relativos al spoofing por lo que para obtener informacin adicional es necesario dirigirse a excelentes artculos que estudian todos los pormenores del ataque, como o ; de la misma forma, para conocer con detalle el funcionamiento del protocolo TCP/IP y sus problemas podemos consultar , , y .

Para evitar ataques de spoofing exitosos contra nuestros sistemas podemos tomar diferentes medidas preventivas; en primer lugar, parece evidente que una gran ayuda es reforzar la secuencia de prediccin de nmeros de secuencia TCP: un esquema de generacin robusto puede ser el basado en , que la mayora de Unix son capaces de implantar (aunque muchos de ellos no lo hagan por defecto). Otra medida sencilla es eliminar las relaciones de confianza basadas en la direccin IP o el nombre de las mquinas, sustituyndolas por relaciones basadas en claves criptogrficas; el cifrado y el filtrado de las conexiones que pueden aceptar nuestras mquinas tambin son unas medidas de seguridad importantes de cara a evitar el spoofing.

Hasta ahora hemos hablado del ataque genrico contra un host denominado spoofing o, para ser ms exactos, IP Spoofing; existen otros ataques de falseamiento relacionados en mayor o menor medida con este, entre los que destacan el DNS Spoofing, el ARP Spoofing y el Web Spoofing .Para finalizar este punto, vamos a comentarlos brevemente e indicar algunas lecturas donde se puede ampliar informacin sobre los mismos: DNS SpoofingEste ataque hace referencia al falseamiento de una direccin IP ante una consulta de resolucin de nombre (esto es, resolver con una direccin falsa un cierto nombre DNS), o viceversa (resolver con un nombre falso una cierta direccin IP). Esto se puede conseguir de diferentes formas, desde modificando las entradas del servidor encargado de resolver una cierta peticin para falsear las relaciones direccin-nombre, hasta comprometiendo un servidor que infecte la cach de otro (lo que se conoce como DNS Poisoning); incluso sin acceso a un servidor DNS real, un atacante puede enviar datos falseados como respuesta a una peticin de su vctima sin ms que averiguar los nmeros de secuencia correctos. ARP SpoofingEl ataque denominado ARP Spoofing hace referencia a la construccin de tramas de solicitud y respuesta ARP falseadas, de forma que en una red local se puede forzar a una determinada mquina a que enve los paquetes a un host atacante en lugar de hacerlo a su destino legtimo.La idea es sencilla, y los efectos del ataque pueden ser muy negativos: desde negaciones de servicio hasta interceptacin de datos, incluyendo algunos Man in the Middle contra ciertos protocolos cifrados. En podemos obtener ms informacin acerca de este ataque, as como cdigo fuente para enviar tramas falseadas y comprobar los efectos del ARP Spoofing en nuestra red. Web SpoofingEste ataque permite a un pirata visualizar y modificar cualquier pgina web que su vctima solicite a travs de un navegador, incluyendo las conexiones seguras va SSL.Para ello, mediante cdigo malicioso un atacante crea una ventana del navegador correspondiente, de apariencia inofensiva, en la mquina de su vctima; a partir de ah, enruta todas las pginas dirigidas al equipo atacado - incluyendo las cargadas en nuevas ventanas del navegador - a travs de su propia mquina, donde son modificadas para que cualquier evento generado por el cliente sea registrado (esto implica registrar cualquier dato introducido en un formulario, cualquier click en un enlace, etc.). Para obtener ms informacin acerca del Web Spoofing podemos consultarEdward W. Felten, Dirk Balfanz, Drew Dean, and Dan S. Wallach. Web Spoofing: an Internet Con Game. Technical Report 540-96, Princeton University Department of Computer Science, 1996. Revisado en febrero de 1997.