detecting-golden-ticket-attacks-in-kerberos-logs

Detect Golden Ticket attacks by analyzing Kerberos TGT anomalies in domain controller event logs.

954|172|Updated Mar 13, 2026
One-click install
npx skills add https://github.com/xalgord/xalgorix --skill detecting-golden-ticket-attacks-in-kerberos-logs
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: detecting-golden-ticket-attacks-in-kerberos-logs
Source: https://github.com/xalgord/xalgorix/tree/main/internal/tools/skills/data/threat-hunting/detecting-golden-ticket-attacks-in-kerberos-logs
Command: npx skills add https://github.com/xalgord/xalgorix --skill detecting-golden-ticket-attacks-in-kerberos-logs

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Forged Kerberos Golden Tickets grant attackers persistent domain-wide access after a KRBTGT hash compromise, and they are difficult to spot without structured log analysis. This Skill provides a repeatable hunting workflow with ready-to-use detection queries to identify forged tickets in Windows domain controller event logs.

Core Features & Use Cases

  • Anomaly Detection Workflow: Seven-step methodology covering missing TGT requests (4768 before 4769), RC4 encryption downgrades, impossible ticket lifetimes, non-existent SIDs, and PAC validation failures.
  • Ready Detection Queries: Includes Splunk SPL and KQL queries for RC4 encryption anomalies and TGS-without-prior-TGT correlation across domain controllers.
  • Gap & Tuning Guidance: Documents blind spots such as Diamond/Sapphire ticket forgeries, PAC enforcement patch requirements (KB5008380/KB5037754), and false-positive tuning for legacy RC4 usage.
  • Use Case: After a DCSync attack is discovered, a threat hunter runs the KQL query against SecurityEvent logs to find 4769 events using RC4 encryption from accounts with no preceding 4768, confirming whether forged tickets are active before resetting KRBTGT twice.

Quick Start

Hunt for Golden Ticket indicators in my Kerberos event logs by checking for TGS requests without prior TGT requests and RC4 encryption anomalies.

Frequently Asked Questions about detecting-golden-ticket-attacks-in-kerberos-logs

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I detect Golden Ticket attacks in Kerberos logs?

Correlate Windows Security Events 4768 and 4769 on domain controllers: a service ticket request (4769) with no preceding TGT request (4768) from the same account and IP indicates a forged ticket. Also flag RC4 encryption (0x17) in AES-only environments and ticket lifetimes exceeding policy.

What SIEM queries detect Golden Ticket attacks?

The Skill provides Splunk SPL and KQL queries. The Splunk query filters EventCode 4769 with TicketEncryptionType 0x17 excluding krbtgt, while the KQL query summarizes 4769 events by user, IP, and service to surface RC4 anomalies and missing prior TGT requests.

Can Diamond or Sapphire tickets bypass Golden Ticket detection?

Yes. Diamond tickets modify a real TGT, so a matching 4768 event exists and the '4769 without prior 4768' heuristic fails. They also use realistic 10-hour AES lifetimes, defeating the classic RC4 and impossible-lifetime rules. Hunt identity anomalies like non-existent accounts and injected SIDs instead.

Why does Golden Ticket detection produce false positives with RC4?

RC4 encryption is legitimate in legacy trusts and older applications, so the RC4 anomaly rule fires on normal traffic. Scope the rule to domains confirmed as AES-only and allowlist known legacy SPNs to reduce noise.

What log coverage is required for Kerberos Golden Ticket hunting?

Events 4768, 4769, and 4771 must be forwarded from every domain controller. Missing even one DC's logs breaks the TGS-without-prior-TGT correlation, making legitimate tickets look forged and forged tickets look legitimate.

How do I remediate after detecting a Golden Ticket?

Reset the KRBTGT account password twice, because both the current and previous hashes remain valid until the second reset. Also verify PAC validation enforcement via KB5008380/KB5037754 and the PacRequestorEnforcement registry state so forged PACs are rejected.