Justo en este momento, tu ordenador podría estar lleno de virus y malware, o incluso ser parte de una botnet que lleve a cabo fraudes de clic o ci­ber­ata­ques a gran escala. Si este fuera el caso, pro­ba­ble­me­n­te ni te en­te­ra­rías. De hecho, en la mayoría de las veces los llamados rootkits hacen creer al usuario que todo va pe­r­fe­c­ta­me­n­te bien. Funcionan prá­c­ti­ca­me­n­te como una capa de in­vi­si­bi­li­dad bajo la cual se cometen ac­ti­vi­da­des de­li­c­ti­vas. Sin embargo, si conoces el fu­n­cio­na­mie­n­to y los riesgos de los rootkits, puedes pro­te­ge­r­te mejor contra ellos. Por ello, te invitamos a leer a co­n­ti­nua­ción lo más im­po­r­ta­n­te en materia de rootkits.

¿Qué es un rootkit?

Los rootkits no son malwares in­di­vi­dua­les, sino todo un conjunto de programas ma­li­cio­sos que anidan en los or­de­na­do­res a través de huecos en el sistema de seguridad, co­n­ce­die­n­do así a los atacantes acceso remoto pe­r­ma­ne­n­te (remote access) a ellos. Una ca­ra­c­te­rí­s­ti­ca esencial de los rootkits es que se ocultan a sí mismos y a otros parásitos frente a de­te­c­to­res de virus y programas de seguridad, de manera que el usuario no se percata de su exi­s­te­n­cia.

Según a qué nivel de au­to­ri­za­ción haya llegado el rootkit, puede incluso otorgar todos los derechos de ad­mi­ni­s­tra­ción (con lo que se llama un rootkit en modo kernel), es decir, el control total sobre el ordenador, al hacker.

De­fi­ni­ción

Rootkit es un conjunto de varios programas ma­li­cio­sos que pueden in­fi­l­trar­se en distintos niveles de au­to­ri­za­ción de un ordenador, encubrir las acciones de virus y malware y facilitar así en adelante el acceso al sistema para los de­li­n­cue­n­tes.

Los primeros rootkits surgieron a pri­n­ci­pios de los noventa y todavía se dirigían ex­clu­si­va­me­n­te a sistemas ope­ra­ti­vos del tipo Unix, como Linux. Solían estar formados a partir de versiones mo­di­fi­ca­das de programas es­tá­n­da­res como ps, un comando de Unix que muestra la lista de todos los procesos en curso; o passwd, para cambiar la co­n­tra­se­ña de usuario. Su nombre también se acuñó en esa época: el término root designa en Unix al ad­mi­ni­s­tra­dor y el término kit significa algo así como equi­pa­mie­n­to o caja de he­rra­mie­n­tas. Así, el término compuesto rootkit designa un conjunto de he­rra­mie­n­tas in­fo­r­má­ti­cas que permiten a un hacker obtener derechos de ad­mi­ni­s­tra­dor (de root) sobre un ordenador, algo que hacen, más ex­plí­ci­ta­me­n­te, los rootkits en modo kernel.

Ac­tua­l­me­n­te, sin embargo, existen rootkits para muchos tipos de sistemas ope­ra­ti­vos. La de­no­mi­na­ción rootkit, eso sí, no deja de tener sentido en Windows y otros sistemas ope­ra­ti­vos: algunos rootkits penetran hasta el núcleo más interno, es decir, hasta la raíz o root del sistema, desde donde empiezan a actuar.

¿Cómo funcionan los rootkits?

Aunque existen tipos muy di­fe­re­n­tes de rootkits, la base de su fu­n­cio­na­mie­n­to es siempre la misma. También el proceso de in­fi­l­tra­do en el sistema sigue siempre el mismo patrón.

Paso 1: infección del sistema

