01. ¿Qué es Threat Hunting?
Threat Hunting es la búsqueda proactiva de amenazas dentro de una infraestructura, partiendo de una hipótesis y no necesariamente de una alerta existente.
Esta diferencia es fundamental.
| Modelo | Pregunta |
|---|---|
| SOC tradicional | ¿Qué alertas tenemos? |
| Detection Engineering | ¿Qué comportamientos podemos detectar automáticamente? |
| Threat Hunting | ¿Existe alguna evidencia de que un atacante esté dentro? |
| AI Threat Hunting | ¿Qué hipótesis deberíamos investigar y qué evidencias podrían confirmarlas? |
02. Detection vs Hunting
Detection
Tenemos una condición conocida.
IF condition THEN alert
Hunting
Tenemos una hipótesis.
Hypothesis ↓ Search ↓ Evidence ↓ Conclusion
AI Hunting
La IA ayuda a generar y conectar hipótesis, consultas y evidencias.
Hypothesis ↓ AI ↓ Queries ↓ Correlation ↓ Reasoning
03. El concepto de hipótesis
Un Threat Hunt profesional comienza con una hipótesis concreta.
"Un atacante podría estar utilizando credenciales legítimas comprometidas para acceder lateralmente a servidores internos."
Esta hipótesis puede descomponerse.
Hypothesis:
Compromised credentials
↓
Authentication from unusual host
↓
Access to multiple servers
↓
Abnormal authentication pattern
↓
Possible lateral movement
04. Las fuentes de evidencia
Un Threat Hunter necesita observar múltiples capas.
Network
- Firewall
- NetFlow
- DNS
- Proxy
- VPN
Identity
- Active Directory
- Authentication
- Kerberos
- LDAP
- MFA
Endpoint
- Processes
- Files
- Registry
- Services
- Network connections
Cloud
- IAM
- API calls
- Audit logs
- CloudTrail
- Azure Activity Logs
05. El problema de los silos
Una actividad maliciosa puede parecer completamente legítima si observamos solamente una fuente.
Firewall:
Internal Server
↓
Internet
NORMAL
DNS:
Host
↓
external-domain.com
NORMAL
Endpoint:
powershell.exe
NORMAL
Pero al combinarlo:
PowerShell + New external DNS lookup + Rare destination + New process + Privileged user + Connection shortly after login = HIGH RISK
La misma evidencia puede tener significados completamente diferentes dependiendo de los eventos que la rodean.
06. Entity-Centric Threat Hunting
En lugar de analizar eventos aislados, debemos construir entidades.
USER HOST IP PROCESS DOMAIN ACCOUNT FILE SERVICE CLOUD RESOURCE
Después relacionamos esas entidades.
07. Security Timeline
Una de las herramientas más importantes para el Threat Hunter es la línea temporal.
08:31:02 User login 08:31:15 PowerShell started 08:31:17 Encoded command detected 08:31:19 DNS request 08:31:20 External connection 08:31:35 New process 08:32:04 Authentication to SERVER-12 08:33:18 Authentication to SERVER-19
El análisis temporal permite descubrir cadenas que no aparecen cuando cada evento se analiza por separado.
08. Time Window Correlation
Podemos definir ventanas temporales.
EVENT A ↓ within 60 seconds ↓ EVENT B ↓ within 5 minutes ↓ EVENT C
Ejemplo:
PowerShell
AND
External DNS
AND
Network Connection
within 2 minutes
Esto puede transformar tres eventos aparentemente independientes en una única hipótesis de ataque.
09. Baselines
El comportamiento normal de una organización es una fuente fundamental de información.
Ejemplo:
User: Normal: - Madrid - Laptop-22 - 08:00-18:00 - VPN - 3 servers/day Observed: - Frankfurt - Server-07 - 03:12 - Direct authentication - 27 servers
Cada evento individual puede ser posible.
El conjunto es altamente anómalo.
10. UEBA
User and Entity Behavior Analytics intenta modelar el comportamiento de usuarios y entidades.
| Entidad | Baseline | Anomalía |
|---|---|---|
| Usuario | 5 servidores/día | 42 servidores |
| Host | 10 destinos | 350 destinos |
| Cuenta admin | Horario laboral | 03:20 AM |
| DNS | dominios conocidos | dominio nuevo |
11. Anomaly Detection
Podemos construir un score.
Risk Score = 0.25 × login_anomaly + 0.20 × host_anomaly + 0.20 × network_anomaly + 0.20 × process_anomaly + 0.15 × threat_intel
Por ejemplo:
login_anomaly = 0.8 host_anomaly = 0.7 network_anomaly = 0.9 process_anomaly = 0.8 threat_intel = 0.6
El score no demuestra que exista un ataque.
Indica que merece investigación.
12. El papel de Machine Learning
ML puede utilizarse para detectar patrones difíciles de expresar mediante reglas.
Clustering
Agrupar comportamientos similares.
Anomaly Detection
Identificar comportamientos alejados del baseline.
Classification
Clasificar eventos o incidentes.
Graph Analytics
Analizar relaciones entre entidades.
13. ¿Dónde entra el LLM?
El LLM no debe sustituir necesariamente al motor analítico.
Su papel principal será razonar sobre resultados.
14. AI como copiloto del Threat Hunter
El hunter puede preguntar:
"Busca posibles evidencias de movimiento lateral utilizando credenciales legítimas."
La IA puede descomponerlo:
1. Search authentication anomalies 2. Identify unusual source hosts 3. Find users authenticating to multiple systems 4. Compare against baseline 5. Search related network events 6. Search endpoint activity 7. Map findings to ATT&CK 8. Produce investigation summary
15. Query Generation
La IA puede convertir una pregunta en consultas.
Por ejemplo, para detectar movimiento lateral:
Query 1: Find users with unusual authentication volume. Query 2: Find authentication events from rare source hosts. Query 3: Find remote service execution. Query 4: Find SMB connections following authentication. Query 5: Find process creation after remote authentication.
Cada resultado alimenta la siguiente fase.
16. Nunca confiar ciegamente en las queries generadas
Puede utilizar campos inexistentes, operadores incorrectos, interpretar mal los timestamps o realizar búsquedas demasiado amplias.
Por eso necesitamos una capa de validación.
USER REQUEST
↓
LLM
↓
QUERY
↓
QUERY VALIDATOR
↓
SCHEMA VALIDATION
↓
PERMISSION CHECK
↓
EXECUTION
17. Query Validation
Antes de ejecutar una consulta generada por IA:
- Comprobar sintaxis.
- Comprobar campos.
- Comprobar permisos.
- Comprobar volumen esperado.
- Limitar el rango temporal.
- Aplicar rate limiting.
- Registrar la consulta.
El sistema decide si la consulta puede ejecutarse.
18. Query Planning
Una investigación compleja debería convertirse en un plan.
INVESTIGATION Objective: Determine whether lateral movement occurred. Step 1: Identify abnormal authentication. Step 2: Identify source hosts. Step 3: Identify destination hosts. Step 4: Correlate authentication with network activity. Step 5: Inspect endpoint activity. Step 6: Build attack graph. Step 7: Assess confidence. Step 8: Recommend action.
19. Evidence Chain
Toda conclusión de la IA debe poder relacionarse con evidencias.
CONCLUSION
Possible lateral movement
Confidence: 0.87
↓
Evidence 1
Unusual authentication
↓
Evidence 2
Rare source host
↓
Evidence 3
SMB connection
↓
Evidence 4
Remote process execution
↓
Evidence 5
User baseline deviation
Nunca deberíamos aceptar una conclusión de seguridad basada únicamente en "el modelo piensa que..."
20. Evidence Graph
Este grafo permite visualizar el posible camino de ataque.
Más adelante utilizaremos esta representación para construir un verdadero motor de Attack Path Analysis.
21. Threat Hunting Workflow
22. Del Hunt a una nueva detección
Una de las propiedades más importantes de un buen programa de Threat Hunting es que las investigaciones producen conocimiento reutilizable.
THREAT HUNT
Unknown behavior discovered
↓
Investigate
↓
Validate
↓
Understand
↓
Create Detection
↓
Automate
↓
Future attacks
↓
Automatic detection
Esto crea un ciclo de mejora continua.
23. AI Hypothesis Generator
Nuestro sistema puede ir un paso más allá.
En lugar de esperar siempre a que el hunter formule una hipótesis, la IA puede estudiar determinadas señales y proponer nuevas líneas de investigación.
OBSERVED:
Rare authentication
+
new destination host
+
unusual process
+
DNS anomaly
↓
AI
Possible hypotheses:
H1:
Compromised credentials
H2:
Lateral movement
H3:
Administrative activity
H4:
Automated infrastructure process
H5:
Misconfiguration
Después debemos probar cada hipótesis.
24. Hypothesis Ranking
Las hipótesis pueden priorizarse.
| Hipótesis | Evidence | Confidence | Priority |
|---|---|---|---|
| Compromised credentials | 4 | 0.81 | High |
| Lateral movement | 5 | 0.88 | Critical |
| Administrative activity | 3 | 0.54 | Medium |
| Misconfiguration | 2 | 0.31 | Low |
25. Human-in-the-Loop
La IA no debería cerrar automáticamente investigaciones de alto impacto.
No elimina la responsabilidad humana sobre decisiones críticas.
26. Laboratorio principal
Construir un AI Threat Hunting Engine
Vamos a construir conceptualmente el primer pipeline capaz de recibir una hipótesis de Threat Hunting y devolver evidencias.
Escenario
Tenemos una infraestructura con:
- Windows endpoints
- Active Directory
- Firewall
- DNS
- VPN
- EDR
- SIEM
Queremos investigar si existe movimiento lateral asociado a credenciales comprometidas.
27. Paso 1 — Definir la hipótesis
Una cuenta comprometida podría estar siendo utilizada para acceder a múltiples sistemas desde un host no habitual.
28. Paso 2 — Definir el scope
Time range: Last 30 days Users: All privileged users Sources: VPN AD Endpoint Firewall Focus: Authentication anomalies
El scope evita que la investigación se convierta en una consulta indiscriminada sobre toda la infraestructura.
29. Paso 3 — Primera búsqueda
Buscamos usuarios con patrones anómalos de autenticación.
SELECT
user,
COUNT(DISTINCT destination_host) AS hosts
FROM authentication_events
WHERE timestamp > NOW() - 30 DAYS
GROUP BY user
ORDER BY hosts DESC;
Supongamos que obtenemos:
admin01 43 hosts svc_backup 7 hosts jsmith 5 hosts mgarcia 4 hosts
admin01 merece investigación, pero todavía no sabemos si existe actividad maliciosa.
30. Paso 4 — Baseline
Comparamos con el comportamiento histórico.
admin01 Historical average: 8 hosts/day Current: 43 hosts/day Deviation: +437%
Esto incrementa la prioridad.
31. Paso 5 — Identificar el origen
admin01 Source hosts: ADMIN-PC-01 SERVER-02 UNKNOWN-HOST-17
El host desconocido es especialmente interesante.
UNKNOWN-HOST-17 First seen: Today Owner: Unknown OS: Windows EDR: Present Last user: admin01
32. Paso 6 — Correlación de endpoint
Ahora investigamos qué ocurrió en UNKNOWN-HOST-17.
08:41 admin01 login 08:42 powershell.exe 08:42 network connection 08:43 SMB connection 08:44 authentication SERVER-02 08:45 authentication SERVER-07
Ahora tenemos una cadena mucho más interesante.
33. Paso 7 — Threat Intelligence
Podemos enriquecer los indicadores.
Destination IP: 185.x.x.x Threat Intelligence: Reputation: Suspicious First seen: Recently Known malware infrastructure: Possible Confidence: 0.78
La información externa no demuestra por sí sola un ataque, pero aumenta el contexto.
34. Paso 8 — ATT&CK Mapping
| Evidence | Possible Technique |
|---|---|
| Valid credentials | T1078 — Valid Accounts |
| PowerShell | T1059.001 — PowerShell |
| SMB activity | T1021.002 — SMB/Windows Admin Shares |
| Multiple internal systems | Possible Lateral Movement |
35. Paso 9 — AI Reasoning
Ahora podemos proporcionar a la IA únicamente las evidencias relevantes.
CASE User: admin01 Evidence: 1. Authentication from unknown host. 2. Authentication volume 437% above historical baseline. 3. PowerShell execution. 4. External network connection. 5. SMB activity. 6. Authentication to multiple servers. 7. Destination IP suspicious. Task: Assess whether evidence supports possible credential compromise and lateral movement. Return: - assessment - confidence - evidence - alternative explanations - ATT&CK mapping - recommended next queries
36. Resultado esperado
ASSESSMENT: Possible credential compromise with lateral movement. CONFIDENCE: 0.89 PRIMARY EVIDENCE: - unusual source host - abnormal authentication volume - PowerShell activity - SMB activity - multiple destination hosts - suspicious external communication ATT&CK: T1078 T1059.001 T1021.002 ALTERNATIVE: Possible administrative activity. RECOMMENDATION: Investigate host ownership. Validate admin01 activity. Inspect PowerShell command line. Review SERVER-02 and SERVER-07.
37. Paso 10 — Nueva hipótesis
El sistema no debería limitarse a terminar la investigación.
Puede generar una nueva hipótesis.
Current hypothesis: Credential compromise New hypothesis: The attacker may have established persistence on UNKNOWN-HOST-17.
Ahora comienza un nuevo hunt.
Search: Scheduled Tasks Services Startup Items Registry Run Keys New Local Users Persistence-related processes
38. El ciclo autónomo de Threat Hunting
Nuestro sistema deja de ser simplemente un dashboard de seguridad y empieza a convertirse en un sistema de investigación asistida.
39. Arquitectura del AI Threat Hunting Engine
40. Seguridad del propio AI Threat Hunter
El sistema que estamos construyendo también puede convertirse en un objetivo.
Debemos protegerlo frente a:
- Prompt Injection
- Data Poisoning
- Tool Abuse
- Excessive Permissions
- Data Exfiltration
- Model Manipulation
Nunca debemos proporcionar al LLM permisos ilimitados sobre la infraestructura.
41. Tool Permissions
El agente debería tener herramientas con permisos explícitos.
search_logs
READ
search_dns
READ
search_authentication
READ
search_endpoint
READ
create_investigation
WRITE
isolate_host
HIGH RISK
disable_account
HIGH RISK
Las acciones destructivas o disruptivas deben requerir controles adicionales.
42. AI Agent Guardrails
Least Privilege
Cada herramienta recibe únicamente los permisos necesarios.
Validation
Las acciones son validadas antes de ejecutarse.
Audit
Toda acción queda registrada.
Human Approval
Acciones críticas requieren aprobación.
43. Preguntas de comprensión
¿Cuál es la diferencia principal entre una detección y un Threat Hunt?
Una detección normalmente evalúa condiciones predefinidas, mientras que un Threat Hunt parte de una hipótesis y busca activamente evidencias que puedan confirmarla o refutarla.
¿Por qué es importante combinar múltiples fuentes?
Porque un evento aislado puede parecer legítimo. La correlación entre identidad, endpoint, red, DNS y otros sistemas puede revelar un patrón que individualmente no sería visible.
¿Debe el LLM ejecutar directamente cualquier consulta que genere?
No. La consulta debe pasar por validación de esquema, permisos, scope, límites de volumen y controles de seguridad antes de ejecutarse.
¿Qué convierte una conclusión de IA en una conclusión útil para un analista?
La trazabilidad hacia evidencias concretas, el nivel de confianza, las hipótesis alternativas y la explicación de cómo se llegó a la conclusión.
44. Ejercicio avanzado
Un usuario administrativo presenta:
Login: Madrid Previous baseline: Madrid New login: Singapore Time: 03:17 Source: Unknown laptop Destination: 12 internal servers Process: powershell.exe Network: External connection
Diseña un Threat Hunt.
La primera hipótesis debería ser posible compromiso de credenciales. Sin embargo, no debemos asumir automáticamente que existe un ataque.
Debemos investigar:
- Validez del viaje o acceso.
- VPN y MFA.
- Origen del dispositivo.
- Historial del usuario.
- PowerShell command line.
- Conexiones externas.
- Autenticaciones posteriores.
- Actividad SMB/RDP/WinRM.
- Creación de procesos en servidores destino.
- Persistencia.
El resultado debería producir una cadena de evidencias, no simplemente un "malicioso = sí/no".
45. Proyecto de la Week 09
AI Threat Hunting Engine v1
El alumno deberá diseñar una primera versión funcional del motor de Threat Hunting.
Requisitos mínimos
- Interfaz para introducir una hipótesis.
- Definición del scope temporal.
- Selección de fuentes de datos.
- Generación asistida de queries.
- Validación de queries.
- Ejecución controlada.
- Correlación temporal.
- Baseline básico.
- Threat Intelligence enrichment.
- Mapeo MITRE ATT&CK.
- AI reasoning.
- Evidence graph.
- Generación de nuevas hipótesis.
46. Modelo de datos de una investigación
{
"investigation_id": "INV-0001",
"hypothesis": {
"text": "Possible credential compromise",
"created_by": "analyst"
},
"scope": {
"start": "2026-08-01",
"end": "2026-08-30"
},
"entities": [],
"queries": [],
"evidence": [],
"techniques": [],
"hypotheses": [],
"risk_score": 0,
"confidence": 0,
"status": "open"
}
Este modelo será importante para conectar el Threat Hunting con el resto de nuestra plataforma.
47. Métricas del AI Threat Hunting Engine
| Métrica | Objetivo |
|---|---|
| Hunts executed | Número de investigaciones. |
| Hypothesis confirmation rate | Porcentaje de hipótesis confirmadas. |
| Time to hypothesis | Tiempo hasta generar una hipótesis útil. |
| Time to evidence | Tiempo hasta encontrar evidencia. |
| Queries generated | Consultas generadas por IA. |
| Queries accepted | Consultas consideradas válidas. |
| AI recommendation acceptance | Recomendaciones aceptadas por analistas. |
| New detections | Detecciones creadas a partir de hunts. |
48. De Threat Hunting a Detection Factory
Aquí aparece una evolución fundamental del proyecto.
La plataforma empieza a ser capaz de convertir conocimiento obtenido durante investigaciones en nuevas capacidades defensivas.
49. El concepto de Continuous Threat Hunting
Un Threat Hunt tradicional termina cuando se responde a una pregunta.
Nuestro objetivo es mucho más ambicioso.
CONTINUOUS HUNTING Observe ↓ Detect ↓ Investigate ↓ Hunt ↓ Learn ↓ Create Detection ↓ Monitor ↓ Generate New Hypothesis ↓ Hunt again
Cada investigación puede producir nuevos conocimientos, detecciones, relaciones y preguntas.
50. Arquitectura global del proyecto después de Week 09
51. Cierre de la Week 09
La diferencia entre una plataforma que analiza seguridad y una plataforma que realmente ayuda a defender una organización está en su capacidad para investigar.
Detectar es importante.
Investigar es mucho más difícil.
Y nuestro objetivo es que la IA ayude al analista a convertir preguntas de seguridad en investigaciones reproducibles, trazables y basadas en evidencias.
En la Week 08 construimos el concepto de Detection Engineering.
En esta Week 09 hemos añadido AI Threat Hunting.
Esto nos permite pasar de:
"Tenemos alertas"
a:
"Tenemos un sistema capaz de formular, investigar y validar hipótesis de seguridad."
El siguiente paso natural será conectar estas capacidades con Incident Response y SOAR: cuando el sistema encuentre evidencias suficientes, deberá ser capaz de construir automáticamente el caso, priorizarlo, recomendar acciones y, bajo controles adecuados, orquestar respuestas.
La arquitectura comienza a transformarse en un verdadero AI Security Operations Platform.