Con co­r­ta­fue­gos, se­r­vi­do­res proxy y zonas de­s­mi­li­ta­ri­za­das (DMZ), el equi­pa­mie­n­to en seguridad de las grandes empresas para pro­te­ge­r­se de los riesgos pro­ce­de­n­tes de Internet crece co­n­s­ta­n­te­me­n­te y, sin embargo, los ataques no siempre provienen del exterior. El talón de Aquiles de la cadena de seguridad es, con fre­cue­n­cia, la red local o LAN. Si un atacante ha co­n­se­gui­do in­fi­l­trar­se en la red interna, tiene ge­ne­ra­l­me­n­te todas las puertas abiertas para in­te­r­ce­p­tar el tráfico de datos y ma­ni­pu­lar­lo a su co­n­ve­nie­n­cia. Los hackers se be­ne­fi­cian en este caso de la alta vu­l­ne­ra­bi­li­dad que presenta el protocolo ARP (del inglés Address Re­so­lu­tion Protocol), usado en redes Ethernet basadas en IPv4 para resolver di­re­c­cio­nes IP en di­re­c­cio­nes MAC, situando a los ad­mi­ni­s­tra­do­res, hasta hoy, ante un im­po­r­ta­n­te problema para la seguridad.

Las tablas ARP, que contienen las di­re­c­cio­nes y sus equi­va­le­n­cias, se pueden manipular fá­ci­l­me­n­te mediante paquetes de datos fa­l­si­fi­ca­dos. Se puede hablar en este caso de ARP spoofing o en­ve­ne­na­mie­n­to de tablas ARP, un ataque man in the middle que permite a los hackers in­te­r­fe­rir entre dos sistemas sin ser vistos. Se­gui­da­me­n­te te mostramos cómo se puede manipular la re­so­lu­ción de di­re­c­cio­nes y pre­se­n­ta­mos algunas medidas de pro­te­c­ción contra estos ataques.

De­fi­ni­ción ARP Spoofing

Como ARP Spoofing se designa a los ataques man in the middle que tienen como objetivo las tablas ARP de redes locales. En este tipo de ataque, los ci­be­r­de­li­n­cue­n­tes envían paquetes ARP falsos con el fin de in­fli­r­tra­se en la co­mu­ni­ca­ción entre dos sistemas para espiar o manipular su tráfico de datos.

Tablas ARP y la re­so­lu­ción de di­re­c­cio­nes en la LAN

A di­fe­re­n­cia de como sucede en Internet, los di­s­po­si­ti­vos co­ne­c­ta­dos en una red local no se comunican di­re­c­ta­me­n­te con su dirección IP. En lugar de ello, para la re­so­lu­ción de di­re­c­cio­nes en redes IPv4 se utilizan di­re­c­cio­nes físicas de hardware, las de­no­mi­na­das di­re­c­cio­nes MAC (Media Access Control), co­n­si­s­te­n­tes en un código único de 48 bits que ide­n­ti­fi­ca la tarjeta de red de cada di­s­po­si­ti­vo en la red local de forma ine­quí­vo­ca.

Ejemplo de una dirección MAC: 00-80-41-ae-fd-7e

Las di­re­c­cio­nes MAC son co­n­ce­di­das por los fa­bri­ca­n­tes de hardware y son únicas a nivel global. En teoría, estas di­re­c­cio­nes físicas deberían poder resolver las di­re­c­cio­nes a nivel local, pero en la práctica no es factible, ya que las di­re­c­cio­nes IPv4 son demasiado cortas para poder re­pro­du­cir por completo las di­re­c­cio­nes MAC. Este es el motivo por el que, en las redes basadas en este protocolo,  se haga im­pre­s­ci­n­di­ble la re­so­lu­ción de di­re­c­cio­nes mediante ARP.

