Optimización del uso de AIDE

por | marzo 25, 2018

AIDE (Advanced Intrustion Detection Environment) es un detector de intrusiones basado en comprobación de integridad de ficheros. En términos simples, esta herramienta crea una base de datos con el hash de nuestros ficheros y posteriormente se comprueba si dicho hash ha cambiado, pudiendo detectar de esta manera modificaciones no autorizadas en nuestro sistema.

Lo tengo instalado en algunos sistemas aunque con ciertos retoques y optimizaciones, adaptándolo a lo que necesito. La generación del hash de todos los ficheros de nuestro sistema así como su comprobación posterior son procesos que requieren de cierta capacidad de cómputo y pueden aumentar considerablemente la carga del sistema.

Por defecto AIDE utiliza varios algoritmos para generar los hashes correspondientes de fichero: SHA256/512, Haval, Tiger… Para aligerar el proceso, podemos en primer lugar el nº de algoritmos que vamos a utilizar en /etc/aide/aide.conf. Yo suelo seleccionar únicamente SHA-256:

Por otro lado también podemos acotar qué directorios vamos a escanear con AIDE y cuáles no. En mi caso, indico que quiero escanear todo lo que está debajo del raíz / y posteriormente excluyo directorios que tienen ficheros temporales, de caché, etc… que no me interesa tener vigilados bajo el paraguas de AIDE. Esto tambińe lo podemos especificar en /etc/aide/aide.conf:

AIDE se ejecuta diariamente mediante anacron en el sistema. Podemos encontrar el script correspondiente en /etc/cron.daily:

Puede que no necesitemos estar realizando comprobaciones de integridad diariamente. Podemos reducir la periodicidad de este chequeo moviendo el script a /etc/cron.weekly o /etc/cron.monthly por ejemplo. También podemos simplemente quitar los permisos de ejecución del scripy y lanzar las comprobaciones manualmente o mediante un cron con los parámetros que queramos.

Cada administrador adaptará AIDE según sus necesidades, no hay una fórmula cerrada o definitiva. Las mías, ahí quedan por si resultan útiles 😉