Saltar al contenido principal

Rootkits - Malware sigiloso en lo profundo de tu SO

Lectura de 2 min aprox.

Un rootkit es un tipo de malware que se oculta en lo más profundo del sistema y disimula su propia presencia ante el sistema operativo y el software de seguridad. Su nombre proviene de «root», el privilegio más alto en Unix/Linux, y los atacantes lo utilizan para mantener un acceso persistente al sistema. Como es extremadamente difícil de detectar, hay casos en los que se roba información durante largos periodos sin que la infección llegue a notarse. En 2024 se descubrieron varias nuevas variantes de rootkits UEFI, lo que aumenta la importancia de las medidas de seguridad a nivel de firmware.

Por qué no aparecer en una lista no es una prueba

Una lista de procesos o de conexiones de red no hace más que mostrar las respuestas devueltas por una consulta al sistema operativo. Un rootkit incrustado en el kernel se sitúa en una posición desde la que puede reescribir la propia respuesta a esa consulta, por lo que puede lograr que las entradas relativas a él mismo no se devuelvan. En ese caso, la ausencia de elementos sospechosos en una lista no es prueba de que no exista nada sospechoso. Es una situación en la que el instrumento de observación está controlado por el objeto observado, y un resultado que parece normal no puede distinguirse de que las cosas estén realmente normales. Por eso, cuando se sospecha la presencia de un rootkit, hay que cambiar la observación a métodos que no pasen por el sistema operativo. Obtener y analizar directamente el contenido de la memoria, examinar el disco desde un entorno arrancado con otro medio y registrar el tráfico desde el lado de la red comparten la propiedad de no pedir la respuesta al sistema operativo comprometido. Antes de juzgar si algo se ha detectado, hace falta un paso para confirmar de dónde procede esa información.

La estructura de ocultamiento de los rootkits

Capa UEFI/firmware (bootkit) - no se puede eliminar ni reinstalando el sistema operativo
Capa del kernel (modo kernel) - la más difícil de detectar
Capa de usuario (modo usuario) - oculta procesos y archivos
Capa de aplicación - la capa donde se ejecuta el software de seguridad común

Tipos de rootkits

Los rootkits en modo kernel se incrustan en el kernel del sistema operativo y son los más difíciles de detectar. Los rootkits en modo usuario operan en la capa de aplicación, ocultando procesos y archivos. Los bootkits infectan el proceso de arranque del sistema operativo y comienzan a actuar antes de que este se cargue. Los rootkits UEFI infectan el firmware, lo que los convierte en el tipo más problemático, ya que no pueden eliminarse ni reinstalando el sistema operativo.

Por qué se retrasa el descubrimiento

Lo problemático de un rootkit no es tanto la magnitud del daño como la vía por la que se descubre. La supervisión suele depender de la información que el propio equipo examinado comunica sobre sí mismo. Si se han reescrito la lista de procesos y la vista del tráfico, la pantalla de supervisión sigue mostrando «sin anomalías» y, con el paso del tiempo, los rastros de la intrusión se sobrescriben y resultan más difíciles de seguir. Por eso el descubrimiento suele desencadenarse por información que llega desde fuera del sistema: un comentario de la parte con la que se comunica el equipo, un aviso de un socio comercial o datos filtrados encontrados en otro lugar. Si queda una vía de reentrada como una puerta trasera, el intruso vuelve por el mismo camino aunque parezca que el rootkit se ha eliminado. En la respuesta a incidentes, hay que trabajar partiendo de que lo que informa el equipo no es fiable y contrastar con pruebas de otro sistema, como los registros del lado de la red.

Detección y eliminación

Como los análisis de virus habituales no pueden detectarlos, se necesitan herramientas de detección de rootkits específicas o un análisis desde fuera del sistema operativo (arrancando desde un medio de arranque). Si se confirma un rootkit en modo kernel, una reinstalación limpia del sistema operativo es la solución más fiable. Como medidas preventivas, mantener actualizados el sistema operativo y el software, proteger las cuentas de administrador con contraseñas aleatorias robustas y habilitar la autenticación multifactor permiten reducir el riesgo de una intrusión inicial.

Términos relacionados

¿Te resultó útil este artículo?