Kerberos V5
What it is
Kerberos V5 is a network authentication protocol built on a trusted third party, the Key Distribution Center (KDC), that shares a secret key with every user and service in its realm. The KDC hands out encrypted, time-limited tickets; a client proves who it is to a service by presenting a ticket the service can decrypt, plus a fresh authenticator only the legitimate client could produce. Passwords never cross the network, and users sign in once per session.
The protocol is RFC 4120 (July 2005), written by C. Neuman (USC-ISI) with T. Yu, S. Hartman and K. Raeburn (MIT); it obsoletes RFC 1510. The GSS-API mechanism that applications actually call is RFC 4121. Every Active Directory domain controller is a KDC, and Windows adds its own extensions in MS-KILE and the authorization data format MS-PAC. On Linux, MIT Kerberos and Heimdal are the main implementations; FreeIPA bundles MIT Kerberos, and Keycloak documents a Kerberos bridge for desktop SSO (both checked on the project sites, 5 November 2026).
Status (November 2026)
| Item | Status |
|---|---|
| RFC 4120 | Proposed Standard, July 2005. Updated by RFC 4537, 5021, 5896, 6111, 6112, 6113, 6649, 6806, 7751, 8062, 8129, 8429 and 8553 (per the RFC Editor) |
| Pre-authentication framework and FAST | RFC 6113 |
| Certificate logon (PKINIT) | RFC 4556, Proposed Standard, June 2006 |
| Encryption types | AES with HMAC-SHA1 (RFC 3962, etypes 17 and 18) and AES with HMAC-SHA2 (RFC 8009, etypes 19 and 20). DES deprecated by RFC 6649 (BCP 179, July 2012); RC4-HMAC (23) and 3DES by RFC 8429 (BCP 218, October 2018), which also moved RFC 4757 to Historic |
| Ports | 88/tcp and 88/udp kerberos, 464 kpasswd (IANA) |
Kerberos is not being replaced in Windows networks any time soon, but its configuration is changing underneath: the RC4 default for service tickets in Active Directory was the subject of CVE-2026-20833, and PAC validation enforcement has been tightened in stages since 2022 (see CVE-2024-26248).
How it works
Three exchanges, each defined in RFC 4120 §3:
- AS exchange (§3.1). The client sends
AS-REQnaming itself and the ticket-granting servicekrbtgt/REALM. With pre-authentication, it includes a timestamp encrypted with its long-term key (PA-ENC-TIMESTAMP, §5.2.7.2). The KDC replies withAS-REP: a ticket-granting ticket (TGT) encrypted with thekrbtgtkey, and a session key encrypted with the client's key. - TGS exchange (§3.3). For each service, the client sends
TGS-REQwith the TGT and an authenticator, naming a service principal such asHTTP/app.example.com. The KDC returns a service ticket encrypted with that service's key. - AP exchange (§3.2). The client sends
AP-REQto the service, carried inside the application protocol (SMB, LDAP SASLGSSAPI, or HTTPNegotiateper RFC 4559). The service decrypts the ticket with its own key, checks the authenticator, and optionally answers withAP-REPfor mutual authentication.
Time matters: authenticators are rejected outside an allowable clock skew (RFC 4120 gives 5 minutes as the example), and servers keep a replay cache for that window. The field-by-field version of all three exchanges is in how Kerberos works, message by message.
Active Directory specifics that change the security picture
- The PAC. Domain controllers put a Privilege Attribute Certificate in the ticket's authorization data with the user's SIDs and group memberships, signed by the KDC (MS-PAC). Services authorize from it, so PAC forgery or skipped PAC validation means privilege escalation.
- Service keys come from passwords. A service principal registered on a user account has a key derived from that account's password. Any domain user can request a ticket for it, and a weak password can be cracked offline: Kerberoasting.
- Delegation. Unconstrained, constrained and resource-based constrained delegation (S4U2self and S4U2proxy in MS-SFU) let services act as users; misconfigured delegation is a domain-compromise path: Kerberos delegation abuse.
- Certificate logon. PKINIT ties Kerberos to AD Certificate Services, so certificate template mistakes become Kerberos logons as other users: AD CS certificate template abuse.
- The krbtgt key. Whoever holds it can mint TGTs for anyone, so a suspected domain compromise includes rotating it.
Where Kerberos breaks in practice
On 5 November 2026 the SWI identity CVE catalog held 14 entries tagged Kerberos and Active Directory. The recurring classes:
- PAC and identity validation gaps: CVE-2024-26248, CVE-2024-29056 (cross-forest), CVE-2026-27912 (kpasswd ignoring
PAC_REQUESTOR_SID). - Protocol extension logic: CVE-2025-60704 (S4U missing a cryptographic step), CVE-2025-26647 (PKINIT and NTAuth), CVE-2022-26923 (Certifried).
- KDC impersonation and reflection: CVE-2024-20674, CVE-2025-33073 and CVE-2025-58726 (Kerberos reflection over SMB).
- Weak defaults and naming: CVE-2026-20833 (RC4 service tickets), CVE-2026-25177 (look-alike SPNs with invisible Unicode).
When to use it
Kerberos is the right protocol for authentication inside a managed network: Windows domains, Linux hosts joined to a realm, file and database services, and LDAP binds via SASL GSSAPI. It is a poor fit across the internet or into SaaS, where it needs direct reachability to the KDC; SAML 2.0 and OpenID Connect federate from the same directory instead. Where an application can do Kerberos, prefer it over NTLM and over LDAP simple binds with passwords.
Pitfalls
- Service accounts with SPNs, weak passwords and RC4 still enabled.
- Unconstrained delegation on servers that are not domain controllers.
- Clock drift between clients, servers and KDCs, which breaks logons and tempts admins to widen the skew.
- Clients connecting by IP address or a name with no matching service principal, which can fall back to NTLM without anyone noticing.
- Treating a decrypted ticket as authorization. RFC 4120 §3.2.3 says passing the checks "provides only authentication of the named principal"; the application must still decide what that principal may do.
How it works, message by message
The Kerberos message-flow walkthrough decodes AS-REQ with pre-authentication, AS-REP, TGS-REQ, TGS-REP and AP-REQ field by field, shows what is inside a ticket and an authenticator, ties every field to RFC 4120 section 5, and lists the checks the client, the KDC and the service must each run.
Related
Walkthrough: how Kerberos works, message by message. Standards: LDAP, RADIUS. Glossary: Kerberos, NTLM, Active Directory. Guides: what is ITDR, identity threat detection and response.
Kerberos V5: frequently asked questions
- What is Kerberos?
- Kerberos V5, defined in IETF RFC 4120 (July 2005), is a network authentication protocol in which a trusted Key Distribution Center (KDC) issues time-limited, encrypted tickets. A user proves their identity once to get a ticket-granting ticket, then uses it to get service tickets for each server, so the password never crosses the network. It is the default authentication protocol in Active Directory domains.
- How does Kerberos authentication work?
- There are three exchanges. In the AS exchange the client proves knowledge of its key, usually with an encrypted timestamp, and receives a ticket-granting ticket (TGT). In the TGS exchange it presents the TGT and receives a service ticket for a named service principal. In the AP exchange it presents the service ticket and a fresh authenticator to the server, which decrypts the ticket with its own key and checks the authenticator.
- Why is RC4 a problem in Kerberos?
- RC4-HMAC (encryption type 23) derives its key directly from the NT hash of the password with no salt, and tickets encrypted with it are fast to crack offline. That is what makes Kerberoasting cheap. RFC 8429 (October 2018) says implementations and deployments SHOULD NOT implement or deploy RC4-HMAC, and Active Directory environments are moving service accounts to AES.
- What is the difference between Kerberos and NTLM?
- Kerberos uses tickets issued by a KDC and supports mutual authentication and delegation; NTLM is an older Microsoft challenge-response protocol with no third party, and it is vulnerable to relay attacks. Windows can fall back to NTLM when Kerberos cannot be used, for example when no service principal matches the name the client connected to.
Related on Start with Identity
- CVEFreeIPA anonymous LDAP write plants a Kerberos principal in the admins group
FreeIPA's self-managed OTP token ACI let an anonymous LDAP client create a token entry with extra attributes, which combined with a 389 Directory Server ACI fla
- BlogKerberLoss: invisible Unicode lets an attacker twin a Kerberos SPN
CVE-2026-25177, CVSS 8.8. Active Directory treated look-alike SPNs as unique. Semperis and Shai Laron showed how that becomes service hijack and NTLM downgrade.
- ExpertPrincipal designer of Kerberos
Clifford Neuman was one of the principal designers of Kerberos versions 1 through 4 at MIT's Project Athena, led the version 5 design with John Kohl, and is lea
- BlogResetNightmare: a low-priv UPN write can reset a Domain Admin via Kerberos kpasswd
CVE-2026-27912 lets a user who can write their own UPN aim a Kerberos change-password at a Domain Admin. Microsoft rated it Important. Identity teams should not
- CVEWindows Kerberos elevation of privilege
A 2026 Windows Kerberos elevation of privilege, patched by Microsoft. High severity. Read it next to KerberLoss and ResetNightmare: the 2026 AD year is a Kerber
- CVEWindows Kerberos information disclosure
A medium-severity Kerberos information-disclosure in Windows. Not a domain-compromise bug on its own, but it sits in the same 2025 Kerberos patch train as the S