Attacktive Directory

Información General

  • Nombre de la máquina: AttacktiveDirectory

  • Dirección IP: 10.10.7.146

  • Dominio: spookysec.local

  • Objetivo: Obtener acceso como Administrator mediante técnicas de post-explotación en un entorno Active Directory.


Parte 1: Reconocimiento y Enumeración

Teoría

El reconocimiento temprano permite confirmar que el objetivo es un Domain Controller (DC), lo cual es crítico para el flujo ofensivo. Con los puertos abiertos identificamos servicios clave del ecosistema Active Directory, como Kerberos, LDAP y SMB, que definen el camino de ataque.

Escaneo de puertos

nmap -sS -p- -n -Pn --min-rate 5000 -vvv 10.10.7.146
nmap -sCV -p53,80,88,135,139,389,445,464,593,636,3268,3269,3389,5985,9389,47001,49664,49665,49666,49669,49672,49674,49676,49679,49684,49697,49836 10.10.7.146

PORT      STATE SERVICE       VERSION
53/tcp    open  domain        Simple DNS Plus
80/tcp    open  http          Microsoft IIS httpd 10.0
|_http-server-header: Microsoft-IIS/10.0
| http-methods: 
|_  Potentially risky methods: TRACE
|_http-title: IIS Windows Server
88/tcp    open  kerberos-sec  Microsoft Windows Kerberos (server time: 2025-04-29 16:30:00Z)
135/tcp   open  msrpc         Microsoft Windows RPC
139/tcp   open  netbios-ssn   Microsoft Windows netbios-ssn
389/tcp   open  ldap          Microsoft Windows Active Directory LDAP (Domain: spookysec.local0., Site: Default-First-Site-Name)
445/tcp   open  microsoft-ds?
464/tcp   open  kpasswd5?
593/tcp   open  ncacn_http    Microsoft Windows RPC over HTTP 1.0
636/tcp   open  tcpwrapped
3268/tcp  open  ldap          Microsoft Windows Active Directory LDAP (Domain: spookysec.local0., Site: Default-First-Site-Name)
3269/tcp  open  tcpwrapped
3389/tcp  open  ms-wbt-server Microsoft Terminal Services
| rdp-ntlm-info: 
|   Target_Name: THM-AD
|   NetBIOS_Domain_Name: THM-AD
|   NetBIOS_Computer_Name: ATTACKTIVEDIREC
|   DNS_Domain_Name: spookysec.local
|   DNS_Computer_Name: AttacktiveDirectory.spookysec.local
|   Product_Version: 10.0.17763
|_  System_Time: 2025-04-29T16:30:58+00:00
| ssl-cert: Subject: commonName=AttacktiveDirectory.spookysec.local
| Not valid before: 2025-04-28T16:21:11
|_Not valid after:  2025-10-28T16:21:11
|_ssl-date: 2025-04-29T16:31:07+00:00; 0s from scanner time.
5985/tcp  open  http          Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
|_http-title: Not Found
9389/tcp  open  mc-nmf        .NET Message Framing
47001/tcp open  http          Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
|_http-title: Not Found
49664/tcp open  msrpc         Microsoft Windows RPC
49665/tcp open  msrpc         Microsoft Windows RPC
49666/tcp open  msrpc         Microsoft Windows RPC
49669/tcp open  msrpc         Microsoft Windows RPC
49672/tcp open  msrpc         Microsoft Windows RPC
49674/tcp open  ncacn_http    Microsoft Windows RPC over HTTP 1.0
49676/tcp open  msrpc         Microsoft Windows RPC
49679/tcp open  msrpc         Microsoft Windows RPC
49684/tcp open  msrpc         Microsoft Windows RPC
49697/tcp open  msrpc         Microsoft Windows RPC
49836/tcp open  msrpc         Microsoft Windows RPC
Service Info: Host: ATTACKTIVEDIREC; OS: Windows; CPE: cpe:/o:microsoft:windows

