Securing Kerberos from the encryption side, the KDC, and service accounts; dissecting the six most common Kerberos attacks like Golden Ticket, Kerberoasting, and Pass-the-Ticket; and worthy detection strategies and defense mechanisms.

In episode 20 you saw the two sides of delegation: a service's ability to impersonate users, and the Golden Ticket and Silver Ticket risks lurking behind careless configuration. If episode 20 was about "features", episode 21 is about "fortress": how to make Kerberos authentication as hard as possible, dissect the most common attacks, and prepare a defense worthy of the name.
This episode is the heart of Phase 6. Everything you've learned — from the MIT realm to AD integration — only proves its value when it can survive an attack. We'll start with basic hardening, move up to KDC security, then dissect the six most common Kerberos attacks along with how to detect and prevent them.
Encryption is the foundation of Kerberos security. Keys are derived from passwords, and all tickets are protected by encryption. Use only AES — aes256-cts-hmac-sha1-96 as the primary choice and aes128-cts-hmac-sha1-96 as a backup. On the MIT client side, set it in krb5.conf:
[libdefaults]
default_tkt_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96
default_tgs_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96
permitted_enctypes = aes256-cts-hmac-sha1-96 aes128-cts-hmac-sha1-96
rdns = falseWeak encryption like RC4 and DES must be turned off across the entire stack — on the KDC, on clients, and in AD. RC4 is still used in legacy scenarios, but RC4 keys can be derived from NT hashes and become Kerberoasting material. In AD, set the service account's msDS-SupportedEncryptionTypes to only contain AES, and remove rc4-hmac from the enctype list in the client configuration. Encryption downgrade is one of the attack signals (covered in the detection section).
Preauthentication ensures the client proves it knows the password before the KDC issues a TGT. Without preauth, the KDC sends a ticket that can be cracked offline — the basis of the AS-REP roasting attack. Enforce it with kadmin:
sudo kadmin.local -q "modprinc -requires_preauth false alice@EXAMPLE.COM"In AD, make sure the "Do not require Kerberos preauthentication" property on every account stays unchecked.
Tickets that live too long widen the abuse window when a ticket is stolen. Limit user ticket lifetimes with the AD domain policy and a reasonable renewal period:
sudo kadmin.local -q "modprinc -maxlife 8h -maxrenewlife 7d alice@EXAMPLE.COM"The principle: a TGT lasts just long enough to finish the work, no longer. Service tickets are also bounded by the same policy.
A keytab is equivalent to a plaintext password. Give it the smallest permissions possible and make sure only root owns it:
sudo chown root:root /etc/krb5.keytab
sudo chmod 600 /etc/krb5.keytabA keytab readable by ordinary users is an invitation to steal service keys.
The KDC is the realm's foundation — if the krbtgt key leaks, the entire domain falls. Pay attention to these areas:
| Area | Practice | Reason |
|---|---|---|
| KDC isolation | Run the KDC on a dedicated host, with no public services | Reduces the attack surface |
| Firewall rules | Only open 88/tcp, 88/udp, 464/tcp, and 749/tcp from trusted networks | Blocks KDC access from outside |
| Master key protection | Never move the master key outside the KDC host | The master key derives all database keys |
| Stash file | Keep /etc/krb5kdc/.k5.REALM owned by root with mode 0600 | The stash file holds the master key |
| Database backups | Encrypt backups; don't copy plaintext off the host | A leaked backup leaks the whole realm |
Back up the KDC database with kdb5_util dump, then encrypt the result before moving it:
sudo kdb5_util dump /var/backup/kdb
sudo gpg -c /var/backup/kdbHere's a map of the attacks that appear most often in the real world, along with their mechanisms and defenses:
| Attack | Mechanism | Main defense |
|---|---|---|
| Golden Ticket | Forging a TGT with the krbtgt key | Protect the krbtgt key, rotate regularly, detect ticket anomalies |
| Silver Ticket | Forging a service ticket with a service account key | Strong service keys, keytab protection, event monitoring |
| Kerberoasting | Requesting service account tickets and cracking the password offline | Long random passwords, AES only, monitor TGS requests |
| Pass-the-Ticket | Stealing a TGT from a cache and reusing it | AES, Protected Users, replay detection |
| Overpass-the-Hash | Using an NT hash to obtain a Kerberos ticket | Disable RC4 and NTLM, detect hash-based logins |
| AS-REP roasting | Attacking accounts without preauth for offline cracking | Require preauth for all accounts |
krbtgt key (e.g. from DC memory or a database backup) can forge a TGT for anyone. Detection is hard because the ticket looks valid; focus on behavior, not ticket contents.Detecting Kerberos attacks is often easier than you'd think, because the attacks produce anomalies visible in logs and tickets:
In AD, events 4768 (TGT requested) and 4769 (service ticket requested) are the main sources; in MIT Kerberos, the KDC logs give the same signals. Good detection is a mix of SIEM rules and metric observation — the topic of episode 22.
Once you know the attacks, it's time to build layered defense:
krb5.conf:[libdefaults]
fast_armoring = requiredkrbtgt key (with a double reset), and for all service accounts. The longer a key is in use, the greater the chance it leaks.Important
Kerberoasting and AS-REP roasting are offline attacks — firewalls don't help. The only real defenses are service accounts with long random passwords, AES-only encryption, mandatory preauth, and monitoring of unusual ticket requests.
Episode 21 turned Kerberos from just a protocol into a defense that must be maintained. You saw hardening on the encryption, preauth, ticket lifetime, and keytab sides; KDC security from isolation, firewall, to encrypted backups; a map of six common attacks; detection strategies through ticket anomalies; and defense mechanisms like Protected Users, Credential Guard, and FAST armoring.
Key takeaways:
krbtgt key, Silver Ticket attacks service keys; both need disciplined key protection.In episode 22 you'll build the realm's eyes: Kerberos Monitoring & Logging — configuring KDC and client logging, analyzing logs to detect failures, and the metrics monitored with Grafana and SIEM. See you there!