Antes de la infección por rootkit, se suele realizar cierta forma de in­ge­nie­ría social como paso previo: los ci­be­r­de­li­n­cue­n­tes apro­ve­chan en general el punto más débil de los sistemas de seguridad, este es, el co­m­po­ne­n­te humano. Mediante el engaño o la ma­ni­pu­la­ción de otras personas, los hackers obtienen a menudo datos de acceso o co­n­tra­se­ñas. Con ellos inician luego sesión en un ordenador e instalan el rootkit.

No obstante, también es posible infectar con rootkit de otra manera; por ejemplo mediante drive-by downloads (descargas in­vo­lu­n­ta­rias) de una página infectada, al descargar software de una fuente no segura o al hacer clic en un enlace o en un adjunto de un correo de phishing.

Otro método consiste en dejar olvidado un lápiz USB que contenga un rootkit en un sitio público. Es posible que quien lo encuentre, im­pru­de­n­te­me­n­te, se lo lleve a casa y, por cu­rio­si­dad, lo conecte a su ordenador, desatando así la in­fi­l­tra­ción. Los llamados evil maid attacks (que podemos traducir como “ataques de la sirvienta malvada”) funcionan de manera similar: el hacker mismo instala el rootkit ma­nua­l­me­n­te en un ordenador que no esté vigilado. El nombre del método viene de la po­si­bi­li­dad de que el servicio de ha­bi­ta­cio­nes de un hotel pudiera infectar así los or­de­na­do­res de muchos huéspedes.

Paso 2: en­cu­bri­mie­n­to (stealth)

Una vez dentro del sistema, el rootkit se oculta a sí mismo. Para ello empieza a manipular los procesos mediante los cuales los programas y las funciones del sistema in­te­r­ca­m­bian datos. Así, cuando se active un detector de virus, este solo recibirá in­fo­r­ma­cio­nes falsas a base de in­di­ca­cio­nes filtradas por el rootkit. Por este motivo, a menudo ni siquiera un software antivirus pro­fe­sio­nal logra ide­n­ti­fi­car los elementos ma­li­cio­sos basándose en sus firmas de método o en el análisis de su co­m­po­r­ta­mie­n­to (heu­rí­s­ti­ca).

Paso 3: creación de una puerta trasera (backdoor)

Luego, el rootkit construye una llamada backdoor, una entrada al­te­r­na­ti­va al sistema que el hacker puede usar con una co­n­tra­se­ña robada o con una shell o in­té­r­pre­te de comandos, para en adelante poder controlar el ordenador por acceso remoto. El rootkit se encarga entonces de encubrir todos los inicios de sesión y todas las ac­ti­vi­da­des so­s­pe­cho­sas.

Esto permite al atacante instalar otros softwares como Keylogger, usar spyware para espiar las teclas pulsadas, robar datos o, según el grado de au­to­ri­za­ción, cambiar la co­n­fi­gu­ra­ción del sistema. A menudo también se conectan or­de­na­do­res in­fe­c­ta­dos con rootkit a las llamadas botnets, desde las cuales se hace phishing o ataques DDoS con ellos.

¿Qué di­fe­re­n­cia a los rootkits de otros programas ma­li­cio­sos?

Los rootkits son también llamados, por motivos obvios, virus ca­mu­fla­dos, a pesar de que no se pueden cla­si­fi­car como virus por de­fi­ni­ción. ¿Pero qué es exac­ta­me­n­te lo que di­fe­re­n­cia a los rootkits de otros parásitos?

  • Virus: un virus se adhiere a un archivo eje­cu­ta­ble o a un programa (lo que importa es el formato .exe). Si bien sí se replica por sí solo, no puede pro­pa­gar­se solo, sino que no­r­ma­l­me­n­te necesita a las personas o a otros programas para ello.
  • Gusano: este término se refiere a una su­b­ca­te­go­ría especial de virus que se puede propagar por sí sola por las funciones de tra­s­mi­sión de datos del sistema.
  • Troyano: no es un virus, sino un tipo de malware, es decir, de programa malicioso, que se camufla como apli­ca­ción útil. Los hackers usan este tipo de caballos de Troya para abrir puertas traseras en el sistema.
  • Rootkits: los rootkits se co­n­si­de­ran también una su­b­ca­te­go­ría de los troyanos. Muchos troyanos, de hecho, tienen ca­ra­c­te­rí­s­ti­cas típicas de los rootkits. La principal di­fe­re­n­cia entre ellos es que los rootkits se esconden ac­ti­va­me­n­te en el sistema y en la mayoría de los casos conceden al atacante incluso derechos de ad­mi­ni­s­tra­dor.

