Clase 180 — Adversary emulation con Atomic Red Team y Caldera

Parte: 7 — Red Team y operaciones ofensivas · Fuente: Atomic Red Team / Apache Caldera (Incubating; proyecto originado en MITRE) ⏱️ Duración estimada: 110 min · Nivel: Avanzado


🎯 Objetivo

Automatizar la emulación de adversarios con dos herramientas complementarias: Atomic Red Team (tests atómicos por técnica ATT&CK) y Apache Caldera (framework de emulación con agentes y planificadores, originado en MITRE y transferido a Apache Incubator en mayo de 2026). El alumno ejecutará pruebas reproducibles en su lab, medirá la detección y cerrará el círculo entre ofensiva y defensa que abre y cierra esta parte.

📚 Resultados de aprendizaje

Al finalizar, el alumno podrá:

  1. Ejecutar tests atómicos de Atomic Red Team mapeados a ATT&CK.
  2. Desplegar Caldera y lanzar una operación con agentes.
  3. Encadenar técnicas en un adversary profile de Caldera.
  4. Medir la detección de cada TTP en el SIEM/EDR.
  5. Automatizar un ciclo repetible de emulación + validación.

🗺️ Temas

# Tema Por qué importa
1 Atomic Red Team Tests atómicos por técnica
2 Invoke-AtomicRedTeam Runner en PowerShell
3 Caldera: server y agentes Emulación autónoma
4 Abilities y adversary profiles Encadenar TTPs
5 Planners Cómo Caldera decide el siguiente paso
6 Validación de detección Cerrar el ciclo con el SOC
7 Automatización repetible Emulación continua

🧠 Explicación en profundidad

Una prueba atómica y una emulación responden preguntas distintas

Atomic Red Team ofrece pruebas pequeñas, enfocadas y descritas en archivos estructurados. Son útiles para preguntar si un comportamiento concreto genera el dato o control esperado. Una emulación de adversario conecta procedimientos en un escenario coherente, con dependencias, objetivos y estado. Superar un atomic no demuestra que la organización detectaría toda la técnica; completar una cadena tampoco identifica por sí solo cuál sensor falló.

La selección comienza por una amenaza y un activo relevantes, no por ejecutar todo el catálogo. Cada prueba se revisa como código: comandos, entradas, prerrequisitos, privilegios, descargas, cambios y limpieza. La documentación oficial exige permiso y una máquina de prueba con controles activos.

Comportamiento priorizado

Nivel de prueba

Atomic: una acción aislada

CALDERA: cadena con estado

Prerrequisitos + criterio + limpieza

Agente + abilities + adversary + planner

Ejecución instrumentada

Datos, alerta, prevención y respuesta

Comparar con criterio esperado

Corregir y repetir

Anatomía de un atomic reproducible

La definición identifica técnica, plataformas, entradas, ejecutor, comando, dependencias y, cuando corresponde, limpieza. -CheckPrereqs permite inspeccionar requisitos; obtenerlos automáticamente sigue siendo una modificación que debe revisarse. El cleanup reduce artefactos conocidos, pero no garantiza restaurar snapshots, alertas, cachés o todos los cambios. Para pruebas riesgosas se usa una VM desechable y se compara su estado antes y después.

El identificador del test, versión del repositorio y valores de entrada forman parte de la evidencia. Sin ellos, dos ejecuciones con el mismo ID ATT&CK pueden no ser comparables.

Cómo razona Apache Caldera

En CALDERA, un agent representa el endpoint que ejecuta tareas; una ability define una capacidad ejecutable y su mapeo; un adversary profile agrupa abilities; y un planner decide orden o elegibilidad durante una operación. Los facts obtenidos pueden satisfacer variables y habilitar acciones posteriores. Esa dependencia de estado acerca la prueba a una cadena, pero también aumenta impacto potencial.

Autonomía no significa ausencia de supervisión. Se limitan agentes, objetivos, abilities, duración y condiciones de parada. Primero se ejecuta en modo controlado y se revisa cada comando. La emulación continua solo se programa cuando limpieza, aislamiento, propiedad de alertas y regresión están demostrados.

Interpretar el resultado sin sobreafirmar

