Pentesting Active Directory y la Infraestructura Basada en Windows: Guía Práctica y Técnicas

Active Directory (AD) de Microsoft es una piedra angular en la gestión de identidades y accesos en numerosas organizaciones. Su uso extensivo también lo convierte en un objetivo atractivo para los atacantes. Realizar pruebas de penetración (pentesting) en infraestructuras basadas en Windows, especialmente aquellas que utilizan AD, es crucial para identificar y mitigar vulnerabilidades antes de que puedan ser explotadas. Este post aborda las técnicas y tácticas fundamentales para realizar pentesting en Active Directory y otros servicios de infraestructura de Windows.

Preparación del Laboratorio

Antes de comenzar con las pruebas de penetración, es esencial configurar un entorno de laboratorio seguro. Este laboratorio permite practicar ataques sin riesgos para los sistemas reales. Aquí hay algunos pasos esenciales para configurar tu laboratorio:

  1. Herramientas de Virtualización:
    • Utiliza herramientas como VMware Workstation o Oracle VirtualBox.
    • Asegúrate de tener al menos 16 GB de RAM y 10 núcleos de CPU disponibles.
  2. Proyectos de Laboratorio:
    • GOADv2: Un proyecto de Orange Cyberdefense que facilita la creación de un entorno de AD para pruebas.
    • DetectionLab: Un entorno con herramientas de detección preinstaladas como Sysmon y Velociraptor, ideal para simular ataques y probar la detección de estos.

Cadena de Ataque en Active Directory

La cadena de ataque en Active Directory se basa en el modelo de Cyber Kill Chain de Lockheed Martin. Este modelo divide el ataque en varias etapas clave:

  1. Reconocimiento: Identificar y mapear la infraestructura del AD.
  2. Compromiso: Obtener acceso inicial al entorno.
  3. Movimiento Lateral: Explorar y moverse dentro de la red comprometida.
  4. Escalada de Privilegios: Obtener niveles más altos de acceso.
  5. Persistencia: Mantener el acceso a largo plazo en el sistema.

Evasión de Defensa

Los atacantes deben evadir mecanismos de defensa como AMSI (Antimalware Scan Interface), AppLocker y PowerShell Constrained Language Mode (CLM). Aquí se presentan algunas técnicas para evitar estas defensas:

  1. Forzar Errores: Manipular el código para provocar errores que permitan la ejecución.
  2. Ofuscación: Modificar el código para hacerlo menos reconocible por los escáneres.
  3. Parcheo de Memoria: Alterar directamente la memoria para evitar la detección.

Además, es crucial utilizar técnicas de registro mejoradas de PowerShell y herramientas como Sysmon y ETW (Event Tracing for Windows) para detectar actividades sospechosas.

Reconocimiento del Dominio

El reconocimiento del dominio es un paso crítico para mapear la infraestructura y descubrir usuarios y servicios:

  1. Herramientas Integradas:
    • Utilizar cmdlets de PowerShell, WMI y net.exe.
  2. Herramientas de Enumeración:
    • SharpView/PowerView: Herramientas de PowerShell para enumerar datos en AD.
    • BloodHound: Utiliza grafos para mostrar relaciones y permisos en AD.

Acceso a Credenciales

Obtener credenciales es crucial para moverse dentro del entorno. Algunas técnicas incluyen:

  1. Rociado de Contraseñas: Probar contraseñas comunes contra múltiples cuentas.
  2. Captura de Hashes: Utilizar herramientas como Responder para capturar hashes de contraseñas.
  3. Ataques Kerberoasting y ASREPRoasting: Exploitar la autenticación Kerberos para obtener hashes de contraseñas.

Movimiento Lateral

El movimiento lateral permite a los atacantes extender su compromiso dentro de la red:

  1. PSRemoting y RDP: Utilizar PowerShell Remoting y Remote Desktop Protocol.
  2. Impacket: Herramientas para ejecutar comandos y moverse dentro de la red.
  3. Delegación Kerberos: Abusar de configuraciones de delegación para moverse lateralmente.