¿Qué tipos de rootkits existen?

Los rootkits se di­fe­re­n­cian, sobre todo, según el método con el que encubran procesos de malware o ac­ti­vi­da­des de­li­c­ti­vas. Los más usados son los rootkits en modo kernel y en modo usuario. Estos pe­li­gro­sos kits de software son de­sa­rro­lla­dos co­n­ti­nua­me­n­te por los ci­be­r­de­li­n­cue­n­tes para que cada vez sea más difícil co­m­ba­ti­r­los.

Rootkits en modo kernel

Cuando se habla de rootkits, suele hacerse re­fe­re­n­cia a este tipo. Los rootkits en modo kernel anidan en el núcleo del sistema operativo. Este núcleo, también llamado Ring-0, tiene los permisos más avanzados sobre el ordenador, pe­r­mi­tie­n­do así un acceso profundo a todos los co­m­po­ne­n­tes del hardware, así como cambios en la co­n­fi­gu­ra­ción del sistema. Eso significa que, si un atacante coloca ahí un rootkit, consigue el control total sobre todo el sistema.

Tales rootkits re­em­pla­zan partes del núcleo con un código propio. En sistemas ope­ra­ti­vos del tipo Unix, esto ocurre no­r­ma­l­me­n­te mediante módulos cargables del núcleo (LKM, loadable kernel module), por lo que también se llaman LKM rootkits. En sistemas Windows, en cambio, el núcleo se suele manipular di­re­c­ta­me­n­te, in­te­grá­n­do­le si­m­ple­me­n­te nuevas unidades de sistema. In­de­pe­n­die­n­te­me­n­te del pro­ce­di­mie­n­to, el rootkit en modo kernel puede usar esta posición inicial es­tra­té­gi­ca para hacer llegar a la pro­te­c­ción antivirus del ordenador in­fo­r­ma­cio­nes falsas desde el inicio. Esto hace que este tipo de rootkits sea es­pe­cia­l­me­n­te difícil de detectar y de eliminar. Por otro lado, su co­m­ple­ji­dad también los hace re­la­ti­va­me­n­te escasos.

Consejo

Dicha co­m­ple­ji­dad, además, hace a los rootkits en modo kernel más propensos a tener fallos de pro­gra­ma­ción, que en algunos casos pueden des­es­ta­bi­li­zar el sistema. En tal caso, el software malicioso puede mostrar indicios al usuario como las fre­cue­n­tes pantallas azules o los fallos del sistema.

Rootkit en modo usuario

Al contrario que los rootkits en modo kernel, este tipo solo actúa en el nivel de usuario del ordenador, en el que también se en­cue­n­tran todos los programas eje­cu­ta­bles. Puesto que este nivel posee el grado más bajo de au­to­ri­za­ción de la CPU (Ring-3), los rootkits en modo usuario solo pro­po­r­cio­nan al atacante un acceso limitado al ordenador. Por ello también son, a la vez, menos complejos y más comunes que los rootkits en modo kernel, sobre todo en sistemas Windows.