Para poder co­mu­ni­car­se con el ordenador B, el ordenador A necesita averiguar la dirección MAC asociada a su dirección IP. Es aquí donde in­te­r­vie­ne el protocolo de re­so­lu­ción de di­re­c­cio­nes o ARP, un protocolo de red que trabaja según el modelo petición-respuesta.

En la búsqueda de la dirección MAC co­rre­s­po­n­die­n­te, el ordenador A difunde una petición (ARP Request) en todos los di­s­po­si­ti­vos de la red que contiene la siguiente in­fo­r­ma­ción:

Un ordenador con la dirección MAC xx-xx-xx-xx-xx-xx y la dirección IP yyy.yyy.yyy.yyy quiere contactar con un ordenador con la dirección IP zzz.zzz.zzz.zzz y necesita su dirección MAC.

Para evitar tener que enviar una petición ARP cada vez que se envía un paquete de datos, todos los or­de­na­do­res en la red disponen de una tabla (caché ARP), donde se almacenan te­m­po­ra­l­me­n­te todas las di­re­c­cio­nes MAC conocidas in­clu­ye­n­do sus IP asociadas. Estos or­de­na­do­res, tras recibir la petición, anotan el par de di­re­c­cio­nes (IP y MAC) entregado junto a la petición, pero la respuesta con la dirección MAC solo puede darla uno de ellos, el ordenador B. Su respuesta podría ser algo así como:

Aquí el sistema con la dirección IP zzz.zzz.zzz.zzz. La dirección MAC so­li­ci­ta­da es aa-aa-aa-aa-aa-aa.

Cuando el ordenador A recibe esta respuesta (ARP Reply), ya dispone de toda la in­fo­r­ma­ción que necesita para enviar paquetes de datos al ordenador B. En este momento no hay nada que impida la co­mu­ni­ca­ción en la red local. Ahora bien, ¿qué pasaría si el que responde no es el ordenador esperado, sino un di­s­po­si­ti­vo co­n­tro­la­do por una persona externa con objetivos dudosos? Es aquí donde entra en juego el ARP spoofing.

¿Qué es el ARP spoofing?

Este patrón de petición y respuesta del protocolo de re­so­lu­ción de di­re­c­cio­nes está pro­gra­ma­do de tal manera que la primera respuesta a una petición es la que se acepta y se almacena. Cuando llevan a cabo una acción de ARP spoofing, la intención del hacker es la de ade­la­n­tar­se al propio ordenador de destino, enviar un paquete de respuesta con in­fo­r­ma­ción falsa y, de esta manera, manipular la tabla ARP del ordenador que hizo la petición, lo que hace que a este ataque se le denomine también ARP poisoning o en­ve­ne­na­mie­n­to de tablas de ARP. Por regla general, el paquete de datos de respuesta contiene la dirección MAC de un di­s­po­si­ti­vo de la red co­n­tro­la­do por el atacante. El sistema “engañado” asocia, de esta manera, la IP de salida con una dirección física falsa y en el futuro, sin saberlo, envía todos los paquetes de datos al sistema co­n­tro­la­do por el hacker, que desde ahora tiene la po­si­bi­li­dad de espiar, registrar o manipular el tráfico de datos por completo.

Para pe­r­ma­ne­cer en modo incógnito, el tráfico de datos se redirige ge­ne­ra­l­me­n­te al sistema de destino real. El atacante se sitúa, así, en una posición in­te­r­me­dia (man in the middle). Si no los reenviara, el ARP spoofing podría tener como co­n­se­cue­n­cia un Denial of Service (DoS).

El en­ve­ne­na­mie­n­to de tablas ARP no solo es posible en redes locales, sino también en redes in­alá­m­bri­cas o WLAN, en la cuales incluso el cifrado mediante clave WPA (Wi-Fi Protected Access) no ofrece ninguna pro­te­c­ción. Y es que, para poder co­mu­ni­car­se en redes locales con IPv4, todos los aparatos co­ne­c­ta­dos necesitan resolver las di­re­c­cio­nes MAC, algo que solo permite la re­so­lu­ción con tablas ARP.

