Cuando empezamos el proyecto final del master, teníamos claro una cosa: no queríamos
montar otro dashboard bonito con datos inventados. Queríamos algo que recibiera ataques
reales y los analizara como lo haría un SOC de verdad.
El resultado se llama Valhalla SOC, y es el trabajo de un equipo de cinco
compañeros del Master en Ciberseguridad de Evolve. En este artículo cuento cómo lo
construimos, qué decisiones tomamos y qué aprendimos por el camino.
El problema
Los SOC comerciales (Splunk, QRadar, Sentinel) son potentes pero caros, dependen de la
nube y mandan tus logs fuera. Para una pyme o un equipo pequeño, eso es un problema:
coste, privacidad y cumplimiento (ISO 27001, GDPR).
La pregunta era: ¿se puede montar un SOC profesional, con análisis IA, sin que un
solo dato salga del equipo? Spoiler: sí.
La arquitectura
Cuatro piezas, todas open source, orquestadas con Docker Compose:
- Cowrie — honeypot SSH/Telnet en el puerto 2222. Simula un Ubuntu real.
- Wazuh — el SIEM. Lee los logs del honeypot, los parsea y aplica reglas.
- Ollama (qwen2.5-coder:7b) — un LLM corriendo en local que analiza las alertas.
- Dashboard custom (React + FastAPI) — además del nativo de Wazuh.
El flujo:
Atacante → Cowrie → log JSON → Wazuh aplica reglas → si nivel ≥ 5 → Ollama analiza
→ todo se indexa en OpenSearch → Dashboard
Lo más interesante: las reglas custom
Aquí es donde el proyecto deja de ser un "tutorial seguido" y pasa a ser trabajo de
verdad. Escribimos 12 reglas personalizadas en Wazuh, todas mapeadas a MITRE ATT&CK:
| Regla | Detecta | MITRE |
|---|---|---|
| 100111 | Fuerza bruta (5+ fallos en 120s) | T1110 |
| 100130 | Descarga de malware (wget/curl) | T1105 |
| 100140 | Reverse shell | T1059, T1071 |
| 100150 | Desactivar firewall | T1562 |
| 100170 | Borrado de logs (anti-forense) | T1070 |
El truco no es detectar el comando exacto — es entender la secuencia. La regla
100113, por ejemplo, dispara solo cuando hay un login exitoso después de varios
fallos en menos de 2 minutos. Eso es fuerza bruta exitosa, no un login normal.
Ollama como analista junior
Esta parte fue la que más nos sorprendió. Cuando Wazuh dispara una alerta de nivel ≥ 5,
ejecuta un script en Python que manda la alerta a Ollama corriendo en localhost:11434.
El prompt es simple:
"Eres un analista SOC. Alerta: [JSON]. En 2 oraciones: describe el objetivo del
atacante y el nivel de amenaza."
Y la respuesta vuelve a Wazuh como una alerta nueva (regla 100200, "Ollama AI Insight").
En el dashboard aparece junto a la alerta original.
¿Es perfecto? No. A veces se equivoca. Pero como primera capa de triaje para un
analista humano, ahorra muchísimo tiempo. Y lo más importante: ningún log sale del
equipo.
El dashboard nativo de Wazuh muestra todo, pero también construimos un frontend propio
con React + Electron que funciona incluso si el backend cae (modo offline con
runbooks locales). Eso fue un extra que añadimos porque nos parecía interesante para
un SOC real, donde la continuidad es crítica.
Lo que aprendimos
Tres cosas que nos llevamos:
- Las reglas son donde está el trabajo de verdad. Montar Wazuh es cuestión de horas. Escribir reglas que detecten ataques reales sin falsos positivos es cuestión de semanas.
- Los LLM locales ya están listos para casos de uso reales. No vas a sustituir a un analista senior con qwen2.5:7b, pero como capa de triaje funciona muy bien.
- El honeypot recibe más ataques de los que pensábamos. En 24 horas teníamos cientos de intentos de login desde IPs de medio mundo. Internet es un sitio ocupado.
El equipo
Valhalla SOC es trabajo conjunto de cinco compañeros del Master en Ciberseguridad
de Evolve:
- Santiago de Prada Lorenzo
- Santiago Viso Martín
- Julieta Tenti
- Rosalino Martínez Albán
- Yoandy Ramírez Delgado
Si quieres trastear con él
El proyecto es público y reproducible con un docker compose up:
👉 github.com/heindall92/Proyecto-Master-Ciberseguridad-Evolve-Yoandy
El README tiene la guía completa de despliegue, los requisitos de hardware
(con 8 GB de RAM va) y cómo simular ataques de prueba con hydra.
Proyecto académico desarrollado durante el Master en Ciberseguridad de
Evolve.
Top comments (0)