miércoles, septiembre 25, 2019

Caldera Framework: Emulación de adversarios basado en ATT&CK

El MITRE lleva tiempo trabajando con la matriz ATT&CK, la cual ahora se encuentra muy de moda en el ámbito de la seguridad. MITRE ATT&CK es una base de conocimiento de acceso global de Tácticas y Técnicas adversarias basadas en las observaciones del mundo real. En otras palabras, con las amenazas que se han ido encontrando en el mundo real, se han ido observando que tácticas han utilizado y qué técnicas se han llevado a cabo para que la amenaza se convirtiera en realidad.

Figura 1: Caldera Framework: Emulación de adversarios basado en ATT&CK

La base de conocimientos de ATT&CK es utilizada como base para el desarrollo tanto de modelos como de metodologías de amenazas específicas en el sector privado, en el gobierno y en la comunidad de productos y servicios de ciberseguridad. Es algo que ayuda y mucho a entender las amenazas y cómo éstas pueden afectar o impactar en las organizaciones y estados hoy en día.

Técnicas y Tácticas ATT&CK

En este framework se hace referencia a Tácticas ATT&AK para describir los pasos de ataque, a un alto nivel. Este tipo de pasos son utilizados por un adversario. Y se definen las Técnicas ATT&ACK como una forma en la que se ejecuta una determinada táctica. Cada técnica dispone de una descripción, formas para detectarla, formas de prevención y ejemplos de amenazas conocidos que utilizan dicha técnica. En otras palabras, las técnicas son el cómo implementar una táctica. Una táctica puede disponer de diversas técnicas. Muchas de ellas utilizadas en proyectos de Ethical Hacking.

Figura 2: Libro de Ethical Hacking de 0xWord

El MITRE ATT&CK asume la brecha. Esto quiere decir que ATT&CK tiene sentido desde el momento en el que hay intrusión, por lo que, su primera táctica es la intrusión inicial. Cualquier acción realizada anteriormente a este momento queda cubierta en otro marco denominado PRE-ATT&CK.

Figura 3: Explicación de la técnica de Spear Phishing Link

La matriz propuesta va aumentando en tácticas y técnicas y ayuda a visualizar las posibilidades de las amenazas. Además, en un entorno de emulación de adversarios ayuda a ver de un simple vistazo las posibilidades de un ataque contra la organización.

Figura 4: Tácticas y técnicas en el framework

En algunos entornos, las organizaciones pueden optar por la emulación de adversarios. Herramientas como Infection Monkey o Caldera ayudan, y mucho a planificar y ejecutar los planes.

Caldera framework

Caldera es una herramienta que se puede descargar desde su Github. Los requisitos principales son Python 3.5.3 o superior y realizar una descarga recursiva desde el repositorio. Esto es importante, ya que puede evitaros algún quebradero de cabeza.

Figura 5: Caldera en GitHub

Caldera propone un nodo central donde los agentes desplegados en máquinas reportarán la información de las diferentes pruebas o técnicas ejecutadas sobre los sistemas. Al final, se supone que el entorno se ha comprometido, es decir, hay una brecha. Los agentes se pueden generar a través de código Powershell, Bat, Bash e, incluso, agentes para sistemas macOS.

Figura 6: Libro de Pentesting con PowerShell 2ª Ed de 0xWord

Los agentes se crean desde un módulo de Caldera llamado 54ndc47 o Sandacat. Como se puede ver en la imagen, los agentes muestran que están vivos. En este ejemplo, tenemos dos agentes. No se recomienda desplegar más de 20 agentes y siempre, es recomendado, simular un dominio.

Figura 7: Agentes 

Un apartado importante en Caldera es la parte de adversarios. Desde esta funcionalidad se puede configurar y planificar los ataques como si una amenaza real se tratase. Por defecto, vienen implementadas algunas de ejemplo, pero basándonos en ATT&CK y su matriz se pueden implementar amenazas reales observadas en el tiempo y que lancen las técnicas que interesen.

Figura 8: Implementación de amenazas

Una vez configurada o reutilizada una amenaza se puede configurar el plan de lanzamiento en el que los agentes ejecutarán las diferentes técnicas. Aquí se produce la emulación sobre el papel, es decir, en los sistemas seleccionados para ser comprometidos.

Figura 9: Emulación de ataques

Como se puede ver en la imagen, si la prueba sale en verde es que se ha podido obtener información o ejecutar correctamente, evitando las medidas de defensa que pudiera tener la máquina o la red. En el caso de salir la prueba en rojo es que no ha tenido éxito y se puede medir que la defensa o el control ha funcionado correctamente.

Además, si se despliega la información de la prueba se puede obtener el detalle de la ejecución. En el caso de obtener datos se pueden ver dichos datos. Sin duda, es una herramienta interesante que llama, y mucho, la atención. La emulación de adversarios es importante para la seguridad de las organizaciones, ya que se puede medir el funcionamiento de los controles preventivos, cómo reacciona el equipo ante un ataque y cómo funcionan las medidas de detección. Si no has probado Caldera o Infection Monkey es el momento.

Saludos,

Autor: Pablo González Pérez (@pablogonzalezpe), escritor de los libros "Metasploit para Pentesters", "Hacking con Metasploit: Advanced Pentesting" "Hacking Windows", "Ethical Hacking", "Got Root" y “Pentesting con Powershell”, Microsoft MVP en Seguridad y Security Researcher en el equipo de "Ideas Locas" de la unidad CDO de Telefónica.
Para consultas puedes usar el Buzón Público para contactar con Pablo González

No hay comentarios:

Publicar un comentario