En la antesala del inicio del curso preparamos la traducción de un material interesante.

AIDE se traduce como “Entorno Avanzado de Detección de Intrusiones” — es uno de los sistemas más populares para monitorear cambios en sistemas operativos basados en Linux. AIDE se utiliza para proteger contra malware, virus y detectar acciones no autorizadas. Para verificar la integridad de los archivos y detectar intrusiones, AIDE crea una base de datos con información sobre los archivos y compara el estado actual del sistema con esta base. AIDE ayuda a reducir el tiempo de investigación de incidentes, enfocándose en los archivos que han sido modificados.
Características de AIDE:
- Soporte para varios atributos de archivos, incluyendo: tipo de archivo, inode, uid, gid, permisos, número de enlaces, mtime, ctime y atime.
- Soporte para compresión Gzip, SELinux, XAttrs, ACL de Posix y atributos del sistema de archivos.
- Soporte para varios algoritmos, incluyendo md5, sha1, sha256, sha512, rmd160, crc32, etc.
- Envío de notificaciones por correo electrónico.
En este artículo vamos a ver cómo instalar y usar AIDE para la detección de intrusiones en CentOS 8.
Requisitos previos
- Servidor ejecutando CentOS 8, con un mínimo de 2 GB de RAM.
- Acceso root
Empezamos
Primero se recomienda actualizar el sistema. Para ello, ejecute el siguiente comando.
dnf update -yDespués de la actualización, reinicie el sistema para que los cambios surtan efecto.
Instalación de AIDE
AIDE está disponible en el repositorio predeterminado de CentOS 8. Puede instalarlo fácilmente ejecutando el siguiente comando:
dnf install aide -yUna vez completada la instalación, puede ver la versión de AIDE con el siguiente comando:
aide --versionDebería ver lo siguiente:
Aide 0.16
Compilado con las siguientes opciones:
WITH_MMAP
WITH_PCRE
WITH_POSIX_ACL
WITH_SELINUX
WITH_XATTR
WITH_E2FSATTRS
WITH_LSTAT64
WITH_READDIR64
WITH_ZLIB
WITH_CURL
WITH_GCRYPT
WITH_AUDIT
CONFIG_FILE = "/etc/aide.conf" Parámetros disponibles aide se pueden ver de la siguiente manera:
aide --help 
Creación e inicialización de la base de datos
Lo primero que debe hacer después de instalar AIDE es inicializarlo. La inicialización consiste en crear una base de datos (instantánea) de todos los archivos y directorios del servidor.
Para inicializar la base de datos, ejecute el siguiente comando:
aide --initDebería ver lo siguiente:
Hora de inicio: 2020-01-16 03:03:19 -0500 (AIDE 0.16)
AIDE inicializó la base de datos en /var/lib/aide/aide.db.new.gz
Número de entradas: 49472
---------------------------------------------------
Los atributos de la(s) base(s) de datos (descomprimida):
---------------------------------------------------
/var/lib/aide/aide.db.new.gz
MD5 : 4N79P7hPE2uxJJ1o7na9sA==
SHA1 : Ic2XBj50MKiPd1UGrtcUk4LGs0M=
RMD160 : rHMMy5WwHVb9TGUc+TBHFHsPCrk=
TIGER : vkb2bvB1r7DbT3n6d1qYVfDzrNCzTkI0
SHA256 : tW3KmjcDef2gNXYqnOPT1l0gDFd0tBh9
xWXT2iaEHgQ=
SHA512 : VPMRQnz72+JRgNQhL16dxQC9c+GiYB8g
uZp6uZNqTvTdxw+w/IYDSanTtt/fEkiI
nDw6lgDNI/ls2esijukliQ==
Hora de finalización: 2020-01-16 03:03:44 -0500 (tiempo de ejecución: 0m 25s) El comando anterior creará una nueva base de datos aide.db.new.gz en el directorio /var/lib/aide. Se puede ver utilizando el siguiente comando:
ls -l /var/lib/aideResultado:
total 2800
-rw------- 1 root root 2863809 Jan 16 03:03 aide.db.new.gz AIDE no usará este nuevo archivo de base de datos hasta que se renombre a aide.db.gz. Esto se puede hacer de la siguiente manera:
mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gzSe recomienda actualizar periódicamente esta base de datos para asegurar el monitoreo necesario de los cambios.
Se puede cambiar la ubicación de la base modificando el parámetro DBDIR en el archivo /etc/aide.conf.
Iniciar verificación
Ahora AIDE está listo para usar la nueva base de datos. Ejecuta la primera verificación de AIDE sin realizar ningún cambio:
aide --checkLa ejecución de este comando tomará algún tiempo dependiendo del tamaño de tu sistema de archivos y la cantidad de memoria RAM en tu servidor. Después de completar la verificación, deberías ver lo siguiente:
Hora de inicio: 2020-01-16 03:05:07 -0500 (AIDE 0.16)
AIDE no encontró diferencias entre la base de datos y el sistema de archivos. ¡Todo parece estar bien!La salida anterior indica que todos los archivos y directorios coinciden con la base de datos de AIDE.
Probando AIDE
De forma predeterminada, AIDE no rastrea el directorio raíz predeterminado de Apache /var/www/html. Vamos a configurar AIDE para que lo monitoree. Para hacer esto, se debe modificar el archivo /etc/aide.conf.
nano /etc/aide.conf Agrega por encima de la línea "/root/CONTENT_EX" lo siguiente:
/var/www/html/ CONTENT_EX A continuación, crea el archivo aide.txt en el directorio /var/www/html/, utilizando el siguiente comando:
echo "Test AIDE" > /var/www/html/aide.txtAhora ejecuta la verificación de AIDE y asegúrate de que el archivo creado sea detectado.
aide --checkDebería ver lo siguiente:
Hora de inicio: 2020-01-16 03:09:40 -0500 (AIDE 0.16)
AIDE encontró diferencias entre la base de datos y el sistema de archivos!!
Resumen:
Número total de entradas: 49475
Entradas agregadas: 1
Entradas eliminadas: 0
Entradas cambiadas: 0
---------------------------------------------------
Entradas agregadas:
---------------------------------------------------
f++++++++++++++++: /var/www/html/aide.txt Vemos que se detectó el archivo creado. aide.txt.
Después de analizar los cambios detectados, actualiza la base de datos de AIDE.
aide --updateDespués de la actualización verás lo siguiente:
Timestamp de inicio: 2020-01-16 03:10:41 -0500 (AIDE 0.16)
AIDE encontró diferencias entre la base de datos y el sistema de archivos!!
Nueva base de datos AIDE escrita en /var/lib/aide/aide.db.new.gz
Resumen:
Total de entradas: 49475
Entradas agregadas: 1
Entradas eliminadas: 0
Entradas cambiadas: 0
---------------------------------------------------
Entradas agregadas:
---------------------------------------------------
f++++++++++++++++: /var/www/html/aide.txt El comando anterior creará una nueva base de datos aide.db.new.gz en el directorio
/var/lib/aide/Puede verlo con el siguiente comando:
ls -l /var/lib/aide/Resultado:
total 5600
-rw------- 1 root root 2864012 16 de enero 03:09 aide.db.gz
-rw------- 1 root root 2864100 16 de enero 03:11 aide.db.new.gzAhora rename la nueva base de datos nuevamente para que AIDE use la nueva base para rastrear futuros cambios. Puede renombrar así:
mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gzEjecute la verificación nuevamente para asegurarse de que AIDE está usando la nueva base de datos:
aide --checkDebería ver lo siguiente:
Timestamp de inicio: 2020-01-16 03:12:29 -0500 (AIDE 0.16)
AIDE NO encontró diferencias entre la base de datos y el sistema de archivos. ¡Todo parece estar bien!Automatización de la verificación
Es una buena idea ejecutar la verificación de AIDE todos los días y enviar el informe por correo. Este proceso se puede automatizar con cron.
nano /etc/crontabPara ejecutar la verificación de AIDE todos los días a las 10:15, agregue la siguiente línea al final del archivo:
15 10 * * * root /usr/sbin/aide --checkAhora AIDE le notificará por correo. Puede verificar el correo con el siguiente comando:
tail -f /var/mail/rootEl registro de AIDE se puede ver con el siguiente comando:
tail -f /var/log/aide/aide.logConclusión
En este artículo aprendiste cómo usar AIDE para detectar cambios en archivos y identificar accesos no autorizados al servidor. Para configuraciones adicionales, puedes modificar el archivo de configuración /etc/aide.conf. Por motivos de seguridad, se recomienda almacenar la base de datos y el archivo de configuración en un medio de solo lectura. Más información está disponible en la documentación. .
Fuente: habr.com
