Llegamos a ustedes gracias a:



Reportajes y análisis

Cómo detectar y eliminar un rootkit en Windows 10

[13/11/2017] Los rootkits son una forma particularmente insidiosa de malware, porque se cargan antes de arrancar un sistema operativo y pueden ocultarse de los exploradores y de la protección antimalware ordinaria. Su capacidad para eludir la detección también los hace extraordinariamente difíciles de eliminar y limpiar después.

Por diseño, los rootkits son difíciles de encontrar. Para sus humildes autores, incluso el más mínimo indicio de posible infección por rootkit, es razón suficiente para volver a instalar todo desde una copia de seguridad verificada y actual. Si no podemos determinar cuándo ocurrió la infección, hay que tratar a todas las imágenes de copia de seguridad disponibles como infectadas y descartarlas. Esto proporciona un impulso adicional para separar los datos de los archivos del sistema operativo, y para realizar copias de seguridad regulares pero independientes de cada una. Por lo tanto, la pérdida del entorno de sistema operativo OS/tiempo de ejecución no obligará también a la eliminación de los archivos de datos.

En esta historia, echaremos un vistazo a cómo funcionan los rootkits, algunos síntomas comunes de la infección por rootkits, y las herramientas y recursos para detectar y eliminarlos.

Definición de Rootkit

Wikipedia define rootkit como "una colección de software de computadora, típicamente maliciosa, diseñada para permitir el acceso a una computadora o a áreas de su software que de otra manera no se permitirá (por ejemplo, a un usuario no autorizado) y a menudo oculta su existencia o la existencia de otro software. El término rootkit es una concatenación de 'root' (el nombre tradicional de la cuenta privilegiada en sistemas operativos tipo Unix), y la palabra 'kit' (que se refiere a los componentes de software que implementan la herramienta). La 'herramienta' en la frase anterior se refiere al rootkit en sí y refleja la creciente tendencia de los creadores de malware a hacer uso de bibliotecas de código y varios otros tipos de bloques de construcción de programación para construir tales cosas, incluyendo rootkits.

Generalmente, los rootkits se pueden dividir en dos categorías: modo usuario y modo kernel. (El rootkit más famoso, Hacker Defender, es un ejemplo de un rootkit de modo de usuario). En el sistema operativo Windows, los programas ordinarios se ejecutan en modo de usuario, que solo puede realizar llamadas mediadas en los servicios y recursos del sistema operativo. Los programas privilegiados y el sistema operativo se ejecutan en modo kernel, que puede acceder directamente a los recursos del sistema operativo y puede interactuar directamente con otros servicios del sistema operativo. Por lo tanto, los rootkits del modo kernel operan esencialmente como si fueran parte del propio Windows.

Eso es lo que hace que cualquier rootkit de kernel sea tan peligroso y tan difícil de detectar y eliminar. Tal rootkit modifica el kernel de Windows. Se hace "persistente", es decir que se activa cada vez que un usuario arranca la PC. Esto significa que un rootkit puede ejecutar todo, desde keyloggers a backdoors. Y como puede acceder al núcleo del sistema operativo y a sus APIs, un rootkit puede ocultarse interceptando cualquier llamada al sistema que incluya un nombre de archivo o cualquier otro dato que pueda revelar su existencia. Si una llamada implica cualquier dato que pueda revelar el rootkit a un usuario, se oculta o suprime, por lo que el usuario no ve nada alarmante o fuera de lo común.

Infección por Rootkit

