Para usar IA en threat hunting con Wazuh, instala Ollama con un modelo LLM local (Llama 3), conecta un script Python a los archivos de eventos de Wazuh y realiza consultas en lenguaje natural sobre tus logs de seguridad. Todo se ejecuta en local, sin enviar datos al exterior.
¿Qué conseguimos con esta integración?
- Análisis conversacional: Consulta logs de seguridad en lenguaje natural ("¿Ha habido intentos de SSH fallidos hoy?")
- Detección inteligente: La IA identifica patrones sospechosos que podrían pasar desapercibidos
- Respuesta rápida: Reduce el tiempo de investigación de horas a minutos
- Privacidad total: Todo se ejecuta localmente, sin enviar datos a terceros
¿Cómo habilitar el archivo de eventos JSON en Wazuh?
Wazuh necesita almacenar todos los eventos en formato JSON para que la IA pueda analizarlos. Edita la configuración del servidor:
# Editar configuración de Wazuh
sudo nano /var/ossec/etc/ossec.conf
# Busca la sección <global> y asegúrate de que esté configurada:
<global>
<jsonout_output>yes</jsonout_output>
<alerts_log>yes</alerts_log>
<logall>yes</logall>
<logall_json>yes</logall_json>
</global>
# Reiniciar Wazuh
sudo systemctl restart wazuh-manager
Esto creará el archivo /var/ossec/logs/archives/archives.json con todos los logs de seguridad.
¿Cómo instalar Ollama y un modelo LLM localmente?
Ollama es una herramienta que permite ejecutar modelos de lenguaje (LLMs) localmente de forma sencilla. Vamos a instalar Ollama y descargar el modelo Llama 3:
# Instalar Ollama
curl -fsSL https://ollama.com/install.sh | sh
# Descargar modelo Llama 3 (8B parámetros, ~4.7GB)
ollama pull llama3
# Verificar que funciona
ollama run llama3 Nota: El primer ollama pull descargará varios GB. Si tu servidor tiene poca RAM, puedes usar modelos más ligeros como llama3:7b o phi3:mini.
¿Qué dependencias de Python necesitas instalar?
El chatbot de threat hunting está escrito en Python y usa varias librerías para procesamiento de lenguaje natural:
# Actualizar sistema e instalar Python
sudo apt update && sudo apt install python3 python3-pip -y
# Instalar dependencias necesarias
pip3 install paramiko python-daemon langchain langchain-community \
langchain-ollama langchain-huggingface faiss-cpu sentence-transformers \
transformers pytz fastapi uvicorn Esto instalará:
- LangChain: Framework para construir aplicaciones con LLMs
- FAISS: Motor de búsqueda vectorial para embeddings
- FastAPI: Framework web para el chatbot
- Transformers: Modelos de NLP de HuggingFace
¿Cómo descargar e instalar el script de threat hunting con IA?
El script threat_hunter.py es el corazón de la integración. Lo descargaremos desde el repositorio oficial de Wazuh:
# Descargar el script
cd /var/ossec/integrations/
sudo wget https://raw.githubusercontent.com/wazuh/wazuh-tools/master/ai-threat-hunting/threat_hunter.py
# Dar permisos de ejecución
sudo chmod +x threat_hunter.py
sudo chown root:wazuh threat_hunter.py ¿Cómo configurar las credenciales de Wazuh para el script?
Antes de ejecutar el chatbot, necesitas configurar las credenciales de acceso. Abre el script y busca las siguientes líneas para modificarlas:
# Editar el script
sudo nano /var/ossec/integrations/threat_hunter.py
# Buscar y reemplazar:
USERNAME = "admin" # Usuario para acceder al chatbot
PASSWORD = "TuContraseñaSegura123" # Contraseña del chatbot
# Si Wazuh está en otro servidor (opcional):
SSH_HOST = "192.168.1.100" # IP del servidor Wazuh
SSH_USERNAME = "wazuh"
SSH_PASSWORD = "password_ssh" Importante: Usa una contraseña fuerte para el chatbot, ya que tendrá acceso a todos los logs de seguridad.
¿Cómo iniciar el chatbot de threat hunting con IA?
¡Ya está todo listo! Ahora vamos a iniciar el chatbot:
# Ejecutar el chatbot (en primer plano para pruebas)
sudo python3 /var/ossec/integrations/threat_hunter.py
# Verás un mensaje como:
# INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit) Abre tu navegador y accede a: http://<IP_SERVIDOR>:8000
¿Cómo usar el chatbot de threat hunting para analizar logs?
Una vez dentro del chatbot, puedes hacer preguntas en lenguaje natural. Algunos comandos útiles:
/help- Muestra el menú de ayuda/set days 7- Analiza eventos de los últimos 7 días (rango: 1-365)/reload- Recarga la base de datos vectorial con nuevos eventos
Ejemplos de preguntas:
- "¿Ha habido intentos de acceso SSH fallidos en las últimas 24 horas?"
- "Muéstrame alertas críticas de nivel 12 o superior"
- "¿Qué usuarios han modificado archivos del sistema recientemente?"
- "Analiza actividad sospechosa en el servidor web-prod-01"
¿Cómo ejecutar el chatbot de IA como servicio en Linux?
Para que el chatbot se ejecute permanentemente en segundo plano, créalo como un servicio de systemd:
# Crear archivo de servicio
sudo nano /etc/systemd/system/wazuh-threat-hunter.service
# Contenido:
[Unit]
Description=Wazuh AI Threat Hunter Chatbot
After=network.target wazuh-manager.service
[Service]
Type=simple
User=root
WorkingDirectory=/var/ossec/integrations
ExecStart=/usr/bin/python3 /var/ossec/integrations/threat_hunter.py
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
# Activar e iniciar el servicio
sudo systemctl daemon-reload
sudo systemctl enable wazuh-threat-hunter.service
sudo systemctl start wazuh-threat-hunter.service
# Verificar estado
sudo systemctl status wazuh-threat-hunter.service ¿Qué puedes hacer a continuación con esta integración?
En próximos artículos publicaré capturas de pantalla reales mostrando:
- Ejemplos de consultas y respuestas del chatbot
- Casos de uso prácticos para detección de amenazas
- Configuraciones avanzadas y optimización de rendimiento
- Integración con dashboards personalizados de Wazuh
Conclusión
La integración de IA en Wazuh transforma la manera de hacer threat hunting: de buscar manualmente en logs durante horas, a hacer preguntas en lenguaje natural y recibir análisis contextualizados en segundos.
Lo mejor: Todo se ejecuta localmente con modelos open source, sin depender de servicios externos ni comprometer la privacidad de tus datos de seguridad.
Si necesitas ayuda con la implementación profesional de Wazuh o esta integración de IA en tu empresa, solicita una consulta gratuita aquí.
Fuente original: Wazuh Blog - Leveraging Artificial Intelligence for Threat Hunting