Was ist ein Authentifizierungsticket?
Ein Authentifizierungsticket ist eine Sicherheitskomponente des Kerberos-Netzwerksicherheitsprotokolls. Es fungiert als eine Art Token, eine kleine Sammlung von Daten, die zwischen einem Client-Computer und einem Server übertragen wird, damit die beiden Computer sich gegenseitig identifizieren können. Abgesehen von dieser gegenseitigen Netzwerkidentifikation werden auf dem Ticket auch die Berechtigungen des Clients für den Zugriff auf den Server und seine Dienste sowie die für die Sitzung festgelegte Zeit angegeben.
Es gibt im Wesentlichen zwei Arten von Authentifizierungstickets. Ein Ticket Granting Ticket (TGT), auch Ticket zum Abrufen von Tickets genannt, ist das primäre Ticket, das ausgestellt wird, wenn der Client-Computer seine Identität zum ersten Mal feststellt. Diese Art von Ticket ist in der Regel über einen längeren Zeitraum von mindestens 10 Stunden gültig und kann jederzeit während des Zeitraums verlängert werden, in dem der Benutzer am Netzwerk angemeldet ist. Mit einem TGT kann der Benutzer dann einzelne Authentifizierungstickets anfordern, um auf andere Server im Netzwerk zuzugreifen.
Ein Client-zu-Server-Ticket, auch als Sitzungsticket bezeichnet, ist die zweite Form des Authentifizierungstickets. Dies ist normalerweise ein kurzlebiges Ticket, das ausgegeben wird, wenn ein Client auf einen Dienst auf einem bestimmten Server zugreifen möchte. Das Sitzungsticket enthält die Netzwerkadresse des Clientcomputers, die Benutzerinformationen und eine Gültigkeitsdauer des Tickets. In einigen Kerberos-Implementierungen, z. B. Microsoft® Active Directory®, kann auch ein dritter Tickettyp verwendet werden, der als Verweisticket bezeichnet wird. Dieser Tickettyp wird gewährt, wenn ein Client auf einen Server zugreifen möchte, der sich in einer separaten Domäne befindet.
Die Funktionsweise des Kerberos-Ticket-Gewährungssystems beruht auf der Verwendung eines separaten Servers, der als Key Distribution Center (KDC) bezeichnet wird und das gesamte Authentifizierungsticket-System bereitstellt. Auf diesem Computer werden zwei Unterkomponenten ausgeführt, von denen die erste als Authentifizierungsserver (AS) bezeichnet wird. Der AS kennt alle anderen Computer und Benutzer im Netzwerk und führt eine Datenbank mit ihren Kennwörtern. Wenn sich ein Benutzer im Netzwerk anmeldet, erteilt ihm der AS ein TGT.
An dem Punkt, an dem ein Benutzer auf einen Server im Netzwerk zugreifen muss, verwendet er das zuvor angegebene TGT und fordert ein Serviceticket vom zweiten Teil des KDC an, das als Ticket Granting Server (TGS) bezeichnet wird. Der TGS sendet ein Sitzungsticket an den Benutzer zurück, der es dann verwenden kann, um auf den von ihm angeforderten Server zuzugreifen. Wenn der Server das Sitzungsticket erhält, sendet er eine weitere Nachricht an den Benutzer, in der er seine Identität überprüft und bestätigt, dass der Benutzer auf den angeforderten Dienst zugreifen darf. Bei einem Überweisungsticket ist ein zusätzlicher Schritt erforderlich, bei dem der KDC der Stammdomäne stattdessen ein Überweisungsticket erstellt, mit dem der Client Sitzungstickets von einem anderen KDC in einer anderen Netzwerkdomäne anfordern kann. Der gesamte Prozess der Ticketgenerierung und -freigabe wird bei jedem Schritt auf dem Weg verschlüsselt, um sich vor einem Angreifer zu schützen, der als Benutzer abhört oder sich tarnt.
Der Hauptnachteil der Authentifizierungsticketmethode ist die zentralisierte Struktur aller Berechtigungen. Gelingt es einem Angreifer, auf das KDC zuzugreifen, erhält er im Wesentlichen Zugriff auf alle Benutzeridentitäten und Kennwörter und kann sich dann als jemand ausgeben. Sollte das KDC nicht mehr verfügbar sein, kann niemand das Netzwerk nutzen. Ein weiteres Problem sind die detaillierten Lebenszyklen der Tickets, bei denen die Uhren aller Computer im Netzwerk synchronisiert sein müssen.