Un grupo de investigadores de universidades canadienses y estadounidenses ha desarrollado una técnica de ataque Port Shadow que permite, mediante la manipulación de tablas de traducción de direcciones en el lado del servidor VPN, enviar una respuesta a una solicitud a otro usuario conectado al mismo servidor VPN. El método se puede utilizar para interceptar o redirigir el tráfico cifrado, realizar escaneo de puertos y anonimizar a los usuarios de VPN. Como ejemplo, se muestra cómo se puede utilizar el método para redirigir las solicitudes DNS de un usuario que trabaja a través de un servidor VPN al host atacante, al que el atacante puede conectarse como cliente.
Para llevar a cabo un ataque, un atacante debe poder conectarse a uno VPNEl servidor de la víctima, lo cual es posible, por ejemplo, al utilizar operadores VPN estándar y servicios VPN públicos que brindan acceso a todos. La vulnerabilidad afecta a los servidores VPN que utilizan la traducción de direcciones de red (NAT) para organizar el acceso de los clientes a recursos externos, mientras que recibir tráfico de los clientes y enviar solicitudes a sitios externos requiere... servidor Se debe utilizar la misma dirección IP.
El ataque se basa en el hecho de que, al enviar solicitudes especialmente diseñadas, un atacante conectado al mismo servidor VPN y utilizando una NAT común puede distorsionar el contenido de las tablas de traducción de direcciones, lo que provocará que los paquetes dirigidos a un usuario se envíen a otro usuario. . En las tablas de traducción de direcciones, la información sobre a qué dirección IP interna está asociada una solicitud enviada se determina en función del número de puerto de la red de origen utilizado al enviar la solicitud. Un atacante, al enviar ciertos paquetes SYN y ACK y manipulaciones simultáneas por parte de la conexión del cliente al servidor VPN y por parte del servidor externo controlado por el atacante, puede provocar una colisión en la tabla NAT y agregar un entrada con el mismo número de puerto de origen, pero asociada con su dirección local, lo que dará lugar a que las respuestas a la solicitud de otra persona se devuelvan a la dirección del atacante.

El estudio puso a prueba los sistemas de traducción de direcciones. Linux y FreeBSD en combinación con VPN OpenVPN, OpenConnect y WireGuardLa plataforma FreeBSD era inmune a los ataques de redirección de solicitudes llevados a cabo por otros usuarios conectados a la misma VPN. Las tablas NAT solo se inyectaron con éxito mediante un ataque ATIP (Adjacent-to-In-Path), que permite a un atacante inyectar tráfico entre el usuario y el servidor VPN (por ejemplo, cuando el usuario se conecta a una red Wi-Fi controlada por el atacante) o entre el servidor VPN y el sitio web objetivo. El NAT de FreeBSD también se vio afectado por un ataque que permite determinar si un usuario está conectado a un sitio web específico (Inferencia de conexión).
con respecto a LinuxEl subsistema Netfilter era vulnerable a ataques que sustituían entradas en la tabla de traducción de direcciones, lo que permitía redirigir los paquetes entrantes a otro usuario, enviar paquetes fuera del canal VPN cifrado (desencapsulación) o abrir puertos de red que podían determinarse en el lado del cliente.

Como medidas para bloquear el ataque, se recomienda a los proveedores de VPN utilizar métodos adecuados para aleatorizar los números de puerto de origen en NAT, limitar la cantidad de conexiones simultáneas permitidas al servidor VPN de un usuario y también bloquear la capacidad del cliente para seleccionar la red. Puerto que recibe solicitudes en el lado del servidor VPN.
Según un representante de Proton AG, el ataque no afecta a los servicios VPN que utilizan direcciones IP separadas para solicitudes entrantes y salientes. Además, existen dudas sobre la posibilidad de aplicar el ataque a servicios VPN reales, ya que hasta ahora un ataque exitoso solo se ha demostrado en pruebas de laboratorio y su implementación requiere el cumplimiento de ciertas condiciones por parte del servidor VPN y del atacado. cliente. Además, el ataque solo puede ser útil para manipular solicitudes no cifradas, como consultas DNS, mientras que el uso de TLS y HTTPS en la capa de aplicación hace que la redirección del tráfico sea inútil.
Los ataques que manipulan tablas de traducción de direcciones se aplican no sólo a las VPN, sino también a las redes inalámbricas que utilizan NAT en el punto de acceso para conectar a los usuarios a recursos externos. El mes pasado se publicaron los resultados de un estudio sobre la posibilidad de realizar un ataque similar para interceptar conexiones TCP de otros usuarios de redes inalámbricas. El método de ataque fue aplicable a 24 de los 33 puntos de acceso inalámbrico probados.

El ataque propuesto para Wi-Fi resultó ser mucho más simple que el método anterior para VPN, ya que debido al uso de optimizaciones, muchos puntos de acceso no verifican la exactitud de los números de secuencia en los paquetes TCP. Como resultado, el ataque simplemente requirió enviar un paquete RST falso para borrar una entrada de la tabla de traducción de direcciones y luego enviar una respuesta al host del atacante para determinar los números de secuencia (SEQ) y acuse de recibo (ACK) necesarios para interceptar el mensaje. Conexión TCP.


Fuente: opennet.ru
