Este documento es una presentación sobre análisis en un
Centro de Operaciones de Seguridad (SOC), enfocada en Threat Hunting
(caza de amenazas) en sistemas operativos Windows y Linux, y la detección de
ataques en Active Directory (AD).
1. Introducción al Threat Hunting
- Definición:
Es un proceso proactivo y sistemático para buscar amenazas que han
logrado evadir los sistemas de detección automáticos. Se basa en la
formulación de hipótesis a partir del conocimiento de Tácticas, Técnicas y
Procedimientos (TTPs) de los atacantes.
- Diferencias
con Monitoreo y Respuesta a Incidentes:
- Monitoreo:
Pasivo, basado en alertas y reglas predefinidas.
- Respuesta
a Incidentes: Reactivo, se activa después de un compromiso.
- Threat
Hunting: Proactivo, basado en hipótesis y busca amenazas no
detectadas.
- Beneficios
Clave:
- Reduce
el tiempo de permanencia de un atacante en la red (dwell time).
- Detecta
Amenazas Persistentes Avanzadas (APTs) que evaden controles
convencionales.
- Optimiza
las defensas al identificar brechas y crear nuevas reglas de
detección.
2. Indicadores y Tácticas
- Indicadores
de Compromiso (IOCs): Son evidencias forenses que indican una posible
intrusión.
- Tipos:
Atómicos (IPs, hashes), Computacionales (Reglas Yara, Sigma) y
Comportamentales (patrones de actividad).
- Recolección:
Se obtienen de fuentes abiertas (OSINT como VirusTotal), comerciales
(Mandiant) y gubernamentales (US-CERT).
- Tácticas,
Técnicas y Procedimientos (TTPs): Describen el comportamiento de los
atacantes, ofreciendo una visión más completa que los IOCs.
- Tácticas:
Objetivos del atacante (ej. persistencia).
- Técnicas:
Métodos para lograr los objetivos (ej. modificar el registro).
- Procedimientos:
Implementación específica de las técnicas.
- MITRE
ATT&CK: Es el marco de referencia estándar para clasificar y
entender los TTPs.
3. Fuentes de Datos para Threat Hunting
En Windows:
- Logs
de Eventos de Seguridad: Fundamentales para rastrear inicios de sesión
(EventID 4624/4625), creación de procesos (4688) y creación de tareas
programadas (4698).
- Registros
de Ejecución: Proporcionan visibilidad sobre los programas ejecutados.
- Prefetch:
Archivos que aceleran la carga de programas y registran su ejecución.
- Amcache:
Base de datos que almacena información de ejecutables.
- UserAssist:
Claves de registro con historial de programas accedidos.
- Datos
de Procesos: El análisis en tiempo real del árbol de procesos, líneas
de comando y conexiones de red es crucial para detectar anomalías.
En Linux:
- Logs
de Autenticación: /var/log/auth.log o /var/log/secure registran
intentos de inicio de sesión y cambios de privilegios.
- Tráfico
de Red: Capturas de paquetes para analizar comunicaciones sospechosas.
- Tareas
Programadas (Cron): Ubicaciones como /etc/crontab y /var/spool/cron/
son comunes para establecer persistencia.
- Directorios
Temporales: /tmp, /var/tmp y /dev/shm son usados por atacantes para
almacenar herramientas o datos.
4. Herramientas Transversales
- Sysmon:
Herramienta de Sysinternals que proporciona monitoreo detallado de la
actividad del sistema (creación de procesos, conexiones de red, etc.),
esencial para la detección avanzada.
- OSQuery:
Permite consultar el estado de un sistema operativo usando sintaxis SQL.
- Velociraptor:
Herramienta para recolección y análisis forense a gran escala.
- Sigma
& Wazuh: Sigma es un lenguaje genérico para reglas de detección,
mientras que Wazuh es una plataforma de seguridad que integra monitoreo y
detección.
5. Detección de Ataques en Active Directory (AD)
La segunda parte de la presentación se enfoca en la
detección de ataques que abusan del protocolo de autenticación Kerberos
en Active Directory.
- Fundamentos
de AD: Directorio centralizado que gestiona identidades y recursos a
través de dominios, árboles y bosques.
- Protocolo
Kerberos: Es el protocolo de autenticación por defecto en AD. Su
seguridad se basa en un sistema de "tickets" (TGT y TGS)
emitidos por un Key Distribution Center (KDC).
Tipos de Ataques a Kerberos:
- Kerberoasting:
- Objetivo:
Obtener contraseñas de cuentas de servicio.
- Método:
Un atacante solicita un Ticket de Servicio (TGS) para un Service
Principal Name (SPN). Este ticket está cifrado con el hash de la
contraseña de la cuenta de servicio. El atacante lo extrae y lo crackea
offline.
- Detección:
Monitorear el Evento 4769 en busca de solicitudes de tickets con cifrado
débil (RC4 - 0x17) para cuentas de usuario (que no terminan en $).
- DCSync:
- Objetivo:
Extraer hashes de contraseñas de todas las cuentas del dominio,
incluyendo la cuenta KRBTGT.
- Método:
Un atacante con privilegios de replicación imita a un Domain Controller
(DC) y solicita datos de replicación a otro DC legítimo.
- Detección:
Monitorear el Evento 4662 (replicación de directorio) originado desde
equipos que no son DCs y auditar cambios de permisos de replicación.
- Golden
Ticket:
- Objetivo:
Obtener acceso total y persistente al dominio.
- Método:
Usando el hash de la cuenta KRBTGT (obtenido, por ejemplo, con un ataque
DCSync), el atacante falsifica un Ticket Granting Ticket (TGT). Este
ticket le permite autenticarse como cualquier usuario y acceder a
cualquier recurso.
- Detección:
Buscar TGTs con un tiempo de vida anormalmente largo (el default es 10
horas) y correlacionar eventos de Kerberos (4768, 4769) con eventos de
asignación de privilegios (4672).
- Silver
Ticket:
- Objetivo:
Acceder a un servicio específico en un host determinado.
- Método:
El atacante obtiene el hash de la contraseña de una cuenta de servicio
(ej. CIFS, MSSQLSvc) y crea un TGS falso para ese servicio.
- Detección:
Es más sigiloso que el Golden Ticket porque no hay comunicación con el
DC. La detección se centra en el análisis forense del host comprometido.
El documento concluye con una mención al ataque Pass-the-Hash,
aunque no se profundiza en él.