Actores desconocidos han implantado un código malicioso en las versiones abiertas 5.6.0 y 5.6.1. del conjunto de herramientas de compresión XZ Utils. Y, además, para empeorar la situación las utilidades troyanizadas lograron abrirse camino en varias versiones populares que se lanzaron en marzo, por lo que este incidente podría considerarse como un ataque a la cadena de suministro. A esta vulnerabilidad se la ha denominado CVE-2024-3094.
¿Qué hace que este implante malicioso sea tan peligroso?
En un primer momento, varios investigadores afirmaron que esta puerta trasera permitía a los atacantes eludir la autenticación sshd (el proceso del servidor OpenSSH) y obtener información de acceso no autorizado al sistema operativo de manera remota. Sin embargo, según las últimas noticas, esta vulnerabilidad no debería de ser clasificada como una “omisión de la autenticación”, sino más bien como una “ejecución remota de código” (RCE). La puerta trasera intercepta la función RSA_public_decrypt, verifica la firma del host usando la clave fija Ed448 y, si esta se verifica con éxito, ejecuta el código malicioso pasando por el host a través de la función system(), sin dejar rastros en los registros sshd.
¿Qué distribuciones de Linux contienen unidades maliciosas y cuáles son seguras?
Se sabe que las versiones 5.6.0 y 5.6.1 de XZ Utils se incluyeron en las versiones de marzo de las siguientes distribuciones de Linux:
- Kali Linux aunque según el blog oficial, que incluye instrucciones para comprobar si hay versiones vulnerables de utilidades, solo aquellas que estuvieron disponibles del 26 al 29 de marzo
- openSUSE Tumbleweed y openSUSE MicroOS disponibles del 7 al 28 de marzo
- Fedora 41, Fedora Rawhide, y Fedora Linux 40 beta;
- Debian (únicamente en las pruebas, en las distribuciones inestables y en las experimentales)
- Arch Linux –contiene imágenes disponibles del 29 de febrero al 29 de marzo. Sin embargo, la página web org afirma que, debido a sus peculiaridades de implementación, aunque este vector de ataque no funcionaría en Arch Linux, recomiendan igualmente actualizar el sistema.
Según fuentes oficiales Red Hat Enterprise Linux (RHEL), SUSE Linux Enterprise, openSUSE Leap y Debian Stable no son vulnerables. En cuanto a otras distribuciones, se recomienda comprobar la presencia de versiones troyanizadas de XZ Utils.
¿Cómo se implantó el código malicioso en XZ Utils?
Al parecer se trataba de un caso típico de transferencia de control. La persona que inicialmente mantuvo el Proyecto XZ Libs en GitHub pasó el control del repositorio a una cuenta que ha estado contribuyendo a varios repositorios relacionados con la compresión de datos durante varios años. Y, en algún momento, alguien detrás de esa otra cuenta implantó una puerta trasera en el código del proyecto.
La epidemia que estuvo a punto de ocurrir y que nunca ocurrió
De acuerdo con Igor Kuznetsov, head de nuestro departamento de Global Research and Analysis Team (GReAT), la explotación CVE-2024-3094 podría haberse convertido en el ataque a mayor escala al ecosistema Linux de la historia. Esto se debe a que estaba principalmente dirigido a servidores SSH, la principal herramienta de gestión remota de todos los servidores de Linux en internet. Sin embargo, afortunadamente, CVE-2024-3094 fue detectada en las distribuciones en situación de prueba y en desarrollo donde se utilizaron los últimos paquetes de software. Por tanto, un gran número de usuarios de Linux se mantuvieron a salvo. Hasta ahora no hemos detectado ningún caso de explotación de CVE-2024-3094.
¿Cómo mantenerse a salvo?
La Agencia de Seguridad de Infraestructura y Ciberseguridad de Estados Unidos (CISA) recomienda a cualquier persona que haya instalado o actualizado los sistemas operativos afectados en marzo que actualicé XZ Utils a una versión anterior (por ejemplo, la versión 5.4.6) inmediatamente. Así como que comience a buscar actividades maliciosas.
Si has instalado alguna de las distribuciones con una versión vulnerable de XZ Utils, también es recomendable cambiar todas las credenciales que los actores de amenazas podrían robar del sistema.
Puedes detector la presencia de una vulnerabilidad utilizando la regla Yara para CVE-2024-3094.
Si sospechas que un actor de amenazas puede haber obtenido acceso a la infraestructura de tu empresa, te recomendamos usar Kaspersky Compromise Assessment para descubrir cualquier tipo de ataque pasado o que siga en curso.