🛡️ Laboratorio SIEM Corporativo (Red Team & Blue Team)
Trabajo de Fin de Grado (TFG)
Implementación, monitorización e inspección de tráfico en un entorno SIEM unificado con Wazuh, Suricata, Squid y Cowrie sobre Docker.
## 🎯 Visión General
Este repositorio contiene el código y la configuración para desplegar un **laboratorio SIEM de nivel empresarial** totalmente contenedorizado. La arquitectura está diseñada para simular un entorno corporativo monitorizado y una red de ataque aislada (Red Team) que permite validar y afinar reglas de detección en tiempo real.

## 🏗️ Arquitectura de Red Dual y Gateway IDS
El ecosistema se divide en dos redes internas aisladas para emular de forma realista las interacciones de un adversario frente al entorno defensivo. **Suricata actúa como gateway (puente)**, asegurando que todo el tráfico ofensivo pase obligatoriamente por la inspección de firmas del IDS antes de alcanzar el core de la red.

### Topología de Red:
* 🟢 **Red Core (`tfg_network` - 10.5.0.0/24)**: Aloja el stack SIEM (Wazuh Indexer, Manager y Dashboard), el proxy Squid y el honeypot Cowrie.
* 🔴 **Red de Ataque (`attack_network` - 10.6.0.0/24)**: Red aislada donde opera el terminal de ataque interactivo Red Team (`kali-attacker`).
## 🚀 Características y Componentes Destacados
1. **Detección Avanzada (Suricata IDS)**: Reglas de firmas personalizadas para identificar tácticas evasivas de reconocimiento como escaneos Nmap (*NULL*, *XMAS*, *FIN*, *SYN rápidos* y *Version Probes*).
2. **Entorno de Decepción (Honeypot Cowrie)**: Despliegue de un honeypot SSH/Telnet con un **agente nativo de Wazuh v4.14.2 embebido** para la ingesta directa de alertas.
3. **Visibilidad MITRE ATT&CK (Squid Proxy)**: Reglas personalizadas en Wazuh que clasifican el tráfico del proxy, inyectando dinámicamente la etiqueta `T1071.001` (Application Layer Protocol).
4. **Correlación Cruzada (Wazuh Manager)**: Correlación multifase que alerta ante ataques por fuerza bruta (`same_source_ip`) y detecta accesos exitosos en el honeypot tras intentos fallidos, rastreando la *Kill Chain* completa.
5. **Simulador Red Team Modular (`kali-attacker`)**: Consola web interactiva con un script modular para lanzar simulaciones de ataque automatizadas y evaluar la respuesta del SIEM.

## 🚦 Quick Start (Despliegue Rápido)
# 1. Configura el límite de memoria virtual del host (Linux)
sudo sysctl -w vm.max_map_count=262144
# 2. Clona el repositorio
git clone
proyecto-siem
cd proyecto-siem
# 3. Prepara tus variables de entorno seguras
cp .env.example .env
# Edita el archivo .env para definir tus contraseñas
# 4. Despliega el laboratorio (respetará automáticamente la jerarquía de arranque)
docker compose up -d
### Verificación del Despliegue
Puedes verificar que todos los servicios están en estado `healthy` o `running` ejecutando:
docker compose ps

Una vez levantado, accede al **Wazuh Dashboard** en `https://localhost:443` utilizando las credenciales definidas en tu archivo `.env`.
## 📚 Documentación y Manuales
Para profundizar en la configuración avanzada, diagramas de secuencia, flujos de correlación cruzada o simulaciones de ataques, consulta los siguientes documentos:
* 📖 **[Guía Técnica Completa (Guia_Tecnica_SIEM_TFG.md)](./Docs/Guia_Tecnica_SIEM_TFG.md)**: Manual detallado de la arquitectura, configuración interna de `ossec.conf`, certificados SSL/TLS y despliegue del clúster.
* ⚔️ **[Guía de Ataques (Docs/guia_ataques.md)](./Docs/guia_ataques.md)**: Instrucciones paso a paso para ejecutar las simulaciones Red Team modulares y validar las alertas.
*Desarrollado como Trabajo de Fin de Grado (TFG) - 2026*