Detección de Intrusos con AIDE en Sistemas GNU/Linux
Introducción
AIDE (Advanced Intrusion Detection Environment) es una herramienta de detección de intrusos basada en la integridad de archivos. Su función principal es verificar cambios en archivos y directorios críticos del sistema, lo que ayuda a identificar modificaciones no autorizadas y posibles ataques. Es una alternativa ligera y flexible a soluciones más complejas como Tripwire.
Historia: De Tripwire a AIDE
Tripwire fue una de las primeras herramientas de detección de intrusos basada en la integridad de archivos, desarrollada en 1992 por Gene Kim y Eugene Spafford en la Universidad de Purdue. Su propósito era proporcionar una forma confiable de verificar la integridad del sistema mediante la comparación de hashes criptográficos de archivos críticos.
Comparación entre AIDE, Tripwire y OSSEC
Característica | AIDE | Tripwire | OSSEC |
---|---|---|---|
Código Abierto | Sí | Solo en versión comunitaria | Sí |
Análisis de Integridad | Sí | Sí | Sí |
Monitoreo en Tiempo Real | No | No | Sí |
Soporte para Reglas Personalizadas | Sí | Sí | Sí |
Integración con SIEM | Limitada | Sí | Sí |
Alertas en Tiempo Real | No | Sí | Sí |
OSSEC se destaca por su capacidad de monitoreo en tiempo real y su integración con múltiples sistemas, mientras que Tripwire es una opción más completa para auditorías empresariales. AIDE, en cambio, es más ligero y fácil de implementar en sistemas pequeños o medianos.
Integración de AIDE con Wazuh (SIEM)
Wazuh es una plataforma SIEM de código abierto que permite la integración con AIDE para el monitoreo centralizado de eventos de seguridad.
- Configurar AIDE para generar logs estructurados:
sudo aide --check > /var/log/aide/aide_check.log 2>&1
- Configurar el agente de Wazuh para monitorear los logs de AIDE
Editar el archivo de configuración del agente de Wazuh (/var/ossec/etc/ossec.conf
) y agregar la siguiente entrada:
<localfile>
<log_format>syslog</log_format>
<location>/var/log/aide/aide_check.log</location>
</localfile>
- Reiniciar el agente de Wazuh para aplicar los cambios:
sudo systemctl restart wazuh-agent
- Verificar que Wazuh está recibiendo eventos de AIDE
Ejecutar en el servidor de Wazuh:
sudo cat /var/ossec/logs/alerts/alerts.json | grep "AIDE"
Si la integración fue exitosa, deberían aparecer registros de AIDE en el SIEM.
Beneficios de esta integración
- Monitoreo centralizado: Permite visualizar eventos de AIDE en el SIEM junto con otros eventos de seguridad.
- Automatización de alertas: Wazuh puede generar alertas en tiempo real si AIDE detecta cambios sospechosos.
- Correlación con otros eventos: Se pueden relacionar eventos de AIDE con intentos de acceso, cambios de permisos y otras actividades sospechosas.
Con esta configuración, cada vez que AIDE detecte cambios en los archivos monitoreados, Wazuh los procesará y podrá generar alertas automatizadas en la consola de administración del SIEM.
AIDE-Tools: Herramientas para la Administración y Automatización de AIDE
AIDE-Tools es un conjunto de herramientas diseñadas para facilitar el uso y la automatización de AIDE. A continuación, se presentan algunas utilidades clave:
- aide-update-db: Script para actualizar la base de datos de AIDE de manera automática tras un análisis exitoso.
#!/bin/bash
if sudo aide --check; then
sudo cp /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz
echo "Base de datos de AIDE actualizada correctamente."
else
echo "Se detectaron cambios sospechosos. No se actualiza la base de datos."
fi
- aide-cron: Script para automatizar la ejecución periódica de AIDE y envío de alertas por correo.
#!/bin/bash
LOG_FILE="/var/log/aide_report_$(date +%F).log"
sudo aide --check > $LOG_FILE 2>&1
if grep -q "AIDE found differences" $LOG_FILE; then
cat $LOG_FILE | mail -s "ALERTA: Cambios detectados en AIDE" admin@ejemplo.com
fi
- aide-log-cleaner: Script para gestionar la limpieza de logs antiguos de AIDE y evitar saturación del disco.
#!/bin/bash
find /var/log/aide*.log -type f -mtime +30 -delete
echo "Logs antiguos de AIDE eliminados."
Estos scripts pueden ser agregados a cron
para su ejecución automática y garantizar un monitoreo eficiente del sistema.
Casos de Uso Reales de AIDE
- Empresas de Hosting: Detección de modificaciones en archivos de configuración críticos.
- Gobiernos y Organismos Públicos: Auditoría de cambios en sistemas sensibles.
- Centros de Datos: Monitoreo de integridad en servidores de producción.
Conclusión y Recomendaciones
AIDE es una herramienta esencial para la seguridad de servidores Linux, ya que permite detectar modificaciones en archivos críticos y evitar accesos no auto