Host script results:
| smb2-security-mode: 
|   3:1:1: 
|_    Message signing enabled and required
| smb2-time: 
|   date: 2025-04-29T16:30:57
|_  start_date: N/A

Puertos relevantes encontrados

  • 88/tcp (Kerberos): Principal sistema de autenticación en AD.

  • 389/tcp (LDAP): Permite consultar información de objetos de dominio.

  • 445/tcp (SMB): Acceso a recursos compartidos en red.

  • 5985/tcp (WinRM): Shell remota vía PowerShell, útil para obtener RCE como usuarios válidos.

  • 3268/tcp (LDAP Global Catalog): Usado para búsquedas a nivel de todo el bosque. Su presencia confirma que estamos frente a un DC.


Parte 2: Enumeración de usuarios vía Kerberos

Teoría

Kerberos responde de manera distinta si un usuario existe o no, incluso sin conocer la contraseña. Esto permite enumerar usuarios a través de diferencias en códigos de error.

Herramienta usada

Resultado

Identificamos usuarios válidos como svc-admin, backup, administrator, robin, james, paradox, entre otros.


Parte 3: AS-REP Roasting

Teoría

Si un usuario no requiere preautenticación, el KDC entrega un ticket cifrado con el hash NTLM del usuario. Esto permite realizar ataques offline sin generar eventos de seguridad.

Herramienta

Archivos requeridos

Resultado

El usuario svc-admin no requería preautenticación. Se extrajo el hash AS-REP para crackeo offline.


Parte 4: Cracking del hash

Teoría

El hash AS-REP puede ser crackeado con ataques de diccionario si las políticas de contraseñas son débiles.

Herramienta

Resultado

Credencial recuperada: svc-admin : management2005


Parte 5: Enumeración SMB y extracción de secretos

Teoría

Muchos entornos permiten lectura en recursos compartidos sin control estricto. La exposición de credenciales en texto plano es un error de seguridad frecuente, especialmente cuando los shares contienen scripts, configuraciones o respaldos mal protegidos.

Herramientas

Comandos y resultados exactos

Enumeración con smbmap:

Acceso al share backup con smbclient:

Descarga del archivo:

Lectura del archivo descargado:

Decodificación de la cadena base64:

Resultado: Se extrajo una credencial válida en texto plano desde el recurso backup:

Parte 6: Dump de Hashes con SecretsDump (DCSync)

Teoría

El protocolo DRSUAPI permite que controladores de dominio se repliquen entre ellos. Si un usuario tiene privilegios suficientes (como Backup Operators), se puede abusar este mecanismo para extraer hashes del dominio.

Herramienta

Resultado

Hash NTLM del Administrator obtenido:


Parte 7: Acceso con Pass-The-Hash

Teoría

El protocolo NTLM permite autenticación utilizando directamente el hash NTLM, sin necesidad de conocer la contraseña en texto plano. Esto permite a un atacante autenticarse mediante técnicas como Pass-the-Hash, siempre que el servicio de destino (como WinRM) no esté configurado para evitarlo.

Herramienta

Resultado

Se obtuvo una shell interactiva como Administrator sobre la máquina objetivo. Durante la sesión, se recorrieron perfiles de usuarios y se identificaron múltiples archivos sensibles con contenido representativo del compromiso.

Archivos encontrados:

  • C:\Users\svc-admin\Desktop\user.txt.txt

  • C:\Users\backup\Desktop\PrivEsc.txt

  • C:\Users\Administrator\Desktop\root.txt


Recomendaciones de Seguridad

  1. Forzar preautenticación para todos los usuarios.

  2. Restringir acceso a shares con información sensible.

  3. Segmentar privilegios: evitar que cuentas no administrativas accedan a NTDS.dit o funciones DRSUAPI.

  4. Auditar y monitorear el uso de herramientas de replicación.

  5. Deshabilitar NTLM o restringir su uso.

  6. Aplicar protecciones sobre servicios expuestos como SMB y WinRM (firewall, ACLs, etc).

Última actualización