# Golden Tickets

The KRBTGT Account, every Active Directory Domain Controller is responsible for handling Kerberos Ticket requests, which are used to authenticate users and grant them access to computers and applications. The KRBTGT account is used to encrypt and sign all Kerberos tickets within a domain, and a domain controllers use the account password to decrypt Kerberos tickets for validation. This account password never changes, and the account name is the same in every domain, so it's a well-known target for attackers.

**What's the risk?**

Once an attacker compromises the KRBTGT account they can create forged Kerberos tickets (TGTs) which can be used to request TGS tickets for any service on any computer in the domain. But remember the hardest part of this attack is you need Administrator Access to the DC (Domain Controller), these attacks are hard to detect because they are valid TGTs.

For Demo purposes we have the KRBTGT Hash and a Shell  with the user Mgarcia, if we enumerate the DC Directory we don't have access.

![](https://315180959-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MRh03Vwd4nuiUi3Oje7%2F-MWuKRcrptTRJIIUwTIV%2F-MWuKTt9ie5HdsurK_4R%2Fimage.png?alt=media\&token=9e90cea7-a097-4856-8a88-386d08481eae)

Now let us use the binary form of mimikatz as there is no way that I am familiar with that this technique will work straight from Covenant I move to a local CMD (you can also use RDP if available and probably PSRemoting), we will first need the SID of the User and the KRBTGT hash

![](https://315180959-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MRh03Vwd4nuiUi3Oje7%2F-MWuKRcrptTRJIIUwTIV%2F-MWuKUhlTWl0s5O5k5XW%2Fimage.png?alt=media\&token=5d0f7c60-0916-4d4c-bb12-e3aec4edcdc4)

We will copy everything but the last 4 digits as they identify the user and we want to replace that with a 500 SID user. In our previous attack DCSync we grabbed the KRBTGT hash so we can skip this, as the user had DCSync permissions it was easy to grab without compromising the DC.

And now we will use the command for mimikatz to grab and pass the ticket onto our current session.

![](https://315180959-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MRh03Vwd4nuiUi3Oje7%2F-MWuKRcrptTRJIIUwTIV%2F-MWuKVfYUntEbvU6LCRe%2Fimage.png?alt=media\&token=71142320-4512-4d15-bdbd-ec1114740537)

Once we execute the command successfully, we can enumerate the C Drive from the DC.

![](https://315180959-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MRh03Vwd4nuiUi3Oje7%2F-MWuKRcrptTRJIIUwTIV%2F-MWuKWbciGUC_Cf45WEt%2Fimage.png?alt=media\&token=f05b52dc-59a7-4216-8d29-d08e3573dc6f)

As you can see now with the KRBTGT Account's NTLM Hash we can forge ticket to any user or create our own and give them the highest privileges on the Domain, this is a great method for persistence


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://dmcxblue.gitbook.io/red-team-notes-2-0/active-directory/active-directory-attacks/golden-tickets.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
