En esta oportunidad, y debido al escaso material disponible en español, analizamos en detalle el fascinante mundo de la Emulación de Adversarios. Si bien este artículo está dirigido principalmente a aquellos que aún no han leído mucho sobre esta temática, esperamos que para los lectores más experimentados sea de utilidad y les contribuya a consolidar estos conceptos.
Qué es la emulación de adversarios y qué objetivos persigue
La emulación de adversarios, es un tipo de ejercicio de seguridad ofensiva en el que se busca imitar las técnicas de algún atacante en particular (adversario) para entender si una organización cuenta con la visibilidad necesaria para detectar, responder y mitigar un ataque.
Ya lo decía Sun-Tzu en un fragmento de su obra “El arte de la guerra”, allá por el siglo V A.C…
“Si conoces a tu enemigo y te conoces a ti mismo, no debes temer el resultado de cien batallas. Si te conoces a ti mismo, pero no conoces a tu enemigo, por cada victoria obtenida también sufrirás una derrota. Si no conoces a tu enemigo ni a ti mismo, caerás en cada batalla”.
Para este ejercicio se construye un escenario basado en alguna metodología o marco de trabajo que luego será ejecutado en una organización por el equipo atacante (Red team), y el mismo permitirá entender cómo podrían actuar los defensores (Blue team) frente al mismo. Este ataque busca ser realista, utilizando las mismas tácticas, técnicas y procedimientos de un adversario sofisticado que realiza ataques dirigidos. De este tipo de ejercicios colaborativos entre los equipos Red team y Blue team emerge un equipo virtual colaborativo denominado Purple team.
Por otra parte, este tipo de ejercicios no solamente buscan evaluar los aspectos tecnológicos de la seguridad y sus controles preventivos, sino que su alcance se extiende también a evaluar y mejorar la madurez de los procesos y los diversos roles de seguridad dentro una organización, como los de un SOC (Security Analysts, Incident Responders, Threat Hunters), CISO, Administradores de sistemas, y a las personas detrás de estos roles.
Metodologías y frameworks utilizados para la emulación de adversarios
MITRE ATT&CK
MITRE ATT&CK es una base de conocimiento de tácticas, técnicas y procedimientos de adversarios basada en observaciones del mundo real. La base de conocimientos de ATT&CK se presenta en forma de matriz y se utiliza como base para el desarrollo de otras metodologías e inteligencia y modelado de amenazas específicas para instituciones de sectores privados y públicos. Por otra parte, en los últimos años ha sido ampliamente adoptada por la comunidad de entusiastas, profesionales y proveedores de seguridad del mercado.
Lectura recomendada: Cómo utilizar MITRE ATT&CK: un repositorio de técnicas y procedimientos de ataques y defensas
La matriz de ATT&CK está conformada principalmente por los siguientes componentes:
Tácticas (columnas):
Las tácticas representan el "para qué", es decir, el objetivo por el que se aplica una técnica de ATT&CK y la fase del ataque. Por ejemplo, es posible que el atacante intente obtener acceso inicial a un sistema utilizando técnicas y subtécnicas de phishing.
Técnicas (las celdas debajo de cada columna):
Las técnicas representan "cómo" un adversario logra la táctica, realizando qué acción en particular. Por ejemplo, un adversario puede hacer un volcado de las credenciales desde la memoria del sistema.
Subtécnicas (II):
Son una descripción aún más específica, por lo que describen el comportamiento a más bajo nivel que una técnica. Por ejemplo, un adversario puede volcar las credenciales desde la memoria accediendo a los secretos alojados en la "Autoridad de seguridad local" (LSA).
Procedimientos:
Los procedimientos específicos que los adversarios usan para esas técnicas o subtécnicas. Por ejemplo, un procedimiento podría ser un adversario que usa PowerShell para inyectarse en el proceso "lsass.exe" y volcar las credenciales indagando en el “Servicio de subsistema de autoridad de seguridad local” (LSASS).
MITRE Shield
MITRE Shield es una iniciativa reciente que se complementa con ATT&CK conjugando una base de conocimientos en donde se organizan las lecciones aprendidas respecto a conceptos como la Defensa Activa, Defensa Informada de las Amenazas y Emulación de Adversarios. MITRE SHIELD fue pensado con la premisa de crear una base de conocimiento libre que permita a las organizaciones a conocer cómo proteger sus los datos y sus activos, partiendo de la base de que hay mucho que aprender de los atacantes.
¿Cómo nos atacan los adversarios?, ¿Qué herramientas utilizan?, ¿Qué actividades realizan después de encontrar una brecha de seguridad?, ¿Qué es lo que buscan en última instancia?
Al igual que ATT&CK, Shield se presenta como una matriz y está compuesta por los siguientes componentes:
Tácticas (título de las columnas)
Describe lo que el defensor está tratando de hacer para proteger los datos y sus activos.
Técnicas (las celdas debajo de cada columna):
Describe las formas a las que acuden los defensores para cumplir con esos objetivos.
Es importante destacar algunas estrategias fundamentales para la aplicación del concepto de la Defensa Activa, tales como técnicas aún poco comunes cómo son el “ocultamiento” y el “engaño”, así como viejos conocidos como el concepto de la reducción de la superficie del ataque. También resulta importante mencionar que las técnicas de Shield están mapeadas con las técnicas ofensivas de ATT&CK, de esta manera, podemos acudir a distintas técnicas defensivas con el fin de identificar rápidamente como podríamos contrarrestar las técnicas ofensivas.
Recomendamos la lectura del siguiente documento introductorio a MITRE SHIELD.
SCYTHE PTEF (Purple Team Exercise Framework)
La compañía SCYTHE desarrollo un marco de ejercicios de Purple Team (PTEF) facilitando la creación de un programa formal para la realización de ejercicios continuos de emulación de adversarios. Este marco abarca detalles específicos de la metodología, como los roles, el alcance y las responsabilidades involucradas en el ejercicio, la información y detalles de inteligencia que serán necesarios de recopilar previamente, la preparación del ejercicio, su ejecución, y las lecciones aprendidas.
Herramientas para comenzar con emulación de adversarios
CALDERA (MITRE)
Caldera es una herramienta que permite ejecutar fácilmente ejercicios autónomos de ataque, compromiso y respuesta a incidentes. Se basa en el marco MITRE ATT&CK y es un proyecto en constante mantenimiento por el equipo de investigación de MITRE.
Atomic Red Team (Red Canary)
Atomic Red Team permite a los equipos de seguridad probar sus controles mediante la ejecución de los "atomic test", los cuales utilizan las mismas tácticas, técnicas y procedimientos que los adversarios emulados. Todas estas pruebas están también mapeadas con ATT&CK de MITRE.
Infection Monkey (Guardicore)
Infection Monkey es una herramienta de código abierto de simulación de ataques y brechas de seguridad (BAS) que permite probar la resiliencia de los sistemas frente a los ataques. El “mono” utiliza distintos métodos de ataque y explotación de vulnerabilidades, y se autopropaga a través de la red informando su actividad a un servidor de C&C centralizado denominado “Monkey Island”.
Posee integración con marcos como MITRE ATT&CK y el modelo de seguridad Zero Trust.
Slightshot VM, C2 Matrix Edition (SANS)
Se trata de una máquina virtual GNU-Linux provista por el SANS Institute y otros contribuyentes del proyecto C2 Matrix. La misma posee una gran cantidad de herramientas preconfiguradas de C&C (comando y control). Uno de sus objetivos es reducir la curva y el tiempo que conlleva preparar estas herramientas para los ejercicios de emulación de adversarios. Para conocer más sobre esta herramienta, visiten el sitio oficial.
Entre el software preinstalados se destaca: Covenant, Metasploit, Merlin, Empire3 con Starkiller, VECTR, entre otros.
Blue Kit Training Toolset (Encripto)
Blue Team Training Toolkit (BT3) fue diseñado con el objetivo de aprender de los análisis de seguridad en redes informáticas, habilitando a practicar respuesta a incidentes a través de la realización ejercicios de emulación de adversarios basados en ataques y entornos realistas.
SCYTHE
A diferencia de las anteriores, SCYTHE ofrece una plataforma de pago que permite a los equipos Red, Blue y Purple crear y emular campañas de grupos específicos de adversarios. A su vez, las organizaciones pueden validar la postura y exposición de riesgo de su negocio, la de sus empleados, el desempeño de los equipos de seguridad corporativa, y las soluciones y controles de seguridad existentes.
Por último, también aporta algunos recursos interesantes de acceso libre, como son el ya nombrado “Purple Team Exercise Framework” o una colección de planes de emulación de adversarios en formato json, denominada “Community Threats” disponibles en github, entre otros.
Conslusión
La emulación de adversarios ofrece una nueva forma de evaluar de manera práctica y realista las tecnologías, procesos y personas involucradas en la seguridad corporativa de una organización con un enfoque holístico. Este tipo ejercicios ofrecen un gran valor agregado a organizaciones con un nivel, al menos, medianamente maduro en materia de seguridad.
Por otra parte, cabe destacar que este tipo de acciones no remplaza a otras actividades como los Penetration Test o Vulnerability Assesments, sino que son complementarios.
Si esta temática les resulto tan apasionante como a nosotros, les recomendamos las siguientes charlas de DEF CON 2020 (en inglés):
- Deep Dive into Adversary Emulation, Ransomware Edition – Red Team Village (por Jorge Orchilles)
- Adversary Emulation and the C2 Matrix - Red Team Village (por Jorge Orchilles)
- Managing & Showing Value during Red Team Engagements & Purple Team Exercises with (por Jorge Orchilles & Phil Wainbright, VECTR SANS Webcast)