Un software muy conocido que in­te­r­ce­p­ta pe­ti­cio­nes de difusión y envía re­s­pue­s­tas falsas es Cain&Abel. Pero para envenenar el caché ARP de los di­s­po­si­ti­vos de red, el atacante no tiene que esperar ne­ce­sa­ria­me­n­te a que lleguen pe­ti­cio­nes. Una es­tra­te­gia al­te­r­na­ti­va consiste en bo­m­ba­r­dear co­n­s­ta­n­te­me­n­te la red con re­s­pue­s­tas falsas, porque, aunque la mayoría de sistemas que no han emitido ninguna petición van a ignorar estas re­s­pue­s­tas, tan pronto un ordenador emite una petición está preparado, en co­n­se­cue­n­cia, para recibir una respuesta a su solicitud. Ahora la cuestión es cuál de las dos re­s­pue­s­tas llega antes, la verdadera o la falsa. Este patrón de ataque se puede au­to­ma­ti­zar con programas como Ettercap. A co­n­ti­nua­ción te mostramos una selección de los más conocidos.

Los programas de ARP spoofing más conocidos

En la red hay algunos programas que son uti­li­za­dos para llevar a cabo ataques de ARP spoofing y que están di­s­po­ni­bles para el público. Ge­ne­ra­l­me­n­te tratados como he­rra­mie­n­tas de seguridad, con su ayuda, los ad­mi­ni­s­tra­do­res pueden evaluar el estado de la propia red y ase­gu­rar­la contra los patrones de ataque más ha­bi­tua­les. Entre las apli­ca­cio­nes más conocidas se cuentan ARP0c/WCI, Arpoison, Cain&Abel, Dsniff, Ettercap, FaceNiff y NetCut.

  • ARP0c/WCI: según sus de­sa­rro­lla­do­res, esta es una he­rra­mie­n­ta que utiliza el en­ve­ne­na­mie­n­to de tablas ARP para in­te­r­ce­p­tar co­ne­xio­nes en una red local privada. Para ello, el software envía paquetes de respuesta fa­l­si­fi­ca­dos que derivan el tráfico de datos hacia el sistema donde está instalada la he­rra­mie­n­ta. Un bridging engine integrado se encarga del reenvío al sistema de destino real. Los paquetes no en­tre­ga­dos lo­ca­l­me­n­te son re­en­via­dos por el software al router co­rre­s­po­n­die­n­te, de forma que el ataque man in the middle pasa des­ape­r­ci­bi­do. El programa está di­s­po­ni­ble tanto para Linux como para Windows y se descarga de forma gratuita en la página del fa­bri­ca­n­te.
  • Arpoison: esta he­rra­mie­n­ta, utilizada en el marco del análisis de redes pero también como software de ataques de spoofing, genera paquetes ARP en los cuales el usuario puede definir li­bre­me­n­te la dirección remitente y de destino. Arpoison está li­bre­me­n­te di­s­po­ni­ble bajo licencia GNU.
  • Cain&Abel: de­sa­rro­lla­do como software de re­cu­pe­ra­ción de co­n­tra­se­ñas, Cain&Abel ofrece la po­si­bi­li­dad de in­te­r­ce­p­tar redes y descifrar co­n­tra­se­ñas. Desde la versión 2.5, el software también incluye funciones de spoofing con las cuales se puede capturar el tráfico de IP en redes locales. Las co­ne­xio­nes SSH y HTTPS tampoco suponen un gran obstáculo para este software. Desde la versión 4.0, también soporta el adaptador AirPcap, que permite la lectura pasiva del tráfico de datos en redes WLAN y desde la versión 4.9.1 es capaz de atacar redes in­alá­m­bri­cas pro­te­gi­das por WPA.
  • Dsniff: en este caso se trata de una colección de programas que incluye diversas he­rra­mie­n­tas para el análisis de redes y pruebas de pe­ne­tra­ción. Dsniff, Filesnarf, Mailsnarf, Msgsnarf, Urlsnarf y Webspy permiten in­te­r­ve­nir en redes e in­te­r­ce­p­tar archivos, correos ele­c­tró­ni­cos o co­n­tra­se­ñas. Arpspoof, Dnsspoof y Macof en­cue­n­tran datos no­r­ma­l­me­n­te no ac­ce­si­bles, mientras que los programas Sshmitm y Webmitm se utilizan para llevar a cabo ataques man in the middle en co­ne­xio­nes ase­gu­ra­das por SSH y por SSL/TLS.
  • Ettercap: este sencillo software, usado sobre todo para realizar ataques man in the middle, soporta diversas di­s­tri­bu­cio­nes Linux, así como Mac OS X (Snow Leopard & Lion). La in­s­ta­la­ción en Windows es posible aunque requiere ajustes extra. Los usuarios disponen, además de la consola, de ncurses frontend y de GTK2-GUI como interfaz gráfica. La he­rra­mie­n­ta permite au­to­ma­ti­zar acciones como sniffing, ataques de ARP y la re­co­le­c­ción de co­n­tra­se­ñas y es capaz de manipular datos in­te­r­ce­p­ta­dos y de atacar co­ne­xio­nes pro­te­gi­das por SSH o SSL. Ofi­cia­l­me­n­te se ofrece como software de seguridad y suele uti­li­zar­se en pruebas de productos.
  • FaceNiff: esta apli­ca­ción Android otorga la licencia de leer pa­si­va­me­n­te y controlar cookies de sesión en redes WLAN. Los atacantes la utilizan para hackear cuentas de Facebook, de Amazon o de Twitter, aun cuando la red in­alá­m­bri­ca esté protegida por WEP, WPA-PSK o WPA2-PSK. La única pro­te­c­ción fiable contra FaceNiff  la ofrecen el protocolo de au­te­n­ti­ca­ción EAP (Ex­te­n­si­ble Au­the­n­ti­ca­tion Protocol) y SSL. Este software se basa en la extensión de Firefox Firesheep y se utiliza en los sma­r­t­pho­nes Android en co­m­bi­na­ción con el browser pre­de­fi­ni­do (AOSP).
  • NetCut: con este software de gestión de redes, los we­b­ma­s­te­rs ad­mi­ni­s­tran su red sobre la base de ARP. La he­rra­mie­n­ta ide­n­ti­fi­ca a todos los di­s­po­si­ti­vos co­ne­c­ta­dos en la red y emite sus di­re­c­cio­nes MAC. Un simple clic en una de las di­re­c­cio­nes de la lista es su­fi­cie­n­te para de­s­co­ne­c­tar ese di­s­po­si­ti­vo de la red. Esto hace que este software se utilice para ataques DoS, siempre y cuando el atacante se encuentre en la misma red que su víctima. En cambio, no es posible llevar a cabo ataques man in the middle con esta he­rra­mie­n­ta.

ARP spoofing y cifrado de datos

En el momento en que un hacker logra in­fi­l­trar­se en el diálogo entre dos hosts y las co­ne­xio­nes están de­s­pro­te­gi­das, pasa a tener plena libertad de mo­vi­mie­n­to, ya que, en una conexión hackeada, toda la co­mu­ni­ca­ción discurre a través del sistema del atacante, el cual puede así espiar y manipular los datos a su co­n­ve­nie­n­cia. No obstante, las técnicas de cifrado y los ce­r­ti­fi­ca­dos de au­te­n­ti­ca­ción prometen un alto grado de pro­te­c­ción contra el espionaje de datos. En el caso de que un hacker in­te­r­ce­p­te datos cifrados, lo peor que puede ocurrir es una de­ne­ga­ción del servicio (Denial of service) porque los paquetes de datos no se entregan. Eso sí, una condición fu­n­da­me­n­tal para que el cifrado de datos funcione de forma fiable es aplicarlo de forma co­n­se­cue­n­te.

Numerosas he­rra­mie­n­tas uti­li­za­das en ataques man in the middle ofrecen, junto a funciones de spoofing, im­ple­me­n­ta­cio­nes de cifrado SSL/TLS, SSH, entre otros pro­to­co­los, tanto para cliente como para servidor, que las hace capaces incluso de imitar estos ce­r­ti­fi­ca­dos y de generar co­ne­xio­nes cifradas. Cain&Abel simula, por ejemplo, un servidor web capaz de encriptar con SSL, que emite al sistema atacado un ce­r­ti­fi­ca­do SSL falso. Y aunque los usuarios de la red reciben en este caso un aviso de seguridad, no lo suelen tomar en serio y lo ignoran o creen que es falso. Aquí cabría co­n­si­de­rar, a modo de inciso, que el manejo re­s­po­n­sa­ble de los ce­r­ti­fi­ca­dos digitales es un co­m­po­ne­n­te esencial de la seguridad en la red y sirve para formar co­n­se­cue­n­te­me­n­te a los usuarios.

Medidas de pro­te­c­ción frente al ARP spoofing

Al apro­ve­char­se del fu­n­cio­na­mie­n­to del protocolo de re­so­lu­ción de di­re­c­cio­nes, el en­ve­ne­na­mie­n­to de tablas ARP puede afectar, en principio, a todas las redes IPv4. Este problema tampoco lo ha podido resolver la in­tro­du­c­ción de la versión 6 del protocolo (IPv6). El nuevo estándar renuncia a las tablas ARP, pero regula la re­so­lu­ción de di­re­c­cio­nes en la LAN mediante el protocolo NDP (Neighbor Discovery Protocol), también propenso a ataques de spoofing. Esta vu­l­ne­ra­bi­li­dad solo se cubre con el protocolo Secure Neighbor Discovery (SEND), que solo soportan unos pocos sistemas ope­ra­ti­vos de es­cri­to­rio. Ante la ma­ni­pu­la­ción del caché ARP, los registros de ARP estáticos, que en Windows pueden cifrarse con el programa ARP (comando arp –s), re­pre­se­n­tan cierta pro­te­c­ción, pero al tener que rea­li­zar­los ma­nua­l­me­n­te, esta medida de pro­te­c­ción suele aplicarse solo a los sistemas más im­po­r­ta­n­tes de la red. Otra forma de pro­te­ge­r­se contra el abuso de tablas ARP consiste en su­b­di­vi­dir la red mediante co­n­mu­ta­do­res de capa 3, de forma que las pe­ti­cio­nes de difusión in­co­n­tro­la­das solo afectan a los sistemas dentro de un mismo segmento. Las que llegan a otros segmentos son exa­mi­na­dos por el co­n­mu­ta­dor. Si este trabaja a nivel de la red (capa 3), además de la MAC también compara la dirección IP con registros pre­ce­de­n­tes. Si se en­cue­n­tran in­co­n­grue­n­cias o reor­de­na­cio­nes fre­cue­n­tes, el co­n­mu­ta­dor hace saltar la alarma. Sin embargo, este hardware está ligado a altos costes de ad­qui­si­ción, por lo que los ad­mi­ni­s­tra­do­res se en­cue­n­tran a menudo ante la incómoda di­s­yu­n­ti­va de decidir si el aumento de la seguridad justifica el gasto fi­na­n­cie­ro. Los co­n­mu­ta­do­res de capa 2 tra­di­cio­na­les, mucho más ase­qui­bles, no son co­n­ve­nie­n­tes, porque, aun cuando son capaces de registrar un cambio de la dirección MAC, ignoran la dirección IP a la que co­rre­s­po­n­de. Muchos fa­bri­ca­n­tes ofrecen programas de mo­ni­to­ri­za­ción con los cuales se pueden su­pe­r­vi­sar redes y detectar procesos lla­ma­ti­vos. Las he­rra­mie­n­tas más conocidas son los programas de código abierto Arpwatch, ARP-Guard y XArp. También es posible utilizar sistemas de detección de intrusos como Snort para su­pe­r­vi­sar la re­so­lu­ción de dirección vía ARP.

  • Arpwatch: integrada en una red local IPv4, esta he­rra­mie­n­ta in­de­pe­n­die­n­te de la pla­ta­fo­r­ma registra todas las ac­ti­vi­da­des de tipo ARP en la LAN. El programa extrae las di­re­c­cio­nes de todos los paquetes ARP entrantes y las guarda en una base de datos central. Si se detectan registros antiguos que no coinciden con los datos actuales, se envía un correo de aviso al ad­mi­ni­s­tra­dor. Aunque este sistema es efectivo, solo es adecuado para redes con di­re­c­cio­nes IP estáticas. Si las IP en una LAN son di­s­tri­bui­das de forma dinámica con un servidor DHCP, cada cambio en la asi­g­na­ción de IP/MAC genera una alarma.
  • ARP-Guard: ARP-Guard, de­sa­rro­lla­do por la empresa alemana ISL, se apoya en dos sensores di­fe­re­n­tes para llevar a cabo la su­pe­r­vi­sión de la red interna. El sensor LAN, de forma similar a Arpwatch, analiza los paquetes de datos entrantes y dispara la alarma en caso de di­s­co­r­da­n­cias. El sensor SNMP, por su parte, accede a los di­s­po­si­ti­vos co­ne­c­ta­dos en la LAN a través delSimple Network Ma­na­ge­me­nt Protocol (SNMP) y lee sus tablas ARP. De esta forma, no solo se pueden localizar y repeler ataques ARP, sino que la gestión de di­re­c­cio­nes integrada permite detectar di­s­po­si­ti­vos extraños e impedir su acceso a la red.
  • XArp: el software de XArp recurre a módulos activos y pasivos para proteger la red del ARP spoofing. Los pasivos analizan paquetes ARP enviados en la red y comparan las di­re­c­cio­nes tal y como están asociadas a registros más antiguos. Si se detectan in­co­n­grue­n­cias, salta la alarma. El mecanismo de control se apoya para ello en análisis es­ta­dí­s­ti­cos y comprueba el tráfico en la red a partir de varios patrones que, a juicio de los de­sa­rro­lla­do­res, ca­ra­c­te­ri­zan a los ataques de ARP. La se­n­si­bi­li­dad de estos filtros de tráfico se puede ajustar en varios niveles. Los módulos activos, por su parte, envían ellos mismos paquetes a la red para validar las tablas ARP de los di­s­po­si­ti­vos co­n­ta­c­ta­dos y su­mi­ni­s­trar­les datos válidos.

El  sistema de detección de intrusos (IDS) Snort también dispone de un pre­pro­ce­sa­dor Arpspoof integrado que permite su­pe­r­vi­sar el tráfico de datos en la red y elaborar ma­nua­l­me­n­te listas de co­m­pa­ra­ción, aunque conlleva mucho más trabajo y suelen uti­li­zar­se en la tra­n­si­ción a redes externas. Decidir si es rentable aplicarlo dentro de la LAN depende de cada caso en pa­r­ti­cu­lar. A nivel co­r­po­ra­ti­vo, esta medida suele en­co­n­trar­se con la oposición de los comités de empresa, porque el ad­mi­ni­s­tra­dor que supervisa la red con IDS tiene acceso al tráfico completo en la red y, de esta manera, también sobre todas las ac­ti­vi­da­des de los empleados de la empresa.

Ir al menú principal