Configurar y Usar Wazuh Como SIEM

1. Introducción

Este post es la resolución al ejercicio: https://github.com/breatheco-de/configure-and-use-wazuh-as-siem.git

A través de este ejercicio recolectaremos y analizaremos eventos de seguridad desde un endpoint Linux maquina debian con wordpress, monitoreando accesos, cambios en archivos y simulando posibles ataques. Utilizaremos las capacidades de Wazuh como SIEM para gestionar estos eventos.

2. Agregar Múltiples Fuentes de Datos a Wazuh

Como un SIEM, Wazuh recopila y analiza datos de diversas fuentes, como servidores, aplicaciones, firewalls, routers, y más. El primer paso es asegurarse de que Wazuh esté configurado para recibir logs de estas diversas fuentes.

2.1. Fuente 1: Agentes de Wazuh (Endpoints)

Asegúrate de que los agentes estén activos y enviando datos al Wazuh Manager, sino lo tienes haz la instalación de los agentes en la maquina debian con wordpress.

Para ello, vamos en nuestra máquina debian al navegador de internet, y accedemos al panel de inicio de sessión de Wazuh conectándonos a la siguiente dirección:

https://<IP_DE_TU_MAQUINA>/app/login?

Una vez en el panel, nos logeamos con las credenciales admin/admin.

En la opción Agents management > summary agregas un nuevo agente. Tendrás una vista como esta.

Selecciona el sistema operativo del endpoint que quieres agregar, su arquitectura, la dirección IP del servidor wazuh que creamos anteriormente y una etiqueta/nombre de ese endpoint. Una vez hecho esto, te va generar un comando para que lo ejecutes en el endpoint (en nuestro caso la maquina linux)

Una vez que hayas pegado el comando generado por Wazuh y se haya realizado la instalación debemos correr los siguientes comandos en la misma maquina endpoint:

sudo systemctl daemon-reload

sudo systemctl enable wazuh-agent

sudo systemctl start wazuh-agent

Si todo sale bien, haz clic en cerrar y busca en el panel los agentes activos. Tendrás una vista como esta.

2.2 Fuente 2: Logs de Aplicaciones.

Configura los agentes de Wazuh para monitorear logs de aplicaciones específicas en los Endpoints. Por ejemplo, puedes configurar un agente para recopilar logs de un servidor web o de un servidor de base de datos. Edita el archivo de configuración del agente en cada endpoint para incluir la ubicación de los logs.

Para monitorear los Logs del Servidor Web. En el archivo de configuración del agente (/var/ossec/etc/ossec.conf), asegúrate que estén las siguientes líneas de código:

<localfile>

 <log_format>apache</log_format>

 <location>/var/log/apache2/access.log</location>

</localfile> 

<localfile>

 <log_format>apache</log_format>

 <location>/var/log/apache2/error.log</location>

</localfile>

Una vez que hayas hecho los cambios, no olvides reiniciar el servicio del agente para que tome la nueva configuración.

sudo systemctl restart wazuh-agent

Además, debido a que WordPress no genera logs de manera predeterminada, habilita la generación de logs para registrar errores y advertencias PHP. Para activar los logs de errores de WordPress, edita el archivo wp-config.php y agrega las siguientes líneas:

define( 'WP_DEBUG', true );

define( 'WP_DEBUG_LOG', true );

define( 'WP_DEBUG_DISPLAY', false );

💡 Esto generará un archivo de log en /wp-content/debug.log donde se registrarán todos los errores y advertencias de PHP relacionados con WordPress.

3. Simulación de Ataques Multi-Fuente

Ahora vamos a simular un ataque distribuido en diferentes sistemas.

  1. Intenta iniciar sesión con credenciales incorrectas en el endpoint (maquina Debian) varias veces.
  2. Modifica archivos sensibles en el endpoint para que Wazuh detecte el cambio.
sudo echo "Simulación de cambio malicioso" >> /etc/passwd
  1. Simula los Logs de Apache de acceso y errores. Genera actividad accediendo al sitio web de WordPress e intenta acceder a una página inexistente para generar un error 404 y verificar que se registra en el log de Apache.

4. Monitorea en el Dashboard

Ve al dashboard y observa los eventos en Threat Hunting. Busca la correlación de eventos que involucren los intentos de acceso fallido, los escaneos de puertos desde otra máquina y las modificaciones de archivos en los endpoints. Wazuh debería generar alertas a medida que correlaciona los eventos de estas múltiples fuentes.

Los resultados obtenidos deben ser algo similar esto, alli vas a poder ver todas las simulaciones realizadas. Como vemos en la imagen, se puede ver el uso indebido de credenciales y múltiples errores 400 de Apache, lo cual pueden ser resultado de intentos fallidos de acceder a recursos del servidor web.

Ahora vamos a crear un reporte, para ello, hacemos clic arriba a la derecha, en “Generate report”.

Esto nos generará un reporte, ahora si vamos a la sección “Dashboard management > Reporting” verás que aparece nuestro reporte listo para descargar.

Si hacemos clic en el icono de descargar, podemos ver que se nos abre el documento en pdf.

5. Conclusión

Esta práctica permitió implementar y evaluar las capacidades de Wazuh como solución SIEM para la recolección, correlación y análisis de eventos de seguridad en un entorno Linux con WordPress. A través de la configuración de agentes en el endpoint, la integración de logs de aplicaciones (como Apache y WordPress) y la simulación de ataques (accesos no autorizados, modificaciones de archivos y errores web), se demostró la eficacia de Wazuh para detectar y alertar sobre actividades sospechosas. El dashboard facilitó la visualización de eventos en tiempo real, mientras que la generación de reportes evidenció la importancia de documentar hallazgos para análisis posteriores.

Además, el ejercicio destacó la necesidad de configurar adecuadamente las fuentes de datos (logs de sistema, aplicaciones, …) para maximizar la visibilidad de amenazas. La correlación de eventos multi-fuente, como intentos de autenticación fallidos junto con errores HTTP, reforzó el valor de Wazuh en la identificación de patrones de ataque. En conclusión, esta práctica no solo consolidó conocimientos técnicos sobre SIEMs, sino que también subrayó su rol crítico en la monitorización proactiva de entornos críticos, permitiendo una respuesta rápida ante incidentes de seguridad.

Comparte esta Publicación en Redes Sociales