como detectar rootkits linux

Cómo detectar rootkits en Linux con Chkrootkit y Rkhunter.

Detectar rootkits con Chkrootkit o Rootkit Hunter es un proceso muy fácil, aunque la dificultad lo presenta la eliminación.
Los Rootkits son herramientas maliciosos que garantizan acceso o privilegios a un sistema.
Uno de los aspectos principales de los Rootkits es que ocultan muy bien su presencia, detectarlos no es fácil. En algunos casos los rootkits pueden corromper el kernel del sistema o incluso el hardware de un equipo.

En general cuando un rootkit es detectado se asume que la víctima debe reinstalar el sistema, en casos extremos reemplazar el hardware.
Sin embargo otro de los problemas es la cantidad de falsos positivos en la búsqueda de rootkits por lo que en este tutorial se verán dos herramientas de detección diferentes, chkrootkit y rkhunter.

Como instalar y usar Chkrootkit:


Chkrootkit incluye las siguientes herramientas:

chkrootkit: el programa principal que chequea los binarios del sistema operativo en busca de modificaciones hechas por rootkits para saber si los códigos fueron adulterados.

Ifpromisc.c: chequea si las interfaces estan modo promiscuo, si una interfaz de red está en modo promiscuo puede ser usada por un atacante o por un software malicioso para captura tráfico de la red y analizarlo después.

chklastlog.c: revisa lo que fue eliminado de lastlog. Lastlog es un comando que muestra información sobre los logins en el sistema. Un atacante o rootkit podría modificarlos para evitar detección si el administrador usa el comando para acceder a información sobre los ingresos.

Chkwtmp.c: Similar al script anterior, este script chequea el archivo wtmp que contiene información sobre los logins en el sistema, chkwtmp.c intenta detectar modificaciones en este archivo.

check_wtmpx.c: Igual que el anterior pero para sistemas Unix Solaris.

chkproc.c: busca indicios de troyanos en LKM (Loadable Kernel Modules).

chkdirs.c: similar al anterior chequea por troyanos dentro de los módulos del kernel.

strings.c: busca por reemplazo de strings que puedan ocultar l rootkits.

Chkutmp.c: similar al chk2tmp pero trabaja sobre el archivo utmp.

Todos los scripts mencionados son ejecutados cuando ejecutamos chkrootkit.

Detectar Rootkits con Chkrootkit:

Para instalar chkrootkit en Debian y sistemas basados como Ubuntu podemos ejecutar:

apt install chkrootkit -y
como instalar chkrootkit

Una vez instalado para ejecutarlo solamente tenemos que ejecutar:

sudo chkrootkit
como detectar rootkits

Durante la ejecución se puede ver como todos los scripts explicados al principio se ejecutan haciendo cada uno su parte con el fin de detectar rootkits o códigos maliciosos.

Se puede tener una vista más comoda por pantallas ejecutando:

sudo chkrootkit | less
vista por panatalla chkrootkit

También podemos exportar los resultados ejecutando:

sudo chkrootkit > resultados
exportar resultados chkrootkit

Nota: se puede asignar cualquier nombre al archivo de salida (en este caso “resultados”)

Para ver los resultados podemos ejecutar:

less resultados
detectar rootkits linux

Por defecto chkrootkit se ejecuta como se explico en este tutorial, pero también es posible automatizar escaneos editando el archivo de configuración ubicado en /etc/chkrootkit.conf con nano o cualquier otro editor de texto:

nano /etc/chkrootkit.conf
escanear rootkits

Para que el escaneo sea automático en “RUN_DAILY” el valor debe ser “true” como en la captura anterior.

Cómo detectar Rootkits con Rkhunter:

Otra opción a chkrootkit es Rootkit Hunter, un complemento considerando la posibilidad de falsos positivos que podrían descartarse con la segunda opinión de esta herramienta.
Para instalar RkHunter en Debian y sistemas derivados como ubunto ejecutamos:

apt install rkhunter -y
Instalar rootkit hunter

Una vez instalado, para realizar un escaneo ejecutamos:

rkhunter --check
ejecutar rkhunter

Como ven, al igual que con chkrootkit el primer paso de Rootkit Hunter es analizar los archivos binarios del sistema, también librerías y strings.

Cómo detectar rootkits con Chkrootkit y Rkhunter

A diferencia de chkrootkit, Rkhunter va a pedirnos que presionemos ENTER para seguir con cada paso. En el paso anterior Rkhunter revisó binarios y librerias, ahora, en el segundo paso después de que presionemos ENTER, intentará detectar rootkits conocidos:

detectar rootkits con Chkrootkit y Rkhunter.

Tras volver a apretar ENTER, RkHunter pasará al siguiente paso analizando por mas rootkits, troyanos y malwares.

detectar rootkits con Chkrootkit y Rootkit hunter.

Nuevamente si apretamos ENTER rootkithunter analizará las interfaces de red y los puertos conocidos por ser usados por troyanos y backdoors.

eliminar rootkits

Finalmente, con el ultimo ENTER Rkhunter revelará información del proceso y la ruta del archivos con los resultados ubicados en /var/log/rkhunter.log.

como eliminar rootkits

Espero que este tutorial sobre Cómo detectar rootkits con Chkrootkit y Rkhunter haya resultado útil.
Pueden seguir Linux Latinoamérica para más tutoriales y tips sobre Linux, redes y seguridad.