El marco MITRE ATT&CK es un marco de referencia y empleado en el ámbito de la ciberseguridad. Fue desarrollado en 2013 por MITRE, una organización estadounidense sin ánimo de lucro y desde entonces no ha dejado de actualizarse.
ATT&CK es un acrónimo derivado de “Adversarial Tactics, Techniques and Common Knowledge”, en español “Tácticas, Técnicas y Conocimientos Comunes de Adversarios”. El marco MITRE ATT&CK es una matriz de datos estructurada en: tácticas, técnicas y procedimientos (TTP), comúnmente utilizados por los adversarios. Este enfoque permite a las organizaciones identificar intrusiones independientemente de su nivel de desarrollo, así como tomar medidas para protegerse.
Este marco es globalmente utilizado por las empresas y organizaciones debido a que se basa en ataques reales, es decir, las TTP que aparecen han sido recopiladas por profesionales a partir de observaciones reales de intrusiones. Por otra parte, este marco ofrece tres matrices distintas: Enterprise, ICS (Industrial Control Systems o Sistemas de Control Industrial) y entorno de dispositivos móviles.
Tácticas
La táctica representa el “por qué” de una técnica o sub técnica de ATT&CK. Es el objetivo del adversario: la razón para realizar una acción. Las tácticas sirven como categorías contextuales útiles para técnicas individuales y cubren anotaciones estándar para acciones que los adversarios realizan durante una operación, como establecer persistencia, descubrir información, moverse lateralmente, ejecutar archivos o exfiltrar datos.
Las tácticas se tratan como “tags” dentro de ATT&CK, donde una técnica o sub-técnica está asociada con una o más categorías de tácticas, dependiendo de los diferentes resultados que pueden obtenerse utilizando una técnica. Es decir, una misma técnica puede servir para conseguir el objetivo de varias tácticas distintas.
Cada táctica contiene una definición que describe la categoría y sirve de guía para saber qué técnicas deben estar dentro de la táctica. Por ejemplo, Ejecución (execution) se define como una táctica que representa (sub)técnicas que resultan en la ejecución de código controlado por el adversario en un sistema local o remoto. Esta táctica se utiliza a menudo junto con el acceso inicial (initial access) ya que para poder llevar a cabo la ejecución de código remoto (o arbitrario) hay que conseguir primero acceso, y por otro lado, el movimiento lateral para ampliar el acceso a sistemas remotos en una red una vez se ha accedido a esta.
Las tácticas son importantes, pero no ayudan a garantizar la defensa contra ellas. No es posible defenderse directamente contra este “nivel”, es decir, tomar medidas como defensores, ya que actualmente, por ejemplo, en “TA-006 – Acceso a credenciales” hay quince técnicas y cuarenta sub-técnicas.
Las tácticas son:
– Reconocimiento (Reconaissance): El adversario intenta recopilar toda la información posible para planificar operaciones futuras.
– Desarrollo de recursos (Resource Development): El adversario intenta establecer recursos que pueda utilizar para respaldar las operaciones (registro de dominio, compra de VPN, desarrollo de malware…).
– Acceso inicial (Initial Access): Consiste en emplear técnicas que utilizan varios vectores de entrada para lograr el primer acceso a la red (spear-phishing es una de las técnicas más empleadas).
– Ejecución (Execution): Consiste en técnicas que dan como resultado la ejecución de código controlado por el adversario en un sistema local o remoto (buffer overflow, ejecución de malware…). Esto, por ejemplo, ocurre cuando la víctima interactúa con un link o documento malicioso.
– Persistencia (Persistence): El adversario emplea diversas técnicas para mantener su acceso al sistema aunque se produzcan reinicios, cambios de credenciales y otras interrupciones que podrían cortar su acceso (implementando puertas traseras (backdoors)…).
– Escalada de privilegios (Privilege Escalation): Consiste en técnicas que los adversarios utilizan para elevar sus permisos en un sistema o red.
– Evasión de medidas de defensa (Defense evasión): técnicas utilizadas para evitar ser detectados durante la intrusión. Es común que el adversario deshabilite defensas, modifique el registro o detecte entornos virtualizados para dificultar su análisis.
– Acceso a credenciales (Credential Access): Consiste en técnicas destinadas a robar credenciales como nombres de cuentas y contraseñas, así como su empleo. La fuerza bruta o “Adversary-in-the-Middle” son algunas de las técnicas más famosas.
– Descubrimiento (Discovery): Consiste en técnicas que un adversario puede utilizar para obtener conocimiento sobre el sistema y la red interna.
– Movimiento Lateral (Lateral Movement): Técnicas empleadas por los adversarios para entrar y controlar sistemas remotos en una red (RDP a otro sistema, moverse a través de SecureShell, etc…)
– Recopilación (Collection): Consiste en técnicas que los adversarios pueden utilizar para recopilar información y las fuentes de las que se recopila información que son relevantes para cumplir con los objetivos del adversario.
– Comando y control (Command & Control): técnicas que los adversarios pueden utilizar para comunicarse con los sistemas bajo su control y enviar órdenes como ejecutar código, descargar un documento (que puede ser un malware) o exfiltrar datos una vez que han conseguido el acceso a estos.
– Exfiltración (Exfiltration): Aquí se encuentran las técnicas que los adversarios tienen a su disposición para enviar los datos comprometidos. Una vez que han recopilado los datos, los adversarios suelen empaquetarlos para evitar ser detectados. Esto incluye compresión y cifrado.
– Impacto (Impact): Aquí se encuentran las técnicas que los adversarios emplean para alterar la disponibilidad o comprometer la integridad mediante la manipulación de procesos operativos y de negocio (ransomware, wipers…)
Técnicas
Las técnicas representan “cómo” un adversario logra un objetivo táctico realizando una acción determinada. Por ejemplo, un adversario puede extraer credenciales de un sistema operativo para obtener acceso a credenciales útiles dentro de una red. Las técnicas también pueden representar “qué” gana un adversario al realizar una acción. Esta es una distinción útil para la táctica de “Discovery“, ya que las técnicas destacan qué tipo de información está buscando un adversario con una acción en particular. Las sub-técnicas desglosan aún más las conductas descritas por las técnicas en descripciones más específicas de cómo se utiliza la conducta para lograr un objetivo.
Por ejemplo, cuando un adversario quiere conseguir acceso a la red, puede emplear distintas sub-técnicas dentro de una técnica. En el caso de Phishing existen diversas sub-técnicas, como phishing que emplea un enlace malicioso, un documento malicioso o a través de servicios o IA, todas las sub-técnicas comparten un mismo objetivo (la táctica) pero se consigue a través de diversas sub técnicas.
En resumen, existen diversas formas, o técnicas, para lograr objetivos tácticos, y por ello encontramos que hay múltiples técnicas en cada categoría de tácticas. Del mismo modo, puede haber varias formas de llevar a cabo una técnica. Debido a esto, se pueden encontrar sub-técnicas distintas bajo una técnica: es decir, se producen subdivisiones desde Tácticas a técnicas y luego sub-técnicas dentro de estas últimas.
Procedimientos
Los procedimientos son otro componente importante del concepto de TTP, y no se puede hablar de tácticas y técnicas sin incluir también los procedimientos. Dentro del ATT&CK, los procedimientos son la implementación específica que los adversarios han utilizado para las técnicas o sub-técnicas. Por ejemplo, un procedimiento sería como APT28 utiliza PowerShell para ejecutar el binario nativo de Windows “lsass.exe” con el objetivo de volcar las credenciales almacenadas en la memoria del sistema.
Los dos aspectos importantes a tener en cuenta sobre los procedimientos en ATT&CK son que se trata de cómo un adversario utiliza técnicas y sub técnicas y, por otra parte, que un procedimiento puede abarcar múltiples técnicas y sub-técnicas. Los procedimientos también pueden incluir el uso de herramientas específicas en su ejecución y se documentan en ATT&CK como el uso de técnicas observadas en la práctica en la sección “Ejemplos de procedimientos” de las páginas de técnicas y sub-técnicas.
En resumen, este apartado de procedimientos hace referencia a cómo el adversario lleva a cabo las técnicas y sub técnicas, qué herramientas usa, comandos o similar para poder llevar a cabo la acción que tienen como objetivo.