Como cualquier otro programa, un rootkit requiere la interacción del usuario o el compromiso del sistema para tener residencia en una PC. El mecanismo de infección más común es engañar a un usuario desprevenido para que descargue e instale un archivo o programa de algún tipo (por ejemplo, una imagen, un archivo ejecutable, un archivo PDF, una macro, etc.), a menudo desde un sitio web o un archivo adjunto de correo electrónico. Por lo tanto, la primera regla de seguridad que todos los empleados deben aprender cuando se les da acceso a las computadoras corporativas es nunca abrir archivos adjuntos en correos electrónicos de remitentes desconocidos, y solo descargar o instalar software aprobado por el departamento de TI (preferiblemente desde una descarga proporcionada por TI) o archivo compartido. Se podrían evitar muchas molestias y el esfuerzo de limpiar si los usuarios siguieran estas sencillas reglas.

Una vez que se instala un rootkit en una PC, puede tomar medidas para enmascarar su presencia (como insertarse en programas que de otra manera serían benignos, normalmente presentes en las PCs, o incluso como parte del propio sistema operativo Windows). Generalmente, los rootkits operan con los niveles más altos de privilegios que pueden adquirir, lo que normalmente significa 'Administrador', 'Nivel de Confianza' o niveles del Sistema. Esto significa que, una vez instalados, los rootkits pueden hacer casi cualquier cosa que deseen dentro de un sistema Windows infectado, incluyendo la instalación de programas de su propia elección, el robo de información de cuentas e identidad y "llamar a casa" para cargar información obtenida ilícitamente -y tal vez sensible- o valiosa a terceros a través de Internet.

Ejemplos de Rootkit

Los rootkits originales tomaron su nombre de varias herramientas administrativas modificadas de forma maliciosa en el entorno Unix que fueron diseñados para conceder acceso no autorizado al root de estos sistemas. Según Wikipedia, el primer rootkit conocido data de 1990, escrito para SunOS por Lane Davis y Steven Dake. Subvierte los intentos de compilar el comando de inicio de sesión de Unix, y agrega una contraseña de puerta trasera conocida por los atacantes, además de cualquier contraseña que el usuario asigne.

El primer rootkit de Windows NT se remonta a 1999, en forma de un caballo de Troya llamado NTRootKit creado por Greg Hoglund (también es coautor, con James Butler, de un excelente libro sobre este tema: Rootkits: Subverting the Windows Kernel, Addison-Wesley, 2006, ISBN: 0321294319). Puede consultar la Lista de Rootkits en Bleeping Computer para obtener la lista más actual y completa de rootkits identificados. De estos elementos, el rootkit Rustock (identificado como Backdoor.Rustock en el recurso anterior) es probablemente el más conocido y más temido en el actual arsenal de rootkits.

Síntomas de Rootkit

Un síntoma típico de la infección por rootkit es que la protección antimalware deja de funcionar. Obtendrá alertas sobre varias causas que evitan que el antimalware proteja su PC. Si una aplicación antimalware simplemente se niega a ejecutarse, ya tiene motivos para preocuparse, pues a menudo es un indicador inequívoco de que una infección de rootkit está activa.

Otro síntoma claro es cuando la configuración de Windows cambia independientemente, sin ninguna interacción del usuario. Si observa un comportamiento inesperado, como el cambio de elementos anclados en la barra de tareas o imágenes de fondo que cambian o desaparecen (como en la pantalla de bloqueo o en el protector de pantalla), también podría indicar una infección de rootkit.

Los dispositivos de entrada congelados también pueden ser signo de infección. Si de repente no obtiene respuesta de su mouse o el teclado, que dura desde unos pocos segundos a unos pocos minutos, compruebe para ver si los dispositivos USB y otros dispositivos de E/S están desconectados y reconéctelos. Si se produce este tipo de comportamiento en conjunto con los programas antimalware que no funcionan y/o misteriosos cambios en la configuración de Windows, una infección de rootkit se convierte en una posibilidad real.

Por último, controle su uso de la red. Cuando un sistema está inactivo, debe haber un tráfico mínimo de red. Sin embargo, si su máquina envía y recibe una gran cantidad de datos cuando está aparentemente inactiva, esto podría indicar una infección. Utilice el monitor de recursos para comprobar qué procesos o servicios están involucrados con el tráfico. No confíe en el nombre de proceso o servicio que le muestran. En su lugar, debe tratar de determinar si esos procesos o servicios tienen razones comprensibles válidos para acceder a la red. Si no, este comportamiento puede ser señal de un rootkit enmascarado como un proceso (o procesos) normal de Windows.

