Golden Tickets

General

  • Golden ticket is signed and ecrypted by hash of krbtgt account, making it a valid TGT ticket

  • Since user account validation is not done by the DC/KDC until TGT is older than 20 minutes, we can use even deleted/revoked accounts

  • krbtgt user hash could be used to impersonate any user with any privileges from even a non-domain machine

  • Password change has no effect on this attack

Exploitation

Arguments

Argument
Description

kerberos::golden

Module name

/domain:domain:dollarcorp.moneycorp.local

Domain FQDN

/sid:S-1-5-21-1874506631-3219952063-538504511

SID of the domain

/krbtgt:ff46a9d8bd66c6efd77603da26796f35

NTLM hash of the krbtgt account. Use /aes128 and /aes256 for using AES

/User:Administrator

Username for which the TGT is generated

/id:500 /groups:512

Optional User RID (default 500) and Group default 513 512 520 518 519)

/startoffset:0

Optional when the ticket is available (default 0 right now) in minutes. Use negative for a ticket available from past and a larger number for future.

/endin:600

Optional ticket lifetime (default is 10 years) in minutes. The default AD setting is 10 hours = 600 minutes

/renewmax:10080

Optional ticket lifetime with renewal (default is 10 years) in minutes. The default AD setting is 7 days = 100800

/ptt

Inject ticket in current PowerShell process

/ticket

Save ticket to file for later use

Commands

Executing Commands / Getting a Shell

Detection

  • Event IDs:

    • 4624: Account Logon

    • 4634: Account Logoff

    • 4672: Admin Logon

Last updated