Authentifizierung und Zugriff in Domänen Kerberos verstehen

Autor / Redakteur: Peter Riedlberger / Peter Schmitz

Hinter den Kulissen einer Windows-2000- oder Server-2003-Domäne wacht Kerberos wie ein Höllenhund darüber, dass alles mit rechten Dingen zugeht. Der Mechanismus ist kompliziert, aber effizient.

Anbieter zum Thema

Die Herausforderung ist einfach zu verstehen: In einem unsicheren, also typischerweise auf TCP/IP basierenden Netzwerk, sollen die Clients in der Lage sein, gegenseitig zweifelsfrei die eigene Identität nachweisen zu können. Der Mechanismus, der in modernen Windows- und sowie in vielen UNIX-Netzwerken dafür verwendet wird, heißt Kerberos.

Kerberos arbeitet auf der Grundlage von „Tickets“. Sobald sich ein Benutzer an einer Domäne anmeldet, erhält er ein erstes Ticket, das so genannte „Ticket granting ticket“, also etwa „ticketausstellendes Ticket“. Aus naheliegenden Gründen wird zumeist die Abkürzung TGT verwendet.

Greift nun der Benutzer auf Ressourcen eines anderen Servers der Domäne zu, so besorgt er sich erst einmal ein Ticket dafür. Zur Anforderung des Tickets übermittelt er das zuvor erhaltene TGT. Hat er das neue Ticket – genannt Sitzungsticket –, übermittelt er dies an den Mitgliedsserver und weist sich so als legitim aus.

Ablauf der Authentifizierung bei der Anmeldung

Die Einzelheiten sind natürlich komplizierter. Wenn sich ein Benutzer anmeldet, wird zunächst eine TGT-Anfrage erstellt, die einen Zeitstempel enthält und die mit dem Hash des Benutzerpassworts verschlüsselt wird. Diese TGT-Anfrage geht an das Key Distribution Center (KDC). Das ist der zentrale Dienst, der einerseits die Benutzer authentifiziert und andererseits die Tickets ausgibt.

Diese TGT-Anfrage sorgt dafür, dass DoS-Service-Attacken ins Leere laufen. Nur dann, wenn sich die Nachricht mit dem in Active Directory gespeicherten Passwort-Hash dekodieren lässt und zudem der Zeitstempel aktuell ist (maximal 5 Minuten alt), befasst sich das KDC weiter mit der Anfrage. Ein Angreifer, der also massenweise immer dieselbe, abgefangene Ticketanfrage verschicken würde, könnte das KDC maximal fünf Minuten belästigen. Umgekehrt zeigt bereits dieses Detail, warum es in einer Domäne absolut essentiell ist, dass alle Computeruhren synchron laufen.

Das KDC erstellt nun das TGT. Der wesentliche Inhalt des TGT ist ein Sitzungsschlüssel und das Privilege Access Certificate (PAC), das eine ganze Reihe von Daten umfasst (Anmeldezeitpunkt, Anmeldename, IDs für Benutzer und Domäne und einiges mehr). Dieses TGT geht an den Client zurück, wo es im RAM gecacht wird. Ein TGT ist üblicherweise 10 Stunden lang gültig. Nach dieser Frist muss ein neues TGT angefordert werden, was automatisch geschieht.

Ablauf der Authenfizierung beim Zugriff auf einen anderen Server

Wenn nun der Client auf einen anderen Server zugreifen will, erstellt sein lokaler Kerberos-Dienst aus dem gecachten TGT eine Anforderung für ein Sitzungsticket. Diese Anforderung enthält den Namen des Zielservers und ist mit dem zuvor übermittelten Sitzungsschlüssel codiert.

Das KDC decodiert die Anfrage mit dem Sitzungsschlüssel. Darauf erstellt es ein neues Sitzungsticket speziell für den Zielserver und packt auch dieses Mal einen eigenen Sitzungsschlüssel dazu. Dieses Paket geht an den anfragenden Client zurück.

Der Client benutzt das Sitzungsticket, um sich beim Zielserver zu authentifizieren. Sobald der Zielserver das Sitzungspaket erfolgreich geprüft hat, tut er zweierlei. Erstens authentifiziert er sich selbst gegenüber dem Client, indem er einen Zeitstempel mit dem Sitzungsschlüssel codiert und an den Client zurückschickt. So lassen sich Man-in-the-Middle-Attacken mit Fake-Zielservern ausschließen.

Zweitens gibt der Server dem Client Zugriff auf die lokalen Ressourcen. Dies geschieht, indem er das PAC aus dem Ticket des Clients extrahiert. Mithilfe der Informationen des PACs wird ein lokales Zugriffstoken erstellt. Es enthält die SIDs aller lokaler Gruppen, in denen der Benutzer Mitglied ist.

Wie bei TGT gilt auch beim Sitzungsticket, dass es lediglich 10 Stunden gültig ist. Nach dieser Frist wird aber automatisch ein neues Ticket besorgt.

Artikelfiles und Artikellinks

(ID:2002828)