INTRODUCCIÓN

Un equipo de investigadores en ciberseguridad reveló una nueva y grave vulnerabilidad que afecta a la mayoría de los sistemas operativos Linux y Unix, esto incluye FreeBSD, OpenBSD, macOS, iOS y Android, que podría permitir a los atacantes espiar y manipular las conexiones VPN cifradas.

La vulnerabilidad, rastreada como CVE-2019-14899, reside en la pila de redes de varios sistemas operativos y puede ser explotada tanto contra flujos TCP IPv4 como IPv6.

DESARROLLO

Dado que la vulnerabilidad no depende de la tecnología VPN utilizada, el ataque funciona contra protocolos de red privada virtual ampliamente implementados como OpenVPN, WireGuard, IKEv2/IPSec y otros, confirmaron los investigadores.

Esta vulnerabilidad puede ser explotada por un atacante de red simplemente enviando paquetes de red no solicitados a un dispositivo específico y observando las respuestas, incluso si están cifradas.

Como explicaron los investigadores, aunque hay variaciones para cada uno de los sistemas operativos afectados, la vulnerabilidad permite a los atacantes determinar:

  • La dirección IP virtual de una víctima asignada por el servidor VPN.
  • Si hay una conexión activa a un sitio web determinado.
  • Los números exactos de secuencia y ataque contando los paquetes encriptados y/o examinando su tamaño, e inyectar datos en el flujo TCP y secuestrar conexiones.

«El punto de acceso puede entonces determinar la IP virtual de la víctima enviando paquetes SYN-ACK al dispositivo víctima a través de todo el espacio IP virtual», dijo el equipo en su aviso.

«Cuando un SYN-ACK es enviado a la IP virtual correcta en el dispositivo víctima, el dispositivo responde con un RST; cuando el SYN-ACK es enviado a la IP virtual incorrecta, nada es recibido por el atacante.»

Al explicar las variaciones en el comportamiento de los diferentes sistemas operativos, por ejemplo, los investigadores dijeron que el ataque no funciona contra los dispositivos macOS/iOS como se describe.

En cambio, un atacante necesita «usar un puerto abierto en la máquina Apple para determinar la dirección IP virtual». En sus pruebas, los investigadores utilizan el «puerto 5223, que se utiliza para iCloud, iMessage, FaceTime, Game Center, Photo Stream, y notificaciones push, etc.».

Los investigadores probaron y explotaron con éxito la vulnerabilidad contra los siguientes sistemas operativos y los sistemas init, pero creen que esta lista podría ser larga a medida que los investigadores prueben la falla en más sistemas:

  • Ubuntu 19.10 (systemd)
  • Fedora (systemd)
  • Debian 10.2 (systemd)
  • Arco 2019.05 (systemd)
  • Manjaro 18.1.1 (systemd)
  • Devuan (sysV init)
  • MX Linux 19 (Mepis+antiX)
  • Void Linux (runit)
  • Artículos de hojalatería 14.2 (rc.d)
  • Deepin (rc.d)
  • FreeBSD (rc.d)
  • OpenBSD (rc.d)

«La mayoría de las distribuciones de Linux que probamos eran vulnerables, especialmente las distribuciones de Linux que usan una versión de systemd retirada después del 28 de noviembre del año pasado, lo que desactivó el filtrado de ruta inversa», dijeron los investigadores.

«Sin embargo, recientemente descubrimos que el ataque también funciona contra IPv6, por lo que activar el filtrado de ruta inversa no es una solución razonable».

Como posible mitigación, los investigadores sugirieron activar el filtrado de ruta inversa, implementar el filtrado de bogon y encriptar el tamaño y el tiempo de los paquetes para evitar que los atacantes hagan cualquier inferencia.

CONCLUSIONES

Aunque los investigadores aún no han revelado los detalles técnicos de la vulnerabilidad, están planeando publicar un análisis en profundidad de esta falla y sus implicaciones relacionadas, después de que los proveedores afectados, incluyendo Systemd, Google, Apple, OpenVPN, WireGuard, y diferentes distribuciones de Linux, publiquen soluciones provisionales y parches satisfactorios.