La detección de Rootkits

Debido a que un rootkit funciona a niveles tan altos de privilegio y, a menudo oculta el aviso y puede subvertir incluso las herramientas antimalware activas, la detección del rootkit puede ser complicada. De hecho, la detección de rootkit generalmente requiere de herramientas especiales o los complementos específicos de los paquetes antimalware. Los métodos de detección de rootkit a menudo se basan en la detección, por deducción, así como la detección directa de archivos o firmas específicas.

En la mayoría de los casos, ejecutar el software de detección de rootkit requiere arrancar un sistema sospechoso en un sistema operativo alternativo que sea de confianza, que esté limpio y no esté infectado; a continuación, utilice herramientas de tiempo de ejecución en el entorno de arranque alternativo para buscar componentes de rootkit y elementos de disco utilizando herramientas de examen forense.

Otros métodos de detección incluyen la observación del comportamiento (en busca de acceso a los archivos del sistema de alta seguridad, patrones inusuales de uso del programa o de la API, control de las transferencias ilegales o fuera de los límites de control, y otros signos de subversión). En el mismo sentido, algunas herramientas de detección de rootkit también realizan la exploración de diferencia (comparando versiones limpias y conocidas de los archivos desde una fuente de referencia de confianza con los que parecen ser "los mismos archivos en un sistema sospechoso), o la realización de análisis de volcado de memoria (para mirar las llamadas que hacen los programas en tiempo de ejecución y para inspeccionar los valores o variables que pasan mientras lo hace).

Escaneo de Rootkit

La mejor manera de determinar si una PC está infectado con un rootkit es ejecutar un escáner de rootkit. Hay numerosas herramientas adecuadas para los administradores de TI o los usuarios empoderados. De hecho, los principales proveedores de antimalware, desde Avast (o Malwarebytes con la misma capacidad y gratis) pasando por Symantec (Norton Power Eraser) a Kaspersky, ofrecen facilidades de escaneo de rootkit a sus abonados o usuarios. También están disponibles muchos escáneres de rootkit de terceros, algunos gratis, otros no.

Nuestra elección personal es GMER, una aplicación freeware de la conocida empresa antimalware Avast. Es una herramienta de detección de rootkits relativamente ligera y robusto. Con tan solo 372KB de tamaño, no requiere reiniciar el sistema o una alternativa, arranque el sistema operativo de confianza para ejecutarlo.

Captura de pantalla de GMER muestra mensaje de detección emergente.

GMER requiere que los usuarios tengan un conocimiento práctico decente de Windows y su núcleo. De lo contrario, sus resultados pueden ser algo difíciles de interpretar. Dicho esto, aunque la propia aplicación no incluye ningún archivo de ayuda, sus listas de documentación en línea trazan las salidas de los rootkits más comunes (ya conocidos) que pueden infectar Windows (Ver Rootkits, para esa lista exhaustiva y el FAQ, para obtener información sobre el manejo del rootkit Rustock).

Eliminación de Rootkits

Vale la pena repetir que, si bien podría ser demasiado prudente, con frecuencia no intentamos la detección y reparación de una PC sospechosa de estar infectada, y en su lugar implementamos una nueva imagen limpia. Esto tarda aproximadamente la misma cantidad de tiempo que una búsqueda de procesos ocultos a fondo y produce un sistema limpio garantizado. La implementación de una imagen limpia es, en lo que a nosotros respecta, el mejor método de eliminación de rootkits de todos. Pero por supuesto, si no mantiene un conjunto actual de las imágenes de sustitución como nosotros, no tendrá más remedio que intentar la reparación y recuperación.

BleepingComputer mantiene un conjunto de enlaces (11 en total) a una variedad de herramientas de eliminación de rootkit, a las que se refiere como "anti-rootkits. MajorGeeks ofrece una lista aún más amplia que incluye entradas de la mayoría de los principales proveedores de antimalware, así como más herramientas con un propósito especial (22 en total, pero algunas tienen fechas de liberación que datan del año 2006). Algunas de estas herramientas apuntan a variedades o tipos específicos de rootkit, otras tienen un objetivo más general.

A veces, la detección automática pedirá a los usuarios iniciar la eliminación de rootkits y hacer una limpieza; a veces una herramienta de detección recomendará una herramienta específica, pero diferente, para la eliminación y limpieza. Si una imagen de sustitución limpia no está disponible como una alternativa más segura, uno no tiene más remedio que trabajar a través de los pasos necesarios para utilizar una herramienta específica y esperar lo mejor.

Recursos

Los rootkits no solo son difíciles de detectar, también pueden ser difíciles de eliminar. Si sus esfuerzos para manejar la eliminación no tienen éxito o están incompletos, puede recurrir a la ayuda de otros expertos. Si su empleador tiene una suscripción antimalware de algún tipo, puede probar el personal de soporte técnico del proveedor de antimalware para obtener asistencia, herramientas adicionales y la solución de problemas o de eliminación de instrucciones para ayudar a acelerar el proceso.

Para aquellos que no pueden tener acceso a este tipo de soporte técnico, existen numerosos foros en línea donde puede solicitar ayuda. Puede enviar un correo electrónico a los creadores de la herramienta de eliminación de rootkits elegida para pedir más ayuda y apoyo. O puede recurrir a uno de estos foros en línea donde la ayuda es gratuita y razonablemente experta, aunque no siempre es ultra rápida (aquí se aplica la premisa de 'se obtiene lo que se paga' como en todas partes, y a menudo debe tener paciencia para ahorrar dinero en situaciones como éstas):

* BleepingComputer opera un conjunto activo y vibrante de foros de ayuda, organizados por las versiones de Windows. También ofrecen una amplia gama de virus y guías de eliminación de software malicioso, donde se puede buscar un rootkit, por instrucciones e información relacionada específica. También puede seguir su receta para informar de posibles infecciones, presentar los informes digitales necesarios, y solicitar la asistencia de los miembros del foro.

* TenForums.com es nuestro sitio favorito de autoayuda para Windows 10 (EightForums.com y SevenForums.com son lo mismo para las otras versiones). Cada uno de estos sitios tiene un silo de antivirus, firewalls y seguridad (Win10), y también puede buscar rootkit aquí.

* MalwareTips.com opera foros y ofrece tutoriales en todo el espectro de malware, como tutoriales de eliminación de rootkits e instrucciones. Su foro de análisis de malware ofrece ayuda estructurada en el tratamiento de las infecciones de malware de todo tipo.

La vida después de los Rootkits

De hecho, aunque el proceso puede ser largo y arduo, los rootkits pueden ser superados. Una práctica cuidadosa de la seguridad informática es la mejor manera de evitar tales problemas, pero cuando un rootkit surge, puede trazar su camino a través del proceso de eliminación y recuperación.

Una vez más, instamos a los que tratan este tipo de esfuerzos de limpieza para reflexionar limpiando cuidadosamente sus unidades y empezar de nuevo en lugar de tomar la ruta de eliminación. Esto a menudo toma menos tiempo y produce un sistema limpio conocido, mientras que la eliminación de rootkits siempre deja al menos una pequeña posibilidad de que la remisión dará paso a la reinfección. Pero cuando los datos clave o aplicaciones de otro modo no recuperables pueden estar en juego, tiene que tomar decisiones en base a las posibilidades. En ese caso, la buena suerte en la consecución de un resultado positivo en su totalidad.