Los rootkits en modo usuario se ocultan a base de captar y manipular el tráfico de datos entre el sistema operativo y los programas de seguridad y antivirus in­s­ta­la­dos. Para ello usan los métodos de DLL injection y API hooking: usan una bi­blio­te­ca de códigos propia (Dynamic Link Library, DLL) que se adhiere al in­te­r­ca­m­bio de datos y desvía las funciones de in­te­r­fa­ces de pro­gra­ma­ción concretas (Ap­pli­ca­tion Pro­gra­m­mi­ng In­te­r­fa­ces, API) hacia el rootkit. Así, el rootkit borra sus huellas de las listas de procesos, como por ejemplo del ad­mi­ni­s­tra­dor de tareas de Windows.

Otros rootkits

Además de estos dos, existen otros dos tipos de rootkits, pero estos se co­n­si­de­ran poco pe­li­gro­sos:

  • Ap­pli­ca­tion rootkit: la variante inicial y más primitiva del rootkit. Sustituye programas del sistema por otros propios o por variantes mo­di­fi­ca­das, de manera que es muy fácil de ide­n­ti­fi­car. Por ello, a su vez, apenas es usada por los hackers.
  • Memory rootkit: estos solo pueden existir en la memoria principal, de forma que des­apa­re­cen del sistema en cuanto se reinicia.

In­no­va­cio­nes en los rootkits

Al igual que muchos otros programas ma­li­cio­sos, los rootkits se de­sa­rro­llan y evo­lu­cio­nan co­n­ti­nua­me­n­te. Así, se crean por ejemplo los llamados bootkits, una forma del rootkit en modo kernel que se es­pe­cia­li­za en re­em­pla­zar el gestor de arranque de un ordenador para des­ac­ti­var los me­ca­ni­s­mos de seguridad del sistema operativo. Cada vez más, los sma­r­t­pho­nes (sobre todo con sistema operativo Android) también se infectan, en general mediante la descarga de una app poco segura. En estos casos se habla de un mobile rootkit.

En 2006, un grupo de in­ve­s­ti­ga­do­res de la Uni­ve­r­si­dad de Michigan dio que hablar al presentar su proyecto SubVirt: un rootkit que se basaba en una máquina virtual y que fue por lo tanto bautizado como VMBR (Virtual Machine Based Rootkit). Tales máquinas se suelen usar para poder ejecutar varios sistemas ope­ra­ti­vos di­fe­re­n­tes (por ejemplo, Linux y Windows) desde un mismo ordenador. El VMBR debería ser capaz, gracias a esta te­c­no­lo­gía, de trasladar el sistema operativo a un entorno virtual y poder así pe­r­ma­ne­cer oculto. Tan solo un año más tarde, in­ve­s­ti­ga­do­res de la Uni­ve­r­si­dad de Stanford ya afirmaban poder detectar tales VMBR sin problema.

Desde entonces, no parece haber habido in­no­va­cio­nes a gran escala en materia de rootkits, pero eso no significa en absoluto que el riesgo haya di­s­mi­nui­do. El exploit kit RIG, por ejemplo, creció en 2018 con un rootkit adicional llamado CEI­D­Pa­ge­Lo­ck. Este se cuela través de la unidad de sistema a sistemas ope­ra­ti­vos Windows y toma el control sobre el navegador de Internet. De este modo, lleva al usuario a páginas web falsas en las que se comete el robo de datos para diversas ac­ti­vi­da­des de­li­c­ti­vas. Con fecha de agosto de 2018, había sobre todo muchos or­de­na­do­res afectados de esta manera en China. Los expertos ya suponían entonces que los programas ma­li­cio­sos se ex­te­n­de­rían más allá de las fronteras del país.

Hecho

Los exploit kits, de la palabra inglesa para “ex­plo­ta­ción”, son conjuntos de he­rra­mie­n­tas cuyos blancos son las grietas en la seguridad de programas comunes como Adobe Flash, Java o Microsoft Si­l­ve­r­li­ght. Hasta ahora el RIG se considera el exploit kit más activo, con hasta 27 000 in­fe­c­cio­nes al día.

Ejemplos de rootkits conocidos

