Ha estado escondiendo un virus en el código de Linux durante 2 años: así lo pillaron
Linux siempre ha alardeado de ser un sistema operativo mucho más seguro, robusto y fiable que sus rivales, Windows y macOS. Y en realidad así es, entre otras cosas, porque gracias a que se trata de un sistema de código abierto, el código lo auditan multitud de desarrolladores de todo el mundo. Sin embargo, los desarrolladores a veces se fían demasiado del código que otros añaden al núcleo de Linux. Y esto puede dar lugar a problemas como el que nos hemos encontrado recientemente.
Esta Semana Santa ha sido movida dentro del mundo de Linux. Y es que un desarrollador de Microsoft, que estaba haciendo algunas pequeñas pruebas de rendimiento en sus proyectos, se dio cuenta de que los sistemas tardaban exactamente medio segundo más en ejecutarse de lo que debería tardar en un principio. Y eso le llevó a investigar qué es lo que estaba pasando.
Así ocultó código malicioso en Linux durante 2 años
Un pirata informático ha estado colaborando en el desarrollo de Linux durante bastante tiempo, de manera que consiguió ganarse la confianza de los responsables de analizar y validar el código. Y, aunque siguió colaborando, nadie esperaba encontrarse con que lo que hacía era, en realizar, esconder un backdoor, o puerta trasera, dentro de una herramienta (XZ) que forma parte del núcleo de Linux, y está presente en distros como Debian y Red Hat, entre otras.
La finalidad de esta puerta trasera era romper el cifrado SSH de las conexiones remotas que se realizaran a cualquier servidor. De esta forma, el pirata informático podría lograr acceder a toda la información que se enviara a través de este protocolo. Y no solo eso, sino que incluso podría utilizarse para validar cualquier conexión remota, incluso si se utilizara una clave de cifrado inválida.
Así lo detectó el ingeniero de Microsoft
Los responsables de validar el código de los módulos del Kernel lo dieron de paso ya que, al tratarse de un desarrollador conocido, parecía de fiar. De esta forma, las versiones 5.6.0 y 5.6.1 de XZ Utils terminaron de hacer funcional el backdoor, y estaba listo para empezar a funcionar. Hasta que un ingeniero de Microsoft detectó algo extraño.
The xz backdoor was initially caught by a software engineer at Microsoft. He noticed 500ms lag and thought something was suspicious.This is the Silver Back Gorilla of nerds. The internet final boss.
02 de abril, 2024 • 12:52
Este ingeniero detectó, durante unas simples comprobaciones de rendimiento, que el proceso SSHD disparaba, durante unos instantes, el uso de CPU al intentar conectarse de forma remota a través del protocolo SSH a un equipo. El proceso fallaba al usar un usuario y una contraseña incorrectos, pero había algo raro.
Al analizar los tiempos se dio cuenta de que, mientras que el login de normal tardaba unos 0.3 segundos, tras instalar las librerías XZ infectadas, el tiempo se disparaba 0.5 segundos más. A simple vista, para la mayoría de los usuarios, este timming pasaría desapercibido. Pero a este ingeniero le resultó extraño.
Tras investigar qué es lo que pasaba, se encontró con este backdoor, deteniendo el plan maestro del hacker antes de que pudiera haber tenido consecuencias catastróficas.
Cómo protegerme de ello
En un principio, parece que el backdoor ha sido detectado a tiempo, y no ha podido ser utilizado por el pirata informático para conectarse de forma remota a ningún sistema. Tan solo las últimas versiones beta del núcleo de Linux incluían este código en su interior, y gracias a este ingeniero de Microsoft ya se han actualizado para revertir los cambios.
Los responsables del desarrollo del Kernel Linux han eliminado las versiones de XZ infectadas por el backdoor y han instalado, hasta que se solucione el problema, una versión anterior, y no infectada, de la herramienta. Por lo tanto, no hay de qué preocuparse. Siempre y cuando no haya otro código malicioso escondido que haya pasado desapercibido como este.