CONCEPTO DE ROOTKITS
Rootkit es un conjunto de herramientas usadas frecuentemente por los intrusos informáticos o crackers con el objetivo de acceder ilícitamente a un sistema informático
Hay rootkits para una amplia variedad de sistemas operativos, como Linux, Solaris o Microsoft Windows. Por ejemplo, el rootkit puede esconder una aplicación que lance una consola cada vez que el atacante se conecte al sistema a través de un determinado puerto. Los rootkits del kernel o núcleo pueden contener funcionalidades similares.
Un backdoor puede permitir también que los procesos lanzados por un usuario sin privilegios de administrador ejecuten algunas funcionalidades reservadas únicamente al superusuario. Todo tipo de herramientas útiles para obtener información de forma ilícita pueden ser ocultadas mediante rootkits
¿Cuales son sus objetivos?
Tratan de encubrir a otros procesos que están llevando a cabo acciones maliciosas en el sistema. Por ejemplo, si en el sistema hay una puerta trasera para llevar a cabo tareas de espionaje, el rootkit ocultará los puertos abiertos que delaten la comunicación; o si hay un sistema para enviar spam, ocultará la actividad del sistema de correo.
Los rootkits, al estar diseñados para pasar desapercibidos, no pueden ser detectados. Si un usuario intenta analizar el sistema para ver qué procesos están ejecutándose, el rootkit mostrará información falsa, mostrando todos los procesos excepto él mismo y los que está ocultando.
O si se intenta ver un listado de los ficheros de un sistema, el rootkit hará que se muestre esa información pero ocultando la existencia del propio fichero del rootkit y de los procesos que esconde.
Cuando el antivirus hagan una llamada al sistema operativo para comprobar qué ficheros hay, o cuando intente averiguar qué procesos están en ejecución, el rootkit falseará los datos y el antivirus no podrá recibir la información correcta para llevar a cabo la desinfección del sistema.
Rootkit es un conjunto de herramientas usadas frecuentemente por los intrusos informáticos o crackers con el objetivo de acceder ilícitamente a un sistema informático
Hay rootkits para una amplia variedad de sistemas operativos, como Linux, Solaris o Microsoft Windows. Por ejemplo, el rootkit puede esconder una aplicación que lance una consola cada vez que el atacante se conecte al sistema a través de un determinado puerto. Los rootkits del kernel o núcleo pueden contener funcionalidades similares.
Un backdoor puede permitir también que los procesos lanzados por un usuario sin privilegios de administrador ejecuten algunas funcionalidades reservadas únicamente al superusuario. Todo tipo de herramientas útiles para obtener información de forma ilícita pueden ser ocultadas mediante rootkits
¿Cuales son sus objetivos?
Tratan de encubrir a otros procesos que están llevando a cabo acciones maliciosas en el sistema. Por ejemplo, si en el sistema hay una puerta trasera para llevar a cabo tareas de espionaje, el rootkit ocultará los puertos abiertos que delaten la comunicación; o si hay un sistema para enviar spam, ocultará la actividad del sistema de correo.
Los rootkits, al estar diseñados para pasar desapercibidos, no pueden ser detectados. Si un usuario intenta analizar el sistema para ver qué procesos están ejecutándose, el rootkit mostrará información falsa, mostrando todos los procesos excepto él mismo y los que está ocultando.
O si se intenta ver un listado de los ficheros de un sistema, el rootkit hará que se muestre esa información pero ocultando la existencia del propio fichero del rootkit y de los procesos que esconde.
Cuando el antivirus hagan una llamada al sistema operativo para comprobar qué ficheros hay, o cuando intente averiguar qué procesos están en ejecución, el rootkit falseará los datos y el antivirus no podrá recibir la información correcta para llevar a cabo la desinfección del sistema.
¿Cómo prevenirnos?
Es necesario un sistema que vigile no únicamente la actividad de los archivos en el disco, sino que vaya más allá. En lugar de analizar los archivos byte a byte, debe vigilarse lo que hacen al ejecutarse.
Un rootkit necesita llevar a cabo algunas tareas que se podrían considerar “típicas”, como adquirir derechos de root, modificar llamadas básicas al sistema operativo, falsear sistemas de reporte de datos del sistema… Todas estas tareas, una a una, entrañan poco peligro. Pero todas ellas, juntas y en el mismo momento, llevadas a cabo por el mismo programa, proporcionan información clara de que algo extraño está pasando en la computadora. Si las soluciones antivirus fracasan definitivamente a la hora de detectar un rootkit, las nuevas tecnologías de detección de amenazas por comportamiento tienen su mejor prueba de eficacia en la detección y bloqueo de rootkits. Estas tecnologías no basan su funcionamiento en condicionantes previamente aprendidos sobre patrones cerrados de identificación de amenazas. Su éxito se basa en la investigación inteligente y automática de la situación de un proceso en una computadora.
Cuando una serie de acciones se llevan a cabo sobre el sistema y todas ellas (o, al menos, alguna) pueden suponer un riesgo para la integridad de la información o el correcto funcionamiento de la máquina, se evalúan una serie de factores que sirven para calificar la peligrosidad de esa tarea. Por ejemplo, que un proceso quiera tomar derechos de administración en un sistema puede ser más o menos habitual. Y tiene un cierto riesgo, sin duda, pero no hay que alertar por ello. Un simple instalador para un juego puede necesitar tener derechos de administrador para poder llevar a cabo las modificaciones necesarias y poder ejecutarse correctamente.
O por ejemplo, es posible que un determinado proceso deba permanecer oculto, ya que no existe posibilidad de interacción, o que un determinado proceso abra un puerto en concreto para comunicarse, o que registre pulsaciones de teclas. Pero todas esas características juntas hacen que el proceso se pueda considerar como una amenaza y sea necesario un análisis en profundidad para poder autorizar la ejecución de manera segura.
Una vez infectado, ¿qué hacer?
A pesar de lo que viene diciéndose, los rootkits pueden eliminarse (aunque no tan fácilmente). Estos programas se autoprotegen escondiéndose y evitando que ningún otro proceso (como un antivirus) pueda detectarlos. Pero para que ese proceso pueda ocultarse, debe estar en funcionamiento y activado en memoria.
La mejor manera de evitar que el proceso entre en acción, es evitar el arranque del sistema operativo en el disco en el que se encuentra el rootkit, utilizando un disco diferente al del sistema infectado; como puede ser un CD. Así, si el rootkit es conocido, podrá eliminarse.
Sin embargo, si el rootkit no es conocido (es decir, que ha sido desarrollado específicamente para un sistema en concreto), cualquier antivirus fracasará. En este caso, el problema informático es casi el menos importante: hay una persona que, intencionadamente, quiere hacer daño a su empresa y se ha molestado en entrar en el sistema para perjudicarle.
Es necesario un sistema que vigile no únicamente la actividad de los archivos en el disco, sino que vaya más allá. En lugar de analizar los archivos byte a byte, debe vigilarse lo que hacen al ejecutarse.
Un rootkit necesita llevar a cabo algunas tareas que se podrían considerar “típicas”, como adquirir derechos de root, modificar llamadas básicas al sistema operativo, falsear sistemas de reporte de datos del sistema… Todas estas tareas, una a una, entrañan poco peligro. Pero todas ellas, juntas y en el mismo momento, llevadas a cabo por el mismo programa, proporcionan información clara de que algo extraño está pasando en la computadora. Si las soluciones antivirus fracasan definitivamente a la hora de detectar un rootkit, las nuevas tecnologías de detección de amenazas por comportamiento tienen su mejor prueba de eficacia en la detección y bloqueo de rootkits. Estas tecnologías no basan su funcionamiento en condicionantes previamente aprendidos sobre patrones cerrados de identificación de amenazas. Su éxito se basa en la investigación inteligente y automática de la situación de un proceso en una computadora.
Cuando una serie de acciones se llevan a cabo sobre el sistema y todas ellas (o, al menos, alguna) pueden suponer un riesgo para la integridad de la información o el correcto funcionamiento de la máquina, se evalúan una serie de factores que sirven para calificar la peligrosidad de esa tarea. Por ejemplo, que un proceso quiera tomar derechos de administración en un sistema puede ser más o menos habitual. Y tiene un cierto riesgo, sin duda, pero no hay que alertar por ello. Un simple instalador para un juego puede necesitar tener derechos de administrador para poder llevar a cabo las modificaciones necesarias y poder ejecutarse correctamente.
O por ejemplo, es posible que un determinado proceso deba permanecer oculto, ya que no existe posibilidad de interacción, o que un determinado proceso abra un puerto en concreto para comunicarse, o que registre pulsaciones de teclas. Pero todas esas características juntas hacen que el proceso se pueda considerar como una amenaza y sea necesario un análisis en profundidad para poder autorizar la ejecución de manera segura.
Una vez infectado, ¿qué hacer?
A pesar de lo que viene diciéndose, los rootkits pueden eliminarse (aunque no tan fácilmente). Estos programas se autoprotegen escondiéndose y evitando que ningún otro proceso (como un antivirus) pueda detectarlos. Pero para que ese proceso pueda ocultarse, debe estar en funcionamiento y activado en memoria.
La mejor manera de evitar que el proceso entre en acción, es evitar el arranque del sistema operativo en el disco en el que se encuentra el rootkit, utilizando un disco diferente al del sistema infectado; como puede ser un CD. Así, si el rootkit es conocido, podrá eliminarse.
Sin embargo, si el rootkit no es conocido (es decir, que ha sido desarrollado específicamente para un sistema en concreto), cualquier antivirus fracasará. En este caso, el problema informático es casi el menos importante: hay una persona que, intencionadamente, quiere hacer daño a su empresa y se ha molestado en entrar en el sistema para perjudicarle.