Para cada paso se registra: ¿se ejecutó?, ¿qué dato apareció?, ¿hubo prevención?, ¿se generó alerta?, ¿llegó al analista?, ¿la respuesta fue correcta? Un fallo de ejecución no equivale a una detección y una alerta manualmente encontrada no equivale a una capacidad operacional. Navigator resume el mapa; el detalle vive en la evidencia de cada test.

📖 Definiciones y características

📔 Glosario

🧰 Herramientas y preparación

⚠️ Atomic Red Team ejecuta acciones ofensivas reales (aunque acotadas): córrelo solo en máquinas de laboratorio con snapshots, nunca en producción. Caldera controla agentes: despliégalos únicamente en hosts propios del lab. Revisa siempre qué hace cada test antes de ejecutarlo.

🧪 Laboratorio guiado

  1. Instala Atomic Red Team:

powershell IEX (IWR 'https://raw.githubusercontent.com/redcanaryco/invoke-atomicredteam/master/install-atomicredteam.ps1' -UseBasicParsing) Install-AtomicRedTeam -getAtomics

  1. Ejecuta un test atómico. Lanza un test de una técnica de esta parte, p. ej. Kerberoasting o T1059.001:

powershell Invoke-AtomicTest T1558.003 -ShowDetails Invoke-AtomicTest T1558.003

Luego limpia con -Cleanup. 3. Valida la detección. Busca en tu SIEM/EDR el evento asociado y confirma si hubo alerta. 4. Despliega Apache Caldera. Usa una versión fijada del repositorio actual, crea un entorno virtual y sigue la guía de esa versión. Arranca el servidor solo dentro de la red aislada; abre la consola y despliega un agente de laboratorio en una VM autorizada. 5. Lanza una operación. Usa un adversary profile existente (p. ej. "Discovery") o crea uno encadenando abilities de discovery → credential access. 6. Observa la cadena. Sigue en Caldera qué abilities ejecuta el planner y correlaciona cada una con la telemetría en el SIEM. 7. Cierra el ciclo. Marca en Navigator las técnicas emuladas como detectadas/no detectadas y anota qué reglas faltan por crear.

✍️ Ejercicios

  1. Ejecuta 3 tests atómicos de técnicas distintas y limpia tras cada uno.
  2. Para cada test, verifica si tu SIEM lo detecta y anótalo.
  3. Despliega un agente Caldera y confírmalo en la consola.
  4. Crea un adversary profile con 4 abilities encadenadas.
  5. Lanza la operación y documenta la secuencia del planner.
  6. Genera una capa de cobertura en Navigator con lo emulado.

📝 Reto verificable

Ejecuta una campaña de emulación automatizada en tu lab combinando ambas herramientas: al menos 5 tests atómicos y una operación de Caldera con un perfil de 4+ abilities, validando la detección de cada TTP en tu SIEM/EDR. Criterio de aceptación: presentas la salida de los 5 tests atómicos (con su limpieza), la operación de Caldera con su secuencia de abilities, y una capa de Navigator que marca cada técnica emulada como detectada o no, con la regla pendiente para las no detectadas.

⚠️ Errores comunes

Síntoma / mensaje Causa y cómo arreglar
Install-AtomicRedTeam falla ExecutionPolicy o TLS; ajusta la policy en la VM de lab
Un test deja residuos No corriste -Cleanup; usa snapshots y limpia siempre
Agente Caldera no aparece Egress/firewall bloquea; revisa la URL del server y conectividad del lab
El planner no avanza Faltan facts/requisitos de las abilities; revisa dependencias
Detección incoherente SIEM sin la fuente de datos; instrumenta antes de emular

❓ Preguntas frecuentes

❓ ¿Atomic Red Team o Caldera? Complementarios: Atomic para validar detecciones técnica por técnica; Caldera para emular cadenas de ataque autónomas de un actor. Juntos cubren el espectro.

❓ ¿Es seguro correr Atomic en cualquier máquina? No. Ejecuta acciones ofensivas reales; úsalo solo en labs con snapshots y tras leer qué hace cada test. Nunca en producción.

❓ ¿Esto reemplaza al Red Team humano? No. Automatiza la emulación repetible y la validación de detecciones, pero la creatividad, el OPSEC y la adaptación al entorno siguen siendo humanas.

🔗 Referencias

📥 Material descargable

⬅️ Clase anterior

Clase 179 — Reporte y métricas de Red Team

➡️ Siguiente clase

Clase 181 — El SOC moderno: roles, niveles y procesos