La historia comenzó con una molestia pequeña. A finales de marzo de 2024, Andres Freund estaba probando una versión de Debian cuando notó que algunas conexiones por SSH gastaban más CPU de lo esperado y tardaban alrededor de medio segundo más en autenticarse. No era una caída, no había clientes llamando ni un panel cubierto de alertas rojas. Era ese tipo de detalle que en un sistema grande suele terminar archivado bajo la palabra “raro”. Freund no lo dejó pasar.
Al seguir la pista encontró errores bajo valgrind y un comportamiento que no encajaba en sshd. La anomalía no estaba en OpenSSH de forma directa. Aparecía cuando el proceso terminaba cargando liblzma, la biblioteca de compresión perteneciente al proyecto XZ Utils. Es una de esas piezas que rara vez ocupan la pantalla: no es el servicio que administramos, sino una dependencia bajo otras dependencias, presente porque el sistema necesita leer y comprimir datos.
En su aviso a la lista oss-security, publicado el 29 de marzo de 2024, Freund explicó que los tarballs de las versiones 5.6.0 y 5.6.1 contenían código malicioso. No era simplemente un archivo sospechoso añadido al repositorio y fácil de señalar. Parte del mecanismo se escondía en los artefactos de publicación y se activaba durante determinados procesos de compilación para distribuciones basadas en Debian o RPM. El objetivo terminaba rozando el camino de autenticación de SSH en sistemas que enlazaban la biblioteca a través de systemd.
Ahí la historia cambia de escala. XZ no es un programa llamativo que alguien instala porque lo vio anunciado. Es infraestructura silenciosa. Las bibliotecas de ese tipo llegan a los servidores por confianza acumulada: confiamos en la distribución, la distribución confía en los paquetes y el proyecto confía en su proceso de mantenimiento. La puerta trasera no necesitaba convencer a cada administrador. Solo necesitaba acercarse lo suficiente a una versión que viajara hacia sistemas reales.
El hallazgo llegó antes de que la mayoría de distribuciones estables incorporaran las versiones afectadas. Red Hat advirtió inmediatamente a usuarios de Fedora Rawhide y Fedora Linux 40 beta; CISA recomendó degradar las instalaciones comprometidas a una versión anterior y buscar actividad maliciosa. El desastre que se recuerda aquí no es una interrupción mundial consumada. Es la catástrofe que estuvo cerca de cruzar la puerta y fue detenida porque alguien se tomó en serio un retraso pequeño.
Después vino la parte incómoda para el open source. Las revisiones públicas del proyecto mostraron una incorporación progresiva de un colaborador que terminó ganando confianza dentro de XZ. El caso dejó de parecer el ataque de una tarde y empezó a leerse como una operación paciente contra una realidad conocida: muchas piezas fundamentales de internet descansan sobre mantenedores con tiempo limitado, sometidos a presión para aceptar ayuda y liberar versiones.
Para quienes trabajamos con infraestructura, XZ obliga a mirar de otro modo la palabra dependencia. Actualizar rápido puede cerrar vulnerabilidades, pero también puede importar una amenaza nueva; compilar desde una fuente publicada no significa necesariamente que estemos compilando lo que vimos en Git; vigilar un servicio no basta si la alteración entra por una biblioteca que parecía demasiado aburrida para merecer atención.
También deja una lección menos grandiosa y más útil: comprender sistemas sigue siendo una tarea de observación. Freund no descubrió la puerta trasera porque tuviera una campaña publicitaria de seguridad o una promesa de detección automática. La descubrió porque conocía el comportamiento esperado, vio una desviación y quiso entenderla. En una época en la que es fácil pedir una respuesta rápida a una herramienta, esa paciencia sigue siendo una defensa real.
Documentos y fuentes
Andres Freund, aviso original en oss-security, 29 de marzo de 2024
Conversacion
Se el primero en comentar