Los rootkits son una amenaza a nuestra seguridad y privacidad, de la que se habla mucho sobre todo desde que Sony tuvo la idea de distribuir uno de ellos en sus CDs de audio. Pero, ¿Cómo funciona exactamente un rootkit? ¿Es cierto que no pueden eliminarse de un ordenador? ¿Por qué son peligrosos? A continuación intentamos develar el misterio.
Como si los virus, troyanos y malware que utilizan nuestro ordenador como campo de batalla para arruinar nuestros datos no fuesen suficientes, desde hace unos pocos años se ha sumado un nuevo tipo de alimaña que esperan el mínimo descuido para infectar nuestro ordenador. Pero ¿Qué es exactamente un rootkit?
En realidad, este concepto es bastante antiguo. Fue acuñado mucho antes de que algunas empresas como Sony lo hiciesen famoso. Concretamente, el término es el resultado de la unión de las palabras inglesas “root” y “kit”. “Root” se refiere al usuario que posee los máximos derechos en sistemas tipo Unix (como AIX, o Linux, por ejemplo). Es el que muchos refieren como “súper usuario” o “administrador”, es decir, quien posee la autoridad sobre el sistema. Por otro lado, “kit” denota un conjunto de herramientas. Un “rootkit” puede interpretarse como un conjunto de herramientas que poseen la misma categoría que el administrador de un sistema.
El rootkit de Sony
Como te contábamos, esta clase de alimaña se hizo popular cuando Sony BMG, intentando evitar que los compradores de sus CD de audio los duplicaran ilegalmente utilizando un ordenador, los “mejoró” con una protección anticopia. Sony “olvido” avisar a sus clientes de que había incluido este software en los CD. Pero un ingeniero informático llamado Mark Russinovich detectó algo extraño en su ordenador. Mark era un obsesivo de la seguridad, por lo que comenzó a investigar problema, descubriendo con asombro que el software intruso de un CD musical de Sony BMG adquirido legalmente. El programa en cuestión se llamaba XPC (protección de DRM).
La función de este programa era “obligar” al comprado a escuchar el CD exclusivamente en un reproductor e impedir hacer copias del disco. Pero la forma en que estaba implementado, hacia que al intentar ocultarse en el ordenador del usuario pudiese provocar daños en el resto del software (sobre todo si se intentaba eliminar del sistema). Además, creaba una brecha de seguridad en el sistema operativo que permitía la entrada de elementos infecciosos.
Sony reconoció en 2005 haber fabricado más de 4 millones de discos con este rootkit. Varios de los artistas cuyos discos incluían este software pidieron que se retiren del mercado, y la empresa rápidamente abandonó esta práctica, substituyendo a quienes lo solicitasen sus CD “infectados” por otros “limpios”.
Lamentablemente, los rootkits se fueron haciendo cada vez más populares.
¿Cómo funcionan?
Sin aburrir con detalles demasiado técnicos, podemos explicar el funcionamiento de un rootkit diciendo que son programas que una vez instalados en un sistema efectúan algunas modificaciones indispensables para poder llevar a cabo las tareas que tiene programadas sin que su presencia pueda ser detectada por el usuario o por sus herramientas de seguridad. La forma en que llevan a cabo esta labor de “camuflaje” es encubriendo otros procesos que ejecutan acciones maliciosas en el sistema.
Por ejemplo, un hacker puede instalar en tu sistema una puerta trasera para llevar a cabo tareas de espionaje, y un rootkit para ocultar los puertos abiertos que delaten la comunicación entre el software intruso y el atacante. Si se trata de un sistema para utilizar tu ordenador como un generador de correo masivo no deseado, el rootkit ocultará las actividades relacionadas con el envío de correo. Pueden emplearse para casi cualquier cosa: la única limitación es la imaginación.
Un rootkit incluso puede ocultar “logins” (inicios de sesión), procesos corriendo en segundo plano, archivos y registros de actividades (logs). También puede incluir funciones para interceptar los datos procedentes de terminales remotas, conexiones de red e incluso desde el teclado (actuar como un keylogger). Los rootkits son considerados por algunos como troyanos sofisticados, ya que suelen incluir backdoors (puertas traseras) para ayudar al intruso a acceder fácilmente al sistema una vez que se ha conseguido entrar por primera vez.
Los rootkits pueden clasificarse básicamente en dos grupos. Por un lado, tenemos a los que se integran en el núcleo del sistema operativo (los hay para todos ellos), y por otro, a los que funcionan como una aplicación más. Los que actúan desde el kernel deben modificar una parte del núcleo del sistema operativo para poder ocultar su presencia, en general añaden nuevo código al kernel. Esta tarea se lleva a cabo mediante la aplicación de un “parche” al código original que efectúa las llamadas al sistema, sustituyéndolas por versiones que esconden la información sobre el intruso. Son muy peligrosos y su detección puede ser muy complicada.
Aquellos que se comportan como aplicaciones comunes pueden modificar (usando hacks o parches) o reemplazar los ficheros ejecutables originales por versiones alteradas para albergar algún troyano.
¿Pueden eliminarse de un ordenador?
Si uno busca información sobre este tipo de programas, no es raro encontrar (sobre todo en foros) comentarios sobre la imposibilidad de remover algunos rootkits. Sin embargo, dicha tarea es posible, a la vez que puede evitarse su instalación en nuestro ordenador. Por supuesto, a veces no es una tarea sencilla.
En primer lugar, y como ocurre con los virus (algunos de los cuales utilizan técnicas propias de los rootkits), es imposible que un nuevo software se ejecute en nuestro ordenador sin que previamente se haya copiado algún fichero al disco del mismo. Esto permite a casi todos los antivirus, mediante la monitorización de las escrituras en el disco duro y el análisis de los nuevos ficheros, la detección de código malicioso. Sin embargo, hay algunas diferencias.
Un rootkit no se autopropaga como un virus. Debe instalarse, ya sea por el usuario (que a veces resulta engañado para que lo haga) o por un intruso. Además, mientras que un virus es “genérico” (esta pensado para copiarse y funcionar en todos los ordenadores que sea posible), un rootkit es mucho más específico. De hecho, a veces puede ser escrito “a medida” para atacar un ordenador en particular. Esto dificulta mucho la tarea de las herramientas de detección. Como hemos mencionado, los rootkits se autoprotegen escondiéndose y evitando que otros procesos (antivirus incluidos) puedan detectarlos. Pero para que ello ocurra, deben estar presentes en la memoria del ordenador y ejecutándose en el momento que son rastreados.
Por lo tanto, la mejor manera de detectarlos es evitar que el rootkit se ejecute, arrancando el ordenador desde un disco diferente al del sistema infectado (por ejemplo, usando un LiveCD). Esto evitará que el rootkit pueda protegerse y lograremos eliminarlo.
En caso de que seamos victimas de un ataque “a medida”, los antivirus muy posiblemente no reconocerán la presencia del intruso. En estos casos, que generalmente afectan a grandes compañías, hace falta que personal bien capacitado haga un análisis exhaustivo del sistema. Y por supuesto, hay que denunciar el ataque ya que es evidente que hay una persona quiere dañar a su empresa.