Instalación y uso de chkrootkit

Cómo analizar tu servidor en busca de rootkits y configurar comprobaciones de seguridad automatizadas.

Chkrootkit (check rootkit) es una herramienta gratuita y de código abierto para detectar rootkits y otros programas maliciosos en sistemas Linux. Es capaz de identificar prácticamente todos los rootkits modernos conocidos y está disponible en la mayoría de las distribuciones principales.

La herramienta funciona tanto en VPS como en servidores dedicados.

Instalación

Opción 1 — mediante el gestor de paquetes (recomendado):

apt-get install chkrootkit

Opción 2 — compilar desde el código fuente (para obtener la última versión):

wget --passive-ftp ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz
tar xvfz chkrootkit.tar.gz
cd chkrootkit-*/
make sense

Una vez compilado, mueve el directorio a una ubicación adecuada:

cd ..
mv chkrootkit-/ /usr/local/chkrootkit

Crea un enlace simbólico para poder invocarlo desde cualquier directorio:

ln -s /usr/local/chkrootkit/chkrootkit /usr/local/bin/chkrootkit

Opciones de línea de comandos

Opción Descripción
-h Mostrar la ayuda
-V Mostrar la versión
-l Listar todos los tests disponibles
-d Activar el modo de depuración
-q Modo silencioso — mostrar solo los archivos infectados
-x Modo extendido — salida detallada por cada archivo analizado
-r dir Usar el directorio especificado como raíz
-n Omitir las comprobaciones en montajes NFS
-p dir1:dir2 Especificar las rutas de los programas externos que usa chkrootkit

Ejecutar un análisis

Para realizar un análisis completo del sistema:

chkrootkit

Ejemplo de salida:

ROOTDIR is /' Checking amd'...                                           not found
Checking basename'...                                      not infected Checking cron'...                                          not infected
Checking find'...                                          not infected Checking ls'...                                            not infected
Checking ps'...                                            not infected Checking sshd'...                                          not infected
...
Checking `bindshell'...                                     INFECTED (PORTS: 465)
...

Interpretar los resultados

Estado Significado
not infected No se han detectado firmas de rootkits conocidos
INFECTED El programa coincide con una firma conocida de rootkit o malware
not found El programa no se encontró en el sistema y no fue analizado
not tested Test omitido — no aplicable a este sistema operativo, dependencia ausente o deshabilitado mediante un flag
Vulnerable but disabled El programa está infectado pero no se encuentra en ejecución

Falso positivo conocido: si ves Checking 'bindshell'... INFECTED (PORTS: 465) en un servidor de correo, no te alarmes. El puerto 465 corresponde a SMTPS (Secure SMTP) — se trata de una falsa alarma bien documentada que chkrootkit siempre ha generado en servidores de correo.

Importante

chkrootkit informa de los problemas — no los resuelve. Cada advertencia debe investigarse manualmente para determinar si se trata de una amenaza real o de un falso positivo antes de tomar cualquier medida.

Automatizar los análisis con cron

Puedes programar análisis periódicos y recibir los resultados por correo automáticamente.

Primero, localiza la ruta completa de chkrootkit:

which chkrootkit

Salida:

/usr/sbin/chkrootkit

Abre tu crontab:

crontab -e

Añade una tarea — por ejemplo, para ejecutar un análisis completo cada noche a las 3:00:

0 3 * * * /usr/sbin/chkrootkit 2>&1 | mail -s "chkrootkit Report" tu@email.com

Sustituye la ruta por la que devuelva which chkrootkit y actualiza la dirección de correo con la tuya.

Ayuda

¿Tienes dudas o necesitas ayuda? Escríbenos a través del sistema de tickets — siempre estamos aquí para ayudarte!

¿Necesitas ayuda?Nuestros ingenieros te ayudarán gratuitamente con cualquier pregunta en minutosContáctanos