Agregamos una comprobación de hash de rootkit hunter en el script diario

Debido a todo este udalenka, resultó que la computadora portátil de entrenamiento, medio vacía antes, ahora se ha convertido en la máquina principal de trabajo y vale la pena protegerla de alguna manera más cuidadosamente. Lo que, en general, es claramente insinuado por las autoridades. En la computadora portátil ahora está Ubuntu 20.04 beta.

Todo comenzó con configuraciones claras en el BIOS y cifrado de disco completo, sobre el cual probablemente no debería escribir. Pero luego decidí entender lo que la utilidad rkhunter ("rootkit, puerta trasera, sniffer y exploit exploit") puede hacer a nivel de archivo .

No tenía grandes expectativas del software que no se había actualizado durante un par de años. Debo decir de inmediato que dudo mucho del uso de las firmas de febrero de 2018 para buscar rootkits, pero uno de los otros modos de operación: verificar los hashes de archivos, me interesó. ¿Quién está interesado en una experiencia así y qué ha sucedido hasta ahora? Bienvenido a Cat.

La idea es simple, pero agreguemos un cheque en el script de cosas útiles de la mañana para ver si los hash MD5 de los archivos para los que no deberían cambiar no han cambiado. Al menos hasta que las actualizaciones del paquete deberían. Es muy ligero, pero no inútil, en mi opinión, en la lista blanca. El administrador de paquetes configura la versión actual capaz de calcular y verificar los valores hash de la utilidad:

apt search rkhunter
rkhunter/focal,focal,now 1.4.6-8 all [installed]
  rootkit, backdoor, sniffer and exploit scanner

La configuración principal del cazador está en /etc/rkhunter.conf y primero, para resolver mi problema, estos son los parámetros que configuré allí:

ENABLE_TESTS=hashes

Porque, aparte de los hash, nada me interesa todavía. El comando puede obtener la lista de otras pruebas posibles.

sudo rkhunter --list test

Todavía considero que la colisión MD5-ok está relacionada con las matemáticas, pero no con la práctica. No insisto en esta opinión, pero casi todos los días miro malware bueno y hasta ahora no he encontrado tales conflictos en la naturaleza. Entonces por ahora en la configuración es suficiente para mí.

HASH_CMD=MD5

Luego indicó su administrador de paquetes y, lo más importante, los directorios, los hashes de archivos que me interesan. La ruta será, por ejemplo, / bin y / usr / bin. Acerca de los archivos que aparecieron en los directorios, pero que no estaban allí en el momento del cálculo, el cazador también dará advertencias.

PKGMGR=DPKG
USER_FILEPROP_FILES_DIRS=/bin/*
USER_FILEPROP_FILES_DIRS=/usr/bin/*

Aquí hay un punto importante: con mi configuración, el escaneo no se basa en paquetes, sino en directorios. Probablemente, esto es más correcto, porque los paquetes contienen muchos archivos no ejecutables y primero deben filtrarse, por ejemplo, a través del archivo. Hasta ahora, he elegido el camino para aumentar la lista de directorios y excepciones.

Hemos terminado la configuración del escáner hasta ahora, ahora es el momento de actualizar la base de los hashes correctos en /var/lib/rkhunter/db/rkhunter.dat con la nueva configuración. Para hacer esto, necesita un comando (también toma los nombres de los paquetes para agregarlos a la base de datos, si va en sentido contrario).

sudo rkhunter --propupd

Después de eso, todos los archivos de interés para usted y sus hashes deben aparecer en rkhunter.dat. En mi caso, estos son 2847 archivos, y el indexador tomó 9m 2,117s. Es un poco demasiado, como, para tres mil MD5, considerando md5sum para / bin / ls para 0.003s, pero realmente lo hay.

Eso es todo, estamos listos para ejecutar una verificación. Todavía no combate, es poco probable que algún malware ya haya logrado cambiar los hashes.

sudo rkhunter -c

Aquí hay una clave muy útil: dos (solo avisos de informe), que omitirá todas las comparaciones exitosas y solo dará advertencias. Debe buscar el resultado del trabajo en /var/log/rkhunter.log. En cuanto a la velocidad del cheque, para mis casi tres mil binarios fue de 10 m 27,489 s, comparable al tiempo de indexación.

Resolvimos la verificación, pero la cuestión sigue siendo reindexar al actualizar paquetes. Aquellos. hicimos una actualización adecuada y ahora no consideramos que todos los archivos actualizados sean malware. El escáner tiene otra configuración / etc / default / rkhunter para automatizar tareas. En él estableceremos el parámetro.

APT_AUTOGEN="yes"

Y en /etc/apt/apt.conf.d/90rkhunter se encuentra un script que es responsable de la reindexación posterior:


 // Makes sure that rkhunter file properties database is updated after each remove or install only APT_AUTOGEN is enabled
 DPkg::Post-Invoke { "if [ -x /usr/bin/rkhunter ] && grep -qiE '^APT_AUTOGEN=.?(true|yes)' /etc/default/rkhunter; then /usr/share/rkhunter/scripts/rkhupd.sh; fi"; };

En realidad, todos, cualquier adición está feliz de aceptar. Espero que haya sido útil.

All Articles