Overpass the hash
Technique
Overpass the Hash (OPtH) is a technique that allows an attacker to convert a user's NTLM or AES hash into a Kerberos ticket (TGT), effectively transitioning from NTLM authentication to Kerberos authentication. This technique is sometimes called "Pass the Key" because it can use AES keys rather than just NTLM hashes.
The advantage of Overpass the Hash over standard Pass the Hash is that it: 1. Provides a fully functional Kerberos ticket, which can access any Kerberos-authenticated service 2. Bypasses restrictions that may exist on NTLM authentication 3. Allows access to services that exclusively use Kerberos 4. Creates fewer suspicious events and generally has better operational security
Prerequisites
Access Level: - To obtain hashes: Administrative access to the system where the user's credentials are cached - To perform the attack: Standard user access to execute the attack tools
System State: - Target system must have valid credentials cached (NTLM hash or Kerberos encryption keys) - Network access to a domain controller for Kerberos ticket requests
Information Needed: - Username - Domain name - User's NTLM hash or Kerberos encryption keys (AES256, AES128, or RC4)
Considerations
Impact
Overpass the Hash provides the ability to impersonate a user for any Kerberos-authenticated resource in the domain, which can lead to: - Access to file shares - Access to internal web applications - Remote management capabilities - Database access - Other domain resource access
OPSEC
- More stealthy than traditional Pass the Hash as it generates normal Kerberos traffic
- Creates legitimate Kerberos tickets that are difficult to distinguish from regular authentication
- Less likely to trigger alerts compared to direct NTLM authentication attempts
- Still creates event logs for Kerberos TGT requests that can be monitored
Execution
Using Mimikatz
-
Extract encryption keys (administrative access required):
-
Perform Overpass the Hash with NTLM hash:
-
Perform Overpass the Hash with AES key (more secure and stealthy):
-
From the spawned command prompt, force Kerberos authentication:
Using Rubeus
-
Extract encryption keys (multiple options):
-
Request a TGT with NTLM hash:
-
Request a TGT with AES key:
-
Verify the ticket was injected:
Combined Approach (Extract and Use)
-
Extract credentials from the current system:
-
Use the extracted hash/key to request a TGT:
-
Access resources using the injected ticket:
Detection & Mitigation
Detection
- Monitor for TGT requests from unexpected systems or for unexpected users
- Look for multiple TGT requests for different users from the same system
- Watch for unusual access patterns following TGT issuance
- Monitor for credential dumping activities that often precede Overpass the Hash
- Look for processes spawned with explicit credentials in command-line parameters
Mitigation
- Implement credential guard to protect credential material in memory
- Use Protected Users security group for privileged accounts
- Enforce strong authentication policies
- Implement time-based restrictions on privileged account usage
- Deploy Privileged Access Workstations (PAWs) for administrative tasks
- Use Just-In-Time (JIT) administration to limit persistent admin rights
- Implement network segmentation to restrict lateral movement
- Deploy Advanced Threat Analytics or Microsoft Defender for Identity to detect suspicious Kerberos activity