Escalada de Privilegios

La escalada de privilegios permite obtener acceso completo al dominio:

  1. Explotación de Vulnerabilidades:
    • Zerologon (CVE-2020-1472) y PrintNightmare (CVE-2021-1675).
  2. Abuso de ACLs y Políticas de Grupo: Modificar listas de control de acceso y políticas de grupo para obtener privilegios elevados.

Persistencia en el Dominio

Mantener la persistencia es clave para asegurar que los atacantes puedan regresar incluso después de intentos de limpieza:

  1. Falsificación de Tickets: Crear tickets Kerberos falsos para mantener el acceso.
  2. Manipulación de ACLs: Modificar ACLs para crear puertas traseras persistentes.
  3. Instalación de Claves Esqueleto: Insertar claves esqueleto en controladores de dominio.

Abuso de Servicios de Certificados de Active Directory

Los servicios de certificados de Active Directory (ADCS) son un objetivo valioso. Algunas técnicas incluyen:

  1. Robo de Certificados: Exportar certificados usando CryptoAPI.
  2. Escalada de Privilegios con Certificados: Utilizar certificados para obtener privilegios elevados.
  3. Persistencia con Certificados: Mantener acceso utilizando certificados maliciosos.

Comprometiendo Servidores SQL de Microsoft

Los servidores SQL son objetivos críticos. Las técnicas incluyen:

  1. Enumeración y Descubrimiento: Identificar bases de datos y usuarios.
  2. Escalada de Privilegios: Utilizar procedimientos almacenados y extensiones CLR para ejecutar comandos del sistema operativo.
  3. Movimiento Lateral: Explorar enlaces de bases de datos y cuentas de servicio compartidas.
  4. Persistencia: Utilizar procedimientos de inicio y disparadores maliciosos.

Toma de Control de WSUS y SCCM

WSUS y SCCM son servicios de gestión que pueden ser abusados:

  1. Escalada de Privilegios: Abusar de autenticaciones de cliente para obtener privilegios elevados.
  2. Movimiento Lateral: Utilizar ataques de retransmisión de autenticación.
  3. Compromiso del Sitio: Tomar control de la infraestructura de gestión.

La seguridad de Active Directory y las infraestructuras basadas en Windows requiere una comprensión profunda de las tácticas y técnicas de ataque. Realizar pentesting en estos entornos es esencial para identificar y mitigar vulnerabilidades antes de que puedan ser explotadas. Este post ha cubierto las etapas críticas de la cadena de ataque, las técnicas de evasión de defensa, el acceso a credenciales, el movimiento lateral, la escalada de privilegios, y la persistencia, así como el compromiso de servicios críticos como ADCS, SQL Server, WSUS y SCCM.

Para garantizar la seguridad, es vital mantenerse actualizado con las mejores prácticas de seguridad, aplicar parches regularmente y utilizar herramientas de monitoreo avanzadas para detectar actividades sospechosas.

Referencias:

  1. Splunk Attack Range
  2. Orange Cyberdefense GOADv2
  3. DetectionLab project
  4. Active Directory kill chain diagram
  5. Red team infrastructure wiki
  6. MailSniper
  7. NameMash
  8. EmailAddressMangler
  9. PEAS
  10. PrivExchange
  11. Ruler tool

#Pentesting? #SeguridadInformática?️ #ActiveDirectory? #Ciberseguridad? #HackingÉtico?‍? #RedTeam? #InfraestructuraTI?️ #Vulnerabilidades⚠️ #EvasiónDeDefensas?️ #Explotación?

Previous Post

Next Post

Loading Next Post...
Follow
Search Trending
Popular Now
Loading

Signing-in 3 seconds...

Signing-up 3 seconds...

Cart
Cart updating

ShopYour cart is currently is empty. You could visit our shop and start shopping.