Register to stream ATT&CKcon 2.0 October 29-30

Pass the Ticket

Pass the ticket (PtT) is a method of authenticating to a system using Kerberos tickets without having access to an account's password. Kerberos authentication can be used as the first step to lateral movement to a remote system.

In this technique, valid Kerberos tickets for Valid Accounts are captured by Credential Dumping. A user's service tickets or ticket granting ticket (TGT) may be obtained, depending on the level of access. A service ticket allows for access to a particular resource, whereas a TGT can be used to request service tickets from the Ticket Granting Service (TGS) to access any resource the user has privileges to access. [1] [2]

Silver Tickets can be obtained for services that use Kerberos as an authentication mechanism and are used to generate tickets to access that particular resource and the system that hosts the resource (e.g., SharePoint). [1]

Golden Tickets can be obtained for the domain using the Key Distribution Service account KRBTGT account NTLM hash, which enables generation of TGTs for any account in Active Directory. [3]

ID: T1097
Tactic: Lateral Movement
Platform: Windows
System Requirements: Requires Microsoft Windows as a target system and Kerberos authentication enabled.
Data Sources: Authentication logs
Contributors: Ryan Becwar; Vincent Le Toux
Version: 1.0

Procedure Examples

Name Description
APT29 APT29 used Kerberos ticket attacks for lateral movement. [11]
APT32 APT32 successfully gained remote access by using pass the ticket. [13]
BRONZE BUTLER BRONZE BUTLER has created forged Kerberos Ticket Granting Ticket (TGT) and Ticket Granting Service (TGS) tickets to maintain administrative access. [12]
Empire Empire can leverage its implementation of Mimikatz to obtain and use Silver and Golden Tickets. [8]
Ke3chang Ke3chang has used Mimikatz to generate Kerberos golden tickets. [10]
Mimikatz Mimikatz’s LSADUMP::DCSync, KERBEROS::Golden, and KERBEROS::PTT modules implement the three steps required to extract the krbtgt account hash and create/use Kerberos tickets. [4] [5] [6] [7]
SeaDuke Some SeaDuke samples have a module to use pass the ticket with Kerberos for authentication. [9]

Mitigations

Mitigation Description
Active Directory Configuration For containing the impact of a previously generated golden ticket, reset the built-in KRBTGT account password twice, which will invalidate any existing golden tickets that have been created with the KRBTGT hash and other Kerberos tickets derived from it.
Password Policies Ensure that local administrator accounts have complex, unique passwords.
Privileged Account Management Limit domain admin account permissions to domain controllers and limited servers. Delegate other admin functions to separate accounts. [1]
User Account Management Do not allow a user to be a local administrator for multiple systems.

Detection

Audit all Kerberos authentication and credential use events and review for discrepancies. Unusual remote authentication events that correlate with other suspicious activity (such as writing and executing binaries) may indicate malicious activity.

Event ID 4769 is generated on the Domain Controller when using a golden ticket after the KRBTGT password has been reset twice, as mentioned in the mitigation section. The status code 0x1F indicates the action has failed due to "Integrity check on decrypted field failed" and indicates misuse by a previously invalidated golden ticket. [14]

References