Opiniones
Una reseña de Certified Red Team Lead (CRTL)


VP of Hacking
6 min
Hace unos meses (el 18 de agosto, para ser precisos), Zero-Point Security, de @Rastamouse's, lanzó el curso Red Team Ops II, o RTO-2 para abreviar:

RTO-2 está pensado como una continuación del curso RTO, enfocado en tácticas avanzadas de OPSEC, incluyendo cómo evadir los controles modernos de endpoint de Windows en entornos empresariales. Esto significa que RTO-2 es un curso avanzado, y se recomienda haber tomado y aprobado al menos el examen de RTO antes de intentar este curso y su certificación asociada.
Al momento de escribir esto, RTO-2 tiene un precio de £399.00, que incluye acceso de por vida al contenido del curso y un vale para el examen. Puedes pagar un adicional (£425.00 en total) por 40 horas de acceso al laboratorio, lo cual es muy recomendable.
En esta publicación te daré un resumen del contenido del curso y compartiré mi experiencia en el examen que me dio el título de Certified Red Team Lead.
Red Team Ops II
A principios de este año, tomé y completé el curso RTO y el CRTO examen, asociado, tras lo cual di una charla (en español) sobre cómo aprobarlo.
RTO se enfoca en cómo realizar operaciones de Red Team en un entorno de AD multi-forest usando Cobalt Strike.
A lo largo del curso se dan notas y consejos de OPSEC (Operations Security), pero ese no es el enfoque principal. RTO-2 nació para complementar a RTO en el terreno de OPSEC.
Actualmente, el curso RTO-2 está dividido en siete capítulos:
C2 Infrastructure
Windows APIs
Process Injection
Defense Evasion
Attack Surface Reduction
Windows Defender Application Control
EDR Evasion
El capítulo C2 Infrastructure presenta una forma de tener una arquitectura de C2 versátil, resiliente y segura, incluyendo el uso de redirectores, reglas personalizadas de redirección en Apache para evitar la detección de la infraestructura de C2, certificados SSL para Beacon y estrategias de failover para el beaconing. Esto es muy útil para engagements reales en entornos corporativos maduros y, por lo tanto, algo que todo operador de Red Team debería conocer.
Los capítulos Windows APIs y Process Injection están fuertemente enfocados en el desarrollo de herramientas ofensivas. Primero, se presenta un resumen de las APIs de Windows usadas comúnmente con fines ofensivos, cómo llamar esas funciones desde C++ y cómo usar APIs no administradas desde lenguajes administrados como C# y VBA mediante P/Invoke y D/Invoke. Luego, en el capítulo Process Injection, esas capacidades se usan para inyectar código en procesos mediante una amplia gama de técnicas, desde inyectar código arbitrario en el proceso actual hasta inyectar código en un proceso remoto, o usar funciones no documentadas de ntdll.dll para crear una nueva sección ejecutable en un proceso en ejecución e inyectar el shellcode ahí, e incluso crear un nuevo proceso benigno en estado suspendido, encolar una Asynchronous Procedure Call con el shellcode deseado y despacharla en un nuevo hilo. Son un par de capítulos divertidos.
El capítulo Defense Evasion explica las capacidades que usan los controles de endpoint para detectar comportamiento anómalo, y la forma de evadirlas. Cobalt Strike ofrece de fábrica algunas funciones interesantes de OPSEC, como PPID spoofing, command line spoofing, evitar secciones RWX, cifrado en reposo de la memoria de Beacon y thread stack spoofing. También se menciona qué es y cómo evadir Event Tracing for Windows (ETW), un mecanismo de Windows que se usa para darles a los EDR información sobre eventos despachados desde el modo usuario, sin necesidad de hacer API hooking.
El siguiente capítulo describe Attack Surface Reduction, que consiste en un conjunto de reglas que se pueden aplicar mediante una GPO para prevenir técnicas comunes usadas por atacantes. Las reglas incluyen bloquear llamadas a la API desde macros de Office, la creación de procesos hijos desde aplicaciones de Office, bloquear procesos originados por PSExec y WMI, y bloquear el robo de credenciales desde el proceso LSASS (lo cual complementa mitigaciones como PPL y Credential Guard). Estas reglas se pueden usar en conjunto, ofreciendo una protección defense-in-depth. Sin embargo, se basan principalmente en listas negras, y el capítulo describe formas de evadir algunas de ellas.
Luego viene el capítulo Windows Defender Application Control o WDAC, que trata sobre la protección que permite especificar qué aplicaciones se pueden ejecutar en una máquina, basándose en cosas como su ruta, firma digital y hash del archivo. Como esto es un límite de seguridad (security boundary), Microsoft sí corrige las formas de evadir WDAC. Sin embargo, las configuraciones incorrectas pueden permitir que un atacante burle el control para obtener más acceso a la máquina. Por eso, este capítulo nos enseña una manera de encontrar escenarios comunes que se pueden aprovechar.
Y finalmente, el capítulo EDR evasion ofrece un resumen de cómo funcionan los EDR modernos y algunas formas de evadirlos, incluyendo API unhooking, indirect syscalls y unregistering de kernel callbacks. Un capítulo divertido que incluso incluye exploits en modo kernel para evadir los controles del EDR.
Como puedes ver, el contenido del curso es muy técnico. Por cierto, hay muchos menos videos que en el curso RTO, ya que se asume cierto nivel de conocimiento previo para poder avanzar. Aun así, es un material absolutamente valioso, dado que tienes acceso de por vida al curso y a las actualizaciones relacionadas con su contenido.
Laboratorio
El curso RTO-2 viene con un laboratorio complementario en Cyber Ranges (antes Snaplabs), al que se puede acceder hasta por 40 horas. En el laboratorio puedes practicar todo lo que se presenta en el material escrito. Está compuesto por varias máquinas con distintas configuraciones:
2 máquinas de ataque
2 redirectores
1 DC
1 CA
3 estaciones de trabajo
Exam
Después de inscribirme en RTO-2, me tomó unas tres semanas completar el material dos veces (sí, dos veces), porque había muchos conceptos nuevos que debía asimilar.
El costo del curso incluye un intento de examen. Puedes programarlo en la plataforma en cualquier momento después de iniciar el curso, donde puedes elegir el día y la hora de inicio.
Por ejemplo, yo programé el examen para que empezara el 21 de noviembre a las 9 a.m.
Para el examen, te dan 72 horas o cinco días (lo que ocurra primero) para obtener cuatro flags en un conjunto determinado de máquinas dentro de un entorno de AD. A diferencia de CRTO (donde necesitas 6 de 8 flags para aprobar), en este examen debes conseguir todas las flags para aprobar.
Debes ingresar las flags en un sistema de puntuación que se entrega con el examen, el cual verifica el valor y otorga los puntos. No necesitas escribir un informe, solo ingresar las flags. Al final, me tomó cerca de 11 horas completar el examen:


Sin embargo, como el examen está diseñado para durar cinco días, debes esperar hasta el quinto día para obtener la certificación.
Consejos para el examen
Estas son algunas de las cosas que me ayudaron a completar el examen:
Sigue las indicaciones que da el curso y practícalas en el laboratorio. Solo leer no te dará las habilidades necesarias para completar el examen (al menos a mí no me las dio).
Ten en cuenta que hay cosas que no se cubren en el material del curso. Necesitas sentirte cómodo usando herramientas como Visual Studio Community, no solo para compilar herramientas, sino también para depurarlas.
Practica el desarrollo en C#. Entender cómo funciona un assembly de C# también es una ventaja.
Aunque RTO-2 se basa en la evasión de defensas y tácticas avanzadas de OPSEC, debes sentirte cómodo con cosas como la enumeración de AD, pivoting, movimiento lateral, suplantación de usuarios, ataques a Kerberos, etc., y tener experiencia usando Cobalt Strike. El curso RTO te dará eso.
Técnicamente, no es estrictamente necesario usar Cobalt Strike para todo en el examen, pero debes saber usar otras herramientas que puedan cumplir las mismas funciones.
El curso propone algunos ejercicios. Te sugiero completarlos, ya que eso te dará confianza para enfrentar requisitos inesperados durante el examen.
Por último, pero no menos importante, la enumeración y el reconocimiento son clave para saber con qué tipo de bestia te estás enfrentando.
Resultados del examen
Después de que pasaron los cinco días del examen, recibí un correo con la certificación:

Comparación
Hasta la fecha he obtenido varias certificaciones relacionadas con Red Teaming, incluyendo eCPTXv2, CRTE, CRTP, CRTO, PNPT y OSCP. La mayoría se enfoca en explotar configuraciones incorrectas y vulnerabilidades, algunas en entornos de AD realistas. Como RTO-2 se enfoca fuertemente en la evasión de defensas, las certificaciones más cercanas a él son eCPTXv2 y CRTE. La primera incluye parte del contenido que se encuentra en RTO-2, como evasiones de ETW, EDR y cosas como syscall unhooking y macros sigilosas de Office.
Attack Surface Reduction y Windows Defender Application Control fueron los capítulos que fueron nuevos para mí.
Conclusiones
Red Team Ops II es un curso muy bueno que aborda los controles modernos en infraestructuras empresariales maduras. También te preparará para tener éxito en engagements con entornos restringidos.
El examen es divertido ( (s/fun/HARD AS HELL/g), pero creo que las 72 horas / cinco días que te dan son suficientes para pasar por todas las etapas: desde la rabia, la tristeza y el estrés hasta, finalmente, la alegría.
Empieza ya con el PTaaS de Fluid Attacks
Suscríbete a nuestro boletín
Mantente al día sobre nuestros próximos eventos y los últimos blog posts, advisories y otros recursos interesantes.
Otros posts