Hoy en día existen rootkits para todo tipo de sistemas ope­ra­ti­vos. A co­n­ti­nua­ción, se presentan dos ejemplos de rootkit que amenazan los sistemas Windows.

  • TDSS o Alureon (de­s­cu­bie­r­to en 2007): también se clasifica como troyano, un indicio de lo poco clara que es la frontera entre ambos tipos de parásitos. Este rootkit manipula el Registro de Windows para des­ac­ti­var, por ejemplo, el ad­mi­ni­s­tra­dor de tareas, la función de ac­tua­li­za­ción o, dado el caso, los antivirus, para después crear una botnet.
  • Ze­roA­c­ce­ss (de­s­cu­bie­r­to en 2011): otro troyano con atributos de rootkit. Este infecta el registro de arranque principal o MBR, además de una unidad de sistema aleatoria, y desactiva luego el Windows Security Center, el Windows Defender y el Firewall. Si eso ocurre, el ordenador pasará a ser usado para el bitcoin mining y los fraudes de clic como parte de una botnet.

Sin embargo, detrás de los rootkits no siempre se esconden este tipo de in­te­n­cio­nes de­li­c­ti­vas. Los si­mu­la­do­res de CD, por ejemplo, también utilizan esa técnica para evadir las re­s­tri­c­cio­nes por derechos de autor. Si eso es legal o relevante desde el punto de vista penal, suele depender del fin y del alcance del uso.

En cualquier caso, en lo que a los derechos de autor se refiere, no solo los co­n­su­mi­do­res con rootkits so­bre­pa­san la frontera legal: la mu­l­ti­na­cio­nal japonesa Sony causó un gran escándalo en 2005, cuando se supo que los derechos de autor XCP (Extended Copy Pro­te­c­tion) de di­fe­re­n­tes CDs musicales fa­bri­ca­dos por ellos habían sido ocultados con un rootkit. La mu­l­ti­na­cio­nal había pre­te­n­di­do evitar así que se hicieran copias ilegales de los discos. El malware, sin embargo, revelaba in­fo­r­ma­ción sobre la música que los clientes es­cu­cha­ban en privado, in­fri­n­gie­n­do así las ha­bi­tua­les leyes de pro­te­c­ción de datos. La crítica más dura que obtuvo Sony, no obstante, fue porque dicho rootkit también se ocultaba frente a antivirus y permitía así a los hackers apro­ve­char­lo para sus propios fines.

Casos similares, como el del juego de ordenador de EA Spore, de 2008 hacen temer a los expertos in­fo­r­má­ti­cos que en el futuro no solo los hackers, sino también cada vez más las grandes compañías uti­li­za­rán rootkits.

¿Cómo pro­te­ge­r­se contra los rootkits?

Puesto que el en­cu­bri­mie­n­to es la es­pe­cia­li­dad de un rootkit, no­r­ma­l­me­n­te es difícil o casi imposible de­te­c­tar­lo y eli­mi­nar­lo. Sin embargo, existen medidas que puedes tomar para estar más seguro.

Evitar una infección

Las medidas de seguridad frente a los rootkits son bá­si­ca­me­n­te las mismas que también sirven para otros tipos de parásitos comunes:

  • Usa programas de seguridad en tu ordenador.
  • Cuida tu sistema con ac­tua­li­za­cio­nes regulares.
  • Amplía tu co­no­ci­mie­n­to sobre las formas más comunes de fraude en Internet, como por ejemplo el phishing.
  • Utiliza co­n­tra­se­ñas fuertes.

Además, existen otros consejos más es­pe­cí­fi­cos para evitar in­fe­c­cio­nes por rootkit.

  • Consejo para legos en in­fo­r­má­ti­ca: usa tu cuenta de ad­mi­ni­s­tra­dor lo menos posible, es­pe­cia­l­me­n­te si estás navegando en Internet. Esa cuenta tiene muchos menos me­ca­ni­s­mos de seguridad que la cuenta de usuario co­n­ve­n­cio­nal. Puesto que la cuenta de usuario, además, solo tiene au­to­ri­za­cio­nes limitadas, los daños en caso de rootkit serán menores.
  • Consejo para expertos: para evitar que un rootkit infecte tu BIOS y se haga así prá­c­ti­ca­me­n­te imposible de eliminar, puedes usar una pro­te­c­ción contra escritura, como por ejemplo un puente (jumper) en la placa base.

¿Cómo reconocer un rootkit?

La mayoría de los antivirus basan su búsqueda en firmas de rootkits ya conocidos o evalúan in­ci­de­n­cias irre­gu­la­res como la eli­mi­na­ción de datos para detectar programas ma­li­cio­sos. El problema es que, a no ser que un rootkit en modo kernel mal pro­gra­ma­do se deje ver con co­n­s­ta­n­tes pantallas en azul, la mayoría de rootkits no dejan ver el menor indicio de la infección del sistema.

Además, como los rootkits cada vez se programan de forma más avanzada, se vuelven cada vez más difíciles de ide­n­ti­fi­car. Ya existen, sin embargo, he­rra­mie­n­tas técnicas diseñadas es­pe­cia­l­me­n­te contra los rootkits como, por ejemplo, el llamado rootkit scan: se trata de una función que algunos programas de seguridad ya contienen, pero para la cual también existen programas concretos. Algunos ejemplos son el Sophos Anti Rootkit y el Rootkit Remover de Bi­t­de­fe­n­der, ambos se pueden obtener gratis.

Este tipo de rootkit scan también se puede ejecutar mediante un boot CD. Este inicia el sistema in­de­pe­n­die­n­te­me­n­te del sistema operativo, de manera que un rootkit inactivo permanece y, con suerte, puede ser detectado por el ra­s­trea­dor de virus en el CD.

Eliminar un rootkit

Por desgracia, aún no existe ninguna opción cien por cien segura para eliminar un rootkit de un ordenador. El índice de éxito incluso en los programas de rastreo pro­fe­sio­na­les como AntiVir, Kapersky o Microsoft deja mucho que desear, según varios estudios. Por ello, la revista Co­m­pu­te­r­bi­ld re­co­mie­n­da usar al menos una co­m­bi­na­ción de tres de esos programas.

A pesar de todo, ya que algunos rootkits pueden es­co­n­de­r­se en la pro­fu­n­di­dad de la BIOS, ni siquiera así se puede estar del todo seguro. Así, a menudo queda solo la opción de limpiar el soporte de datos e instalar de nuevo el sistema operativo para des­ha­ce­r­se del parásito de una vez por todas.

En resumen: la amenaza está presente

Los rootkits son un peligro es­pe­cia­l­me­n­te pe­r­si­s­te­n­te y pueden pro­po­r­cio­nar a de­li­n­cue­n­tes el control total sobre tu ordenador. Conocer el peligro es el primer paso en la dirección correcta. La medida de pro­te­c­ción más im­po­r­ta­n­te es, como es habitual, la pre­ve­n­ción de la infección, ya que los rootkits son muy difíciles de detectar y, aún más, de eliminar. En esos casos, a menudo solo se puede instalar el sistema de nuevo.

Durante la co­n­fe­re­n­cia Black Hat, en enero de 2006, se habló sin embargo de rootkits que so­bre­vi­ven incluso tras re­fo­r­ma­tear el disco duro, por ejemplo, porque manipulan la ACPI (Advanced Co­n­fi­gu­ra­tion and Power Interface), que es la re­s­po­n­sa­ble de la gestión ene­r­gé­ti­ca del ordenador, o porque anidan en la BIOS. Así pues, mientras no haya ninguna solución fiable, los rootkits pro­ba­ble­me­n­te seguirán siendo he­rra­mie­n­tas de­li­c­ti­vas altamente complejas y, por lo tanto, un peligro.

Ir al menú principal