Buscando malware en sistemas GNU/Linux

No suele ser común encontrar malware en sistemas Linux. Ahora bien, la cosa cambia cuando por ejemplo administras un servidor de correo. En tal caso no sólo el spam, sino también el malware puede propagarse fácilmente utilizando ese medio. Un antivirus que analice los correos que pasan por nuestro servidor se haría necesario en este caso. Otro ejemplo: un servidor de ficheros compartidos con SAMBA, también puede ser un medio fácil de propagación.

En otros casos podemos encontrarnos con el hecho de que un atacante haya conseguido acceder a nuestra máquina e instalar rootkits, malware que permanece oculto en el sistema y que llevan su propia hoja de ruta (envío de información sensible, manipulación de procesos de sistema, etc…) y que son difícilmente detectables por los administradores de sistemas.

Sea como fuere, no está de más saber que disponemos de herramientas de detección de malware en sistema Linux para los casos que consideremos necesarios.

Búsqueda de Rootkits con rkhunter y chkrootkit

En sistemas Linux contamos con dos útiles herramientas -entre otras muchas- para analizar nuestro sistema en busca de rootkits. En este caso voy a hablar de chkrootkit (Check Rootkit) y rkhunter (Rootkit Hunter).

Chkrootkit

La más sencilla de las dos.

Para instalarlo, desde un sistema Debian o derivado:

aptitude install chkrootkit

Y para un sistema Red Hat o derivado:

yum install chkrootkit

Para analizar el sistema bastará con lanzar el comando:

chkrootkit

Ojo en este caso con los falsos positivos, especialmente si obtenemos una línea:

Searching for Suckit rootkit... Warning: /sbin/init INFECTED

Y estamos seguros de que nuestro sistema se ha instalado de forma limpia y desde buenas fuentes, puede que se trate de un falso positivo datado de hace tiempo y que aún a día de hoy sigue reproduciéndose. A pesar de este pequeño “pero”, es una excelente herramienta.

Rkhunter

Mi preferida, pues es más completa.

Para instalarlo desde Debian o derivado:

aptitude install rkhunter

Y desde Red Hat o derivada:

yum install rkhunter

Una vez instalada, preparamos la Base de Datos inicial de sistema. Esta Base de Datos funcionará como una referencia contra la que rkhunter comparará el resultado de sus análisis en el futuro. De esta manera, podrá detectar cambios sospechosos en el sistema y alertarnos de los mismos. Este proceso sólo lo tenemos que hacer una vez.

rkhunter --propupd

Después, actualizamos las firmas de rootkits, para estar al tanto de las últimas amenazas:

rkhunter --update

Por último, ya podemos escanear nuestro sistema:

rkhunter -c

El resultado de un escaneo, a modo de ejemplo:

System checks summary
=====================

File properties checks...
    Required commands check failed
    Files checked: 130
    Suspect files: 2

Rootkit checks...
    Rootkits checked : 310
    Possible rootkits: 0

Applications checks...
    All checks skipped

The system checks took: 57 seconds

All results have been written to the log file (/var/log/rkhunter/rkhunter.log)

One or more warnings have been found while checking the system.
Please check the log file (/var/log/rkhunter/rkhunter.log)

El programa siempre dejará un log de resultados para que podamos analizarlo tranquilamente. En este caso se encuentra en /var/log/rkhunter/rkhunter.log

ClamAV: detección de troyanos, gusanos, virus…

linux_clamav

ClamAV se utiliza especialmente en servidores de correo (como decía al principio del artículo) para la detección de malware que suele tener como medio de propagación el correo electrónico. Detecta troyanos, gusanos y hasta un total de 850 000 virus. Disponible tanto para plataformas GNU/Linux, basados en UNIX como Solaris o Mac OS X, Microsoft Windows o FreeBSD/OpenBSD.

Para instalarlo en cada caso, tenéis las guías correspondientes, bastante bien detalladas tanto para instalar desde repos como desde código fuente. Los usuarios y administradores de Gentoo… bueno, tampoco os enfadéis demasiado después de leer lo que pone de vuestro sistema…

Aparte de ClamAV también tendréis disponibles otros antivirus. Marcas comerciales como Comodo ofrece una versión gratuita: Comodo Free Antivirus for Linux (CAVL). De otras casas tendremos ESET Nod32, Avast Suite para Linux…