All lessons Leer en español

Security in depth · Unit 24 · Lesson 4 of 14

Kerberos without the alphabet soup

Understand the ticket office, the service ticket, and why time and naming matter.

10 minready

Helpful before thisActive Directory

After this lesson you can

  • distinguish a ticket-granting ticket from a service ticket
  • identify the role of the KDC
  • separate ticket authentication from resource authorization

You sign in to your work computer and then open a shared service without typing the same password again. Kerberos helps make that possible through tickets issued by a trusted authority.

KDC: Key Distribution Center: the trusted service that issues Kerberos tickets.

The KDC issues tickets; the service applies permissionsClient with verified identityKDCTGT → service ticketDestination serviceValidates and checks accessA ticket is not universal access
A trusted ticket service connects an identity to a service. The service still applies its authorization policy.

Meet the ticket office

In an Active Directory domain, the Key Distribution Center runs on domain controllers. It provides authentication and ticket-granting services. A ticket-granting ticket lets a client request service tickets without repeatedly sending the user’s password to every application.

A service ticket is intended for a particular service. The client also proves freshness and possession of relevant key material as part of the protocol; a ticket is not simply a public badge that anyone can reuse safely. This is a simplified picture, not a packet-by-packet protocol description.

Names, keys, and clocks are part of the system

Service principal names identify services. The identities behind those names need correctly managed keys, permissions, and ownership. Duplicate or incorrect naming can break authentication even when the password is correct.

Time matters because tickets and authenticators have validity and freshness rules. DNS, domain controller availability, and time synchronization are therefore authentication dependencies, not just background infrastructure. Troubleshooting should distinguish a naming failure, a time problem, and a permission denial.

Authentication is not universal access

A valid ticket establishes something about identity and service authentication. The service still decides whether the identity may read a file or perform an action. Domain trusts and delegation add further policy decisions; neither should be understood as “everyone can do everything.”

Protect the systems that issue tickets and the accounts whose keys services depend on. Use supported key-management practices, minimize unnecessary privileges, and monitor meaningful authentication changes. Disabling security checks to make a login work can hide the underlying dependency problem.

EXPLORE THE CONCEPT

What does the ticket tell you?

Pick an event in a fictional domain.

A service ticket is issued

The client has obtained a ticket for that service. It has not thereby gained every permission within the service.

The file server denies a folder

Authentication may have succeeded while authorization denied this resource. Check the distinction before changing credentials.

Clock synchronization fails

Freshness checks can reject legitimate authentication. Fix the dependency rather than weakening the protocol.

A simplified learning model. It connects to no systems and uses no real data.

Turn the idea into a decision

Draw Kerberos as identity, trusted ticket issuance, and service-specific checks. Then add the dependencies: keys, service names, DNS, and time.

Worked review: a ticket, an accepted identity, a denied write

The fictional North Library uses Kerberos for its Catalog service. Treat the following as correlated records for the same client and service request, except K4, which concerns a later request. The records explicitly identify the protocol; do not infer it from a login screen.

K1: At 09:00, the domain’s KDC issues Mina a service ticket for Catalog. Its validity window covers the following request.

K2: At 09:01, Catalog records successful Kerberos authentication as Mina.

K3: Catalog denies Mina’s requested record update. Its effective policy grants her read only; the owner confirms her current duty is review without editing.

K4: At 15:00, a different request fails authentication. The diagnostic record identifies a clock difference outside this deployment’s configured tolerance.

PredictDoes the denial in K3 imply Mina needs another password or a broader account?

No. K2 records successful authentication. K3 matches the owner’s read-only intent, so this denial is the expected authorization result. A password change does not justify adding write access. If Mina’s duty later changes, the owner must approve that operation separately.

K1 alone would support a weaker conclusion: a ticket was issued. It would not establish that Catalog received it, accepted the exchange, or permitted a record operation. K2 adds the authentication result, and K3 adds the resource decision. Combining these stages explains the outcome without treating an issuance log as a complete activity history.

Why freshness is more than an expiration date

The ticket has a validity interval; the client also presents an authenticator tied to the exchange using a session key. Time checks and replay protection help prevent an earlier authentication message being accepted as a fresh one. A ticket that has not expired can therefore still be part of a rejected exchange.

K4 calls for investigating the time dependency and verifying legitimate authentication after its supported repair. It does not justify widening resource permissions or disabling freshness checks. There is no universal tolerance value in this exercise: use the relevant protocol and deployment policy.

For closure, preserve Mina’s successful approved read and expected write denial, and record the separate clock repair outcome. These records say nothing about unrelated services or every session Mina has open.

Terms you met

KDC

Check yourself

No timer. No penalties. Read the explanation and try again whenever you like.

  1. K1 records service-ticket issuance but K2 is unavailable. What can the reviewer conclude?

    Show the answer

    Correct answer: The KDC issued a ticket for Catalog; service acceptance remains unverified. This keeps the conclusion within the issuance record rather than assuming later stages succeeded.

  2. Why is changing Mina’s password an unsupported response to K3?

    Show the answer

    Correct answer: K2 establishes authentication success, and K3 matches the approved read-only role. The denied write is expected. Changing credentials does not create a business need for extra authority.

  3. A ticket is within its validity interval, but K4 reports excessive clock difference. Which interpretation fits?

    Show the answer

    Correct answer: Freshness checks can still reject the exchange even though the ticket has not expired. Validity and authenticator freshness answer different questions. The supplied diagnostic points to the time dependency.

  4. Which evidence best closes the two North Library issues?

    Show the answer

    Correct answer: Successful authentication after clock repair, approved reads, and expected write denial. These observations verify the repaired dependency and preserve the separate business authorization boundary.

Try it

  • WriteBuild a three-stage evidence note for K1-K3: ticket issuance, service authentication, resource authorization. State what each record proves, identify the correct owner for the denied write, and specify the narrow evidence needed for closure. Add a separate dependency check for K4.
References