Resolver Problemas Consiga ayuda para problemas específicos con sus proyectos, procesos y tecnologías.

Cómo evitar fugas de tráfico VPN en redes de doble pila

En este consejo vamos a discutir cómo surgen los problemas de seguridad de VPN y las diversas opciones de mitigación disponibles para contenerlas.

El inminente agotamiento de las direcciones IPv4 disponibles libremente, a lo largo de varios años, llevó a la incorporación de la compatibilidad con IPv6 en la mayoría de los sistemas operativos de propósito general. Sin embargo, muchas aplicaciones, tales como el cliente VPN y el software de servidor, se han retrasado en su preparación para ser compatibles con IPv6. Esto da lugar a situaciones en las que hosts de doble pila (dual-stack) emplean software VPN no preparado para IPv6, abriendo así la puerta a  vulnerabilidades de seguridad, como las fugas de tráfico VPN.

En este consejo, vamos a discutir cómo surgen estos problemas de seguridad de VPN y las diversas opciones de mitigación disponibles para contener las fugas de tráfico VPN.

¿Qué es el riesgo de fugas de VPN?

Los empleados que trabajan desde ubicaciones remotas comúnmente establecen conexiones de red privada virtual (VPN) para acceder a los servicios que sólo están disponibles en la red de una empresa y asegurar el tráfico correspondiente que de otra forma debe atravesar redes inseguras. En algunos escenarios, se supone que el empleo de una conexión VPN hace permisible el uso de protocolos inseguros (por ejemplo, la transferencia de información sensible en claro), ya que la VPN proporciona servicios de seguridad, como la confidencialidad para todas las comunicaciones realizadas a través de la VPN.

Muchas conexiones VPN sólo admiten el protocolo IPv4. Sin embargo, las máquinas que emplean estas tecnologías suelen ser de doble apilado, lo que significa que soportan (y habilitan de forma predeterminada) IPv4 e IPv6. En la actualidad, muchos hosts sólo utilizan IPv4 porque la mayoría de las redes no proporcionan conectividad IPv6. El soporte para IPv6 está todavía presente en el host, pero en espera de ser activado. Y cuando esto sucede, el host sin saberlo puede usar una VPN no preparada para IPv6 en una red de doble pila.

La forma sutil en que los protocolos IPv4 e IPv6 interactúan y coexisten en las redes de doble pila podría, ya sea inadvertidamente o como resultado de un ataque deliberado, resultar en problemas de seguridad asociados con una fuga de VPN. El tráfico destinado a ser transferido en una conexión VPN podría fugarse de la conexión VPN y enviarse en claro por la red local, sin necesidad de utilizar los servicios de VPN en absoluto.

Interacciones IPv4 e IPv6

La coexistencia de los protocolos IPv4 e IPv6 tiene una serie de aspectos interesantes y sutiles que pueden resultar en consecuencias sorprendentes. Mientras que IPv6 no es compatible hacia atrás con IPv4, los dos protocolos son "pegados" entre sí por el sistema de nombres de dominio (DNS). Para los sistemas dual-stack que dependen de los servicios de resolución de nombres (como los que proporciona DNS), es imposible asegurar la comunicación entre dos sistemas sin asegurar ambos protocolos.

Muchas implementaciones de VPN no admiten el protocolo IPv6, o peor aún, ignoran por completo IPv6. Al establecer una conexión VPN, el software VPN normalmente inserta una ruta predeterminada IPv4 que hace que todo el tráfico IPv4 sea enviado a través de la conexión VPN (en lugar de enviar el tráfico en el claro, empleando el ruteador local). Sin embargo, si no es compatible con IPv6, los paquetes destinados a una dirección IPv6 se envían en claro usando el router IPv6 local. El software de VPN no hace nada para proteger el tráfico IPv6.

Por ejemplo, considere un sitio (por ejemplo, www.ejemplo.com) que soporta tanto IPv4 como IPv6. El nombre de dominio correspondiente contiene los registros de recursos (RRs) DNS A y AAAA. Cada registro A contiene una dirección IPv4, mientras que cada registro AAAA contiene una dirección IPv6. No puede haber más de una instancia de cada uno de estos tipos de registro. Cuando una aplicación de cliente de doble apilado intenta comunicarse con un servidor, puede solicitar ambos RR, A y AAAA, y utilizar cualquiera de las direcciones disponibles. La familia de direcciones preferida (IPv4 o IPv6) y la dirección específica que se utilizará (suponiendo que más de una dirección de cada familia está disponible) varía de una aplicación a otra, y muchas implementaciones de hosts prefieren direcciones IPv6 sobre IPv4.

Fugas de tráfico VPN accidentales y deliberadas

Considere un host de doble apilado que emplea software de VPN solamente de IPv4 para establecer una conexión VPN con un servidor. ¿Qué pasaría si el host se conecta a una red de doble apilado? Si una aplicación en el host intenta comunicarse con un sistema de doble apilado, por lo general solicita registros de recursos DNS, tanto A como AAAA. Si el host soporta la conectividad IPv4 e IPv6, pero prefiere una dirección de destino de IPv6, a pesar de que el otro sistema cuente con registros de recursos DNS tipo A y AAAA, el host empleará IPv6 para comunicarse con el sistema antes mencionado. Si el software de VPN no es compatible con IPv6, el tráfico IPv6 no empleará la conexión VPN, sino que se enviará en claro a través del router IPv6 local.

Esto expone inadvertidamente el tráfico potencialmente sensible que se supuestamente será asegurado por el software VPN. En este escenario particular, la fuga de VPN resultante es un efecto secundario de emplear software no preparado para IPv6 (la VPN) en una red de doble apilado.

Una fuga de tráfico VPN involuntaria no es la única preocupación derivada de este tema. Haciéndose pasar por un ruteador IPv6 local, un atacante local podría provocar deliberadamente la conectividad IPv6 en el host víctima mediante el envío de falsos mensajes de ICMPv6 Router Advertisement. Estos paquetes pueden ser enviados mediante el empleo de software estándar como rtadvd o mediante el uso de herramientas de paquetes hechas a mano, como el kit de herramientas de IPv6. Una vez que se habilita la conectividad IPv6, la comunicación con los sistemas de doble apilado podría dar lugar a fugas de tráfico VPN, como se discutió anteriormente.

Si bien este tipo de ataque es lo suficientemente útil debido al creciente número de sitios habilitados para IPv6, sólo conduce a fugas de tráfico cuando el sistema de destino es de doble apilado. Sin embargo, provocar tales fugas VPN en cualquier sistema de destino es un asunto trivial. Un atacante puede simplemente hacerse pasar por el servidor recursivo DNS local mediante el envío de falsos mensajes Router Advertisement que incluyen la opción RDNSS correspondiente, y luego realizar un ataque de spoofing DNS para convertirse en el hombre en el medio e interceptar el tráfico correspondiente. Al igual que con el escenario de fuga accidental, las herramientas de paquetes hechos a mano, como el kit de herramientas de IPv6, pueden realizar fácilmente este ataque.

Mitigación de fugas de VPN

Hay una serie de posibles medidas de mitigación que se pueden poner en marcha para evitar problemas de pérdida de VPN con redes de doble apilado. La opción más simple (aunque no necesariamente la más deseable) es deshabilitar el soporte de IPv6 en todas las tarjetas de interfaz de red cuando se utilizará una conexión VPN. Las aplicaciones en el servidor que ejecuta el software de cliente VPN sólo serán capaces de emplear IPv4, algo que el software de VPN sí puede proteger.

Una red puede impedir que atacantes locales realicen con éxito los ataques anteriores contra otros hosts locales mediante la implementación de modelos de seguridad de primer alcance, como Router Advertisement Guard (RA-Guard) y DHCPv6-Shield. Sin embargo, por razones obvias, un host puede no confiar en estas medidas de mitigación cuando se conecta a una red abierta. Tenga en cuenta que también se sabe que las implementaciones populares de RA-Guard son vulnerables a los ataques de evasión.

Algunos podrían argumentar que la medida de mitigación más completa sería incorporar el soporte de IPv6 en el software de VPN y hacer que el servidor VPN proporcione la conectividad IPv6. Además de ser inviable en muchos escenarios actuales, tal mitigación podría llegar a ser no trivial, porque la configuración automática de IPv6 proporciona un número de maneras para que los routers (y los atacantes) inserten la información de ruteo alterno. Por ejemplo, un atacante todavía podría causar fugas de tráfico IPv6 mediante la realización de una serie de ataques de descubrimiento de vecinos (Neighbor Discovery), como el envío de mensajes falsos ICMPv6 Redirect, Router Advertisiment fraudulento con opciones de Información de Ruta (es decir, "las rutas más específicas"), falsos Router Advertisements que anuncian ruteadores "de alta prioridad", etc. Incluso si el software VPN es compatible con IPv6, algunas implementaciones VPN probablemente siga siendo vulnerable a este tipo de ataque en el corto plazo.

Conclusiones

La sutil interacción de los protocolos IPv6 e IPv4, junto con la (desafortunada) presunción establecida de que la seguridad IPv6 sólo es un problema si uno planea desplegar IPv6, puede tener consecuencias como la pérdida involuntaria del tráfico VPN. Debido a que la mayoría de los sistemas operativos de propósito general son de doble pila, la mayoría de las redes son dual-stack al menos parcialmente, lo que significa que las implicaciones de seguridad de IPv6 no pueden ser ignorados. La necesidad de internet para un mayor espacio de direcciones requiere la adopción generalizada y el despliegue del protocolo IPv6. Sin embargo, dicha adopción e implementación deben abarcar un conocimiento profundo de las implicaciones de seguridad correspondientes.

Profundice más

Inicie la conversación

Envíenme notificaciones cuando otros miembros comenten sobre este artículo.

Por favor cree un Nombre de usuario para poder comentar.

- ANUNCIOS POR GOOGLE

Close