Kerberos-Protokoll

Was ist ein Kerberos-Protokoll?

Beim Kerberos-Protokoll handelt es sich um ein Netzwerkauthentisierungs- und Autorisierungsprotokoll, entwickelt vom MIT, dem Massachusetts Institute of Technology. In den 1980er-Jahren als sicherere Alternative zur herkömmlichen Authentisierung durch die Benutzer-/Passworteingabe an Maschinen und Diensten in unsicheren Netzwerken.

Kerberos wird heute vor allem mit seiner abgeleiteten Windows Implementierung in Verbindung gebracht, aber auch von zahlreichen Unix- und Unix-ähnlichen Geräten unterstützt, darunter zum Beispiel FreeBSD, MacOS, Red Hat Enterprise Linux oder HP’s HP-UX. Auch findet Kerberos zunehmend Verbreitung in Embedded Systems (z. B. Cisco IOS bzw. IoT-Geräten). Insgesamt gibt es 5 große Implementierungen:

  • MIT Kerberos
  • Heimdall
  • GNU Shishi
  • Microsoft’s AD Keberos
  • Sun’s Java

 

Die drei erstgenannten Implementierungen stehen unter freien Lizenzen.

Kerberos – Sinn und Zweck

Die Authentifizierung mittels Passwortes leidet besonders unter zwei Problemen. Das Erste besteht darin, dass jeder, der Ihr Passwort kennt sich effektiv für Sie ausgeben kann, also Ihre Identität stiehlt und so Schaden für Sie und das Unternehmen verursachen kann, etwa:

  • Durch das Stehlen von Informationen
  • Die Verbreitung von Malware (wie etwa die Ransomware Emotet und Keylogger)
  • Infizierung weiterer Geräte zum Zwecke des Phishings
  • Des Versendens von SPA
  • Das Durchführen von DDoS Attacken

Um sich vor solchen Angriffen zu schützen, empfiehlt sich nicht nur die Verwendung des Kerberos Protokolls, sondern auch die Durchführung von Pentests, um vorhandene Schwachstellen in Ihrem System aufzudecken.

Das zweite Problem hängt mit dem Faktor Mensch zusammen und seiner Tendenz, bei einer steigenden Anzahl von Authentifizierungen durch Passwörter (ohne Zuhilfenahme eines Passwortmanagers) zunehmend gleichförmige Passwörter zu verwenden. Gelangt jemand Drittes also an eines dieser Passwörter, zum Beispiel durch einen Man in the Middle Angriff, besteht potenziell die Möglichkeit, sich mit diesem Passwort oder einer Variation davon (Stichwort Passwordspraying) an mehreren Stellen erfolgreich authentifizieren zu können.

Um die Authentifizierung im Netzwerk sicherer zu gestalten, muss dafür Sorge getragen werden, dass das Passwort oder die Passwörter nicht ständig im Netzwerk übertragen werden und somit einfach mitgeschnitten werden könnten. Gleichzeitig muss gewährleistet sein, dass sich ein Benutzer an jedem Dienst und jeder Maschine authentisieren kann, zu welcher er berechtigt ist.

Optimiere die Sicherheit Deiner IT
Nutze jetzt das Kerberos-Protokoll!
Zu unserer IT Sicherheitsberatung

Kerberos - Grundlagen

Das Problem der unsicheren Passwortübertragung löst Kerberos durch die Einführung einer dritten autoritativen Instanz innerhalb des Netzwerkes, des KDC, welches verschlüsselte Tickets ausstellt.

KDC steht für Key Distribution Center und besteht effektiv aus zwei Diensten, die auf einem oder mehreren Servern betrieben werden.

Dazu gehören der Authentication Server (AS) und der Service Server (SS), oder auch Ticket Granting Server genannt. Der Authentication Server (AS) ist für die Prüfung zuständig, ob es sich um einen legitimen Nutzer des Netzwerkes handelt. Der Service Server (SS) stellt wiederum die Tickets für die Erlaubnis zur Benutzung des angefragten Dienstes.

Die (Erst-)Kommunikation in einer Umgebung mit Kerberos

In einem Szenario mit einem Nutzer (A), einem Fileserver (B) und dem KDC mit Authentication Server (KAS) und Service Server (KSS) möchte (A) auf die Dateifreigabe von (B) zugreifen.

Hierzu meldet sich (A) zuerst am (KAS) mit seiner ID, verschlüsselt durch sein Passwort. Wichtig ist hierbei festzuhalten, dass nicht das Passwort über das Netzwerk übertragen wird, sondern nur das verschlüsselte Secret. Der (KAS) wiederum entschlüsselt das Secret mit dem hinterlegten Passwort.

Nach erfolgreicher Verifizierung von (A) durch (KAS) sendet (KAS) ein Ticket zurück, das sogenannte Ticket Granting Ticket (TGT), welches selbst mit einem weiteren Secret verschlüsselt ist.

Veranschaulichung der Wirkung und Schritte des Kerberos-Protokolls

Dieses TGT sendet (A) nun zusammen mit seiner Anfrage für die Benutzung der Dateifreigabe von (B) an den (KSS), der das TGT mit dem gemeinsamen Secret mit (KAS) entschlüsselt.

Hiernach sendet (KSS) ein verschlüsseltes Token an (A) zurück, welches (A) nun an (B) sendet, welcher das Token mit dem geteilten Secret zwischen ihm und dem (KSS) entschlüsselt und somit (A) nun für die im Token veranschlagte Zeit den Zugriff auf die Dateifreigabe erlaubt.

Durch diesen Ablauf stellt Kerberos zum Einen sicher, dass das Passwort nicht übertragen wird und zum Anderen, dass sich der Nutzer, solange wie das TGT nicht abgelaufen ist und er nicht den Arbeitsplatz wechselt, an Geräten und Diensten, die Kerberos unterstützen, sich kein weiteres Mal anmelden muss. Kurzum: Kerberos ermöglicht die Benutzung von Single Sign-On (SSO), da über das gültige TGT keine weitere Kommunikation mit dem Authentication Server nötig ist, um am Service Server (SS) weitere Token generieren zu können.

ANDERE BEITRÄGE

Inhaltsverzeichnis

Wir verwenden Cookies, um Ihnen die bestmögliche Erfahrung zu bieten. Wenn Sie unsere Website weiterhin besuchen, stimmen Sie der Verwendung von Cookies zu, wie in unserer Datenschutzerklärung beschrieben.