Benutzer-Werkzeuge

Webseiten-Werkzeuge


kerberos

Dies ist eine alte Version des Dokuments!


Kerberos ist ein Protokoll zur Authentifizierung in verteilten Computernetzwerken um die Sicherheit der Kommunikation zwischen Benutzern und Ressourcen zu gewährleisten. Die Authentifizierung in Active Directory basiert auf Kerberos.

Das Kerberos-Protokoll basiert auf einem Client-Server-Modell und verwendet symmetrische Verschlüsselung und Ticket-basierte Authentifizierung.

Hauptkomponenten

  • Key Distribution Center (KDC): Der KDC ist ein zentraler Server, der für die Ausstellung und Verwaltung von Kerberos-Tickets zuständig ist. Er besteht aus zwei Hauptkomponenten:
    • Authentifizierungsserver (AS): Der AS ist für die Erstauthentifizierung des Benutzers verantwortlich. Er prüft die Identität des Benutzers und gibt ihm ein Ticket Granting Ticket (TGT) zurück.
    • Ticket Granting Server (TGS): Der TGS ist für die Ausstellung von Service Tickets verantwortlich. Ein Service Ticket wird verwendet, um den Zugriff des Benutzers auf einen spezifischen Dienst zu autorisieren.
  • Schlüssel: Jeder Benutzer und jeder Dienst hat einen geheimen Schlüssel, der vom KDC verwaltet wird. Dieser Schlüssel wird für die Verschlüsselung und Entschlüsselung der Kommunikation verwendet.
  • Sitzungsschlüssel: Sobald der Benutzer das Service Ticket erhält, kann er den Sitzungsschlüssel extrahieren. Der Sitzungsschlüssel wird für die Verschlüsselung der Kommunikation zwischen dem Benutzer und dem Dienst verwendet.

Authentifizierung

  • Der Benutzer sendet eine Anfrage an den AS, um ein TGT zu erhalten.
  • Der AS prüft die Identität des Benutzers und sendet ein verschlüsseltes TGT zurück.
  • Der Benutzer entschlüsselt das TGT mit seinem geheimen Schlüssel und erhält ein TGT.
  • Wenn der Benutzer auf einen Dienst zugreifen möchte, sendet er das TGT zusammen mit einer Anforderung an den TGS.
  • Der TGS prüft das TGT und gibt ein verschlüsseltes Service Ticket zurück.
  • Der Benutzer entschlüsselt das Service Ticket mit seinem geheimen Schlüssel und erhält ein Service Ticket.
  • Das Service Ticket wird an den Dienst gesendet, um den Zugriff zu autorisieren.

Das TGT beinhaltet Informationen über:

  • User Account SID
  • Group SID
  • Authentication Timestamp

Authentication Ticket (Ticket Granting Ticket)

Ein Ticket Granting Ticket (TGT) ist ein spezielles Kerberos-Ticket, das als Zugangsschlüssel für weitere Kerberos-Tickets dient. Sozusagen das Haupt-Ticket. Wenn du dich bei einem Kerberos-geschützten System anmeldest (z. B. Windows-Domäne mit Active Directory), sendet dein Computer deine Login-Daten (verschlüsselt) an den Key Distribution Center (KDC). Der KDC überprüft die Identität und stellt dir ein TGT aus.

Service Tickets

Das TGT erlaubt es deinem Computer, ohne erneute Passwort-Eingabe weitere Service-Tickets für verschiedene Dienste anzufordern. Diese Anfragen laufen über den Ticket Granting Service (TGS), der ebenfalls auf dem KDC läuft.

Wenn du z. B. auf eine Datei-Freigabe (\\server\freigabe) zugreifen möchtest, sendet dein Computer dein TGT an den TGS. Der TGS stellt daraufhin ein Service-Ticket für den Datei-Server aus. Dein Computer sendet das Service-Ticket an den Datei-Server, der es überprüft und dir dann Zugriff gewährt.

Problem

Manche Applikationen brauchen zum Authentifizieren mehr Informationen als User SID und User Group SID. Z.B die Email Adresse des Benutzer. Siehe ADFS (Active Directory Federation Services).

Audit

Event IDs

  • 4768 – Ticket Granting Ticket (TGT) ausgestellt (Initiale Anmeldung bei KDC)
  • 4769 – Service Ticket ausgestellt (Zugriff auf Ressourcen)
  • 4770 – Erneuerung eines TGT
  • 4771 – Kerberos-Pre-Authentication fehlgeschlagen
Get-WinEvent -LogName Security | Where-Object { $_.Id -eq 4768 } | Select TimeCreated,Message | fl

CLI

# Lösche alle Tickets (TGT nicht)
klist purge
 
# Fordere Ticket für einen Service an
klist get HTTP/vie-t-srv-audit
 
# Zeige alle Kerberos Tickets
klist
 
# Zeige das Ticket granting ticket
klist tgt
 
# Zeige Ticket Verwendung
C:\> klist sessions
[0] Sitzung 1 0:0x26d192ee D2000\admin_zarat Kerberos:CachedInteractive
[1] Sitzung 0 0:0x136c4 \ NTLM:(0)
 
C:\> klist sessions -li 0x136c4
Aktuelle Anmelde-ID ist 0:0x26d192ee
Ziel-Anmelde-ID ist 0:0x136c4
Sitzung 0 0:0x136c4 \ NTLM:(0)
kerberos.1743584815.txt.gz · Zuletzt geändert: 2025/04/02 11:06 von jango