Linux TCP Flaw: un enorme hueco de seguridad

Publicado por Diego Córdoba en

hacked Linux TCP FlawLinux TCP Flaw, Una amenaza de seguridad identificada por investigadores de la Universidad de California podría ser utilizada para cargar ataques dirigidos que registren la actividad online de un usuario, forzando la terminación de una comunicación, secuestrando sesiones de usuario, o incluso, degradando la privacidad grantizada por redes anónimas como TOR.

Esta vulnerabilidad reside en la implementación del protocolo TCP (Transmission Control Protocol) en todos los sistemas operativos Linux desde finales del 2012.

El paper de estudio del Linux TCP Flaw

Dirigido por Yue Cao, un estudiante graduado en ciencias de la computación en la Universidad de California Riverside, el reporte de la investigación fue presentado el 10 de agosto en el simposio USENIX de seguridad en Austin, Texas.

El asesor del proyecto es Zhiyum Qian, profesor asistente de ciencias de la computación en la UC Riverside, cuya investigación se centra en la identificación de las vulnerabilidades de seguridad para ayudar a las empresas de software a mejorar sus sistemas.

Los fundamentos

Mientras la mayoría de los usuarios no interactúan directamente con el sistema operativo Linux, el software se ejecuta detrás de Internet, en la mayor parte de los servidores, en los teléfonos Android, y una gama de otros dispositivos electrónicos. Para transferir información de una fuente a otra, Linux y otros sistemas operativos utilizan el protocolo TCP para empaquetar, a nivel de capa de transporte, los datos de los protocolos de aplicación, y luego se utiliza el protocolo IP para asegurarse de que los datos sean enrutados hasta el destinatario.

tcpip-encapulamiento

Modelo de encapsulamiento en TCP/IP

Por ejemplo, cuando dos personas se comunican por correo electrónico, TCP ensambla su mensaje en una serie de segmentos de datos identificados por números de secuencia únicos que son transmitidos por el emisor, y recibidos por el receptor, que vuelve a rearmar en el mensaje original.

Esos números de secuencia de la cabecera de TCP son útiles para los atacantes, pero con casi 4 mil millones de números de secuencia posibles, es esencialmente imposible identificar el número de secuencia asociado a cualquier comunicación en particular.

No obstante, los investigadores de la UC Riverside identificaron un defecto sutil (en forma de «canales secundarios«) en el software de Linux que permite a los atacantes para inferir los números de secuencia TCP asociados a una conexión determinada, sin más información que la dirección IP de las partes que se comunican!

Esto significa que, dado cualquier par de máquinas arbitrarias en el Internet, un atacante remoto, sin ser capaz de leer (sniffing) el tráfico de la comunicación, puede realizar un seguimiento de la actividad en línea de los usuarios, terminar conexiones con los demás e inyectar contenido falso en sus comunicaciones. Las conexiones cifradas con SSL/TLS (por ejemplo, HTTPS) son inmunes a la inyección de datos, pero pueden ser terminadas por el atacante.

La debilidad podría permitir a los atacantes degradan la privacidad de las redes anónimas, tales como TOR, forzando las conexiones de ruta a través de ciertos nodos. El ataque es rápido y fiable, a menudo toma menos de un minuto y que muestra una tasa de éxito de alrededor del 90 %. Los investigadores crearon un breve vídeo que muestra cómo funcionan los ataques.

Qian dijo que, a diferencia de los ataques informáticos convencionales, los usuarios podrían convertirse en víctimas sin hacer nada malo, como la descarga de software malicioso o haciendo clic en un enlace en un correo electrónico de phishing.

«Hemos demostrado que el ataque requiere muy baja exigencia para poder llevarse a cabo. En esencia, puede ser ejecutado fácilmente por cualquier persona en el mundo que disponga una máquina de ataque en una red que permita la simulación de IP. La única pieza de información que se necesita es el par de direcciones IP (para el cliente y el servidor víctima), que es bastante fácil de obtener», dijo Qian.

La solución al Linux TCP Flaw

Qian agregó que los investigadores han alertado sobre el Linux TCP Flaw, que ha resultado en parches aplicados a la última versión de Linux, de modo que todos los Linux actualizados a hoy ya no son vulnerables a este error de seguridad.

En los Linux no actualizados (muchos servidores de producción, por ejemplo), Qian recomienda el siguiente parche temporal que se puede aplicar tanto a los hosts de cliente y servidor.

Simplemente se plantea el «Challenge ACK Limit» a un valor extremadamente grande para que sea prácticamente imposible poder explotar el canal lateral.

Esto se puede hacer en Debian, y casi en cualquier distribución, como sigue:

echo "net.ipv4.tcp_challenge_ack_limit=999999999" >> /etc/sysctl.conf
sysctl -p     #para aplicar los cambios sin reiniciar

Referencias

Con el título “Off-Path TCP Exploits: Global Rate Limit Considered Dangerous” el artículo se encuentra disponible en el sitio web de Qian.

Además de Cao y Qian, Zhongjie Wang, Tuan Dao y Srikanth V. Krishnamurthy de UC Riverside, y Lisa M. Marvel, del Laboratorio de Investigación del Ejército de Estados Unidos, ha contribuido a la obra. La investigación está financiada por el Laboratorio de Investigación del Ejército (ARL Seguridad Cibernética CRA) y la Fundación de Ciencias de la Nación con la subvención 1.464.410.

Espero les haya resultado de utilidad!!

Fuentes:

http://universityofcalifornia.edu/news/study-highlights-major-cybersecurity-threat

http://thehackernews.com/2016/08/linux-tcp-packet-hacking.html


¿Preguntas? ¿Comentarios?

Si tenés dudas, o querés dejarnos tus comentarios y consultas, sumate al grupo de Telegram de la comunidad JuncoTIC!
¡Te esperamos!


Diego Córdoba

- Ingeniero en Informática - Mg. Teleinformática - Tesis pendiente - Docente universitario - Investigador