Was ist die Kerberos-Authentifizierung? Ein vollständiger Überblick


Die Kerberos-Authentifizierung ist ein Netzwerkprotokoll, das den Benutzerzugriff auf Dienste/Anwendungen mithilfe von Kryptografie mit geheimen Schlüsseln für die Client-Server-Kommunikation sichert.

Das Kerberos-Netzwerkauthentifizierungsprotokoll verhindert, dass Hacker Passwörter über ungesicherte Netzwerke abfangen.

Die Geschichte von Kerberos

Der Authentifizierungsdienst wurde 1989 vom Massachusetts Institute of Technology (MIT) entwickelt, um die Netzwerksicherheit für das MIT-Projekt Athena zu gewährleisten.

Der Name Kerberos hat seinen Ursprung in der griechischen Mythologie, nach Cerberus, dem dreiköpfigen Hund, der die Unterwelt bewacht. Kerberos soll Dienste/Anwendungen vor unbefugtem Zugriff schützen. Seine drei "Köpfe" sind das Client-, Server- und Schlüsselverteilungscenter (KDC).

Kerberos-Schlüsselbegriffe

Um zu verstehen, wie die Kerberos-Authentifizierung in der Netzwerksicherheit funktioniert, ist es wichtig, die Schlüsselbegriffe im Zusammenhang mit der Kerberos-Technologie zu kennen.

Kerberos-Bereich

Die Domäne, in der Kerberos die Benutzerauthentifizierung für bestimmte Dienste oder Anwendungen autorisieren kann. Der Bereich, zu dem ein Prinzipal gehört, wird durch das Domain Name System (DNS) des Bereichs identifiziert.

Anwendungsserver

Jedes System in einem Kerberos-Bereich, das eine Clientauthentifizierung für den Zugriff auf seine Ressourcen erfordert.

Universitätsrektoren

Die Knoten, die innerhalb des Kerberos-Bereichs kommunizieren und durch eindeutige Bezeichner unterschieden werden.

Es gibt zwei Arten von Prinzipalen:

  • Dienstprinzipalname (Service Principal Name, SPN): Die eindeutigen Bezeichner, die von einem bestimmten Dienst innerhalb eines bestimmten Bereichs verwendet werden.
  • User Principal Name (UPN): Die eindeutigen IDs, die von einem bestimmten Benutzer innerhalb eines bestimmten Bereichs verwendet werden.

Schlüssel-Distributionszentrum (KDC)

Ein vertrauenswürdiger Drittanbieter, der Benutzeridentitäten überprüft, die sich auf einem Domänencontroller (DC) befinden, z. B. der Active Directory-Domäne.

Das KDC umfasst zwei Server:

  • Authentifizierungsserver (AS): Bestätigt, dass die Zugriffsanforderung des Benutzers von einem bekannten Dienst stammt, und stellt Ticket Granting Tickets (TGTs) aus.
  • Ticket Granting Service (TGS): Bestätigt, dass die Zugriffsanforderung, die der Benutzer stellt, von einem bekannten Dienst stammt, und stellt Servicetickets aus.

Kunde

Bezieht sich auf den Benutzer oder den Dienst, auf den der Benutzer zugreifen möchte. Es gibt oft mehrere Clients innerhalb eines Realms.

Ticket für die Ticketvergabe (TGT)

Enthält die meisten Informationen, die zwischen dem AS und dem TGS ausgetauscht werden müssen, z. B. Client-ID, Dienst-ID, Hostname, IP-Adresse, Sitzungsschlüssel, Zeitstempel und Time-to-Live (TTL). TGTs werden mit dem geheimen Schlüssel eines Servers verschlüsselt.

Service-Ticket (ST)

Bietet Benutzern Zugriff auf den angeforderten Dienst.

Authenticator-Nachricht

Enthält die Benutzer-ID und einen Zeitstempel.

Funktionsweise des Kerberos-Authentifizierungsprozesses

Der Kerberos-Authentifizierungsprozess besteht aus acht Schritten, die sich über drei verschiedene Phasen erstrecken:

Phase 1: Client-Authentifizierung

  1. Das Benutzerkonto sendet eine Klartextnachricht an den Authentication Server (AS), z.B. eine Anfrage für den Zugriff auf einen bestimmten Dienst, einschließlich der Benutzer-ID.
  2. Der AS bestätigt, ob die Anforderung von einem autorisierten Benutzer stammt oder nicht, indem er die Benutzer-ID in der Datenbank überprüft.

Wenn die Benutzer-ID zu einem autorisierten Benutzer gehört, ruft der AS das Kennwort des Benutzers aus der Datenbank ab und verwendet es als Schlüssel zum Entschlüsseln der Anforderung.

  1. Das Kennwort des Benutzers wird zwischen dem AS und dem Benutzer geteilt.
  2. Der AS verifiziert den Client und antwortet dann mit einem Ticket Granting Ticket (TGT), das mit einem anderen geheimen Schlüssel verschlüsselt ist.

Stufe 2: Client-Service-Autorisierung

  1. Der Nutzer erhält und entschlüsselt das TGT, bevor er es an das TGS sendet.
  2. Das TGS empfängt und entschlüsselt das TGT, führt die Validierung durch und generiert dann ein Serviceticket.

Stufe 3: Kundendienst-Anfrage

  1. Der Benutzer empfängt und entschlüsselt das Serviceticket (ST), erstellt eine Authentifizierungsnachricht und sendet beide Tickets an den Service.
  2. Der Dienst führt die Entschlüsselung und Validierung der ST- und Authenticator-Nachricht durch, erstellt eine neue Authenticator-Nachricht und sendet diese letzte Nachricht an den Benutzer, um den Zugriff zu ermöglichen.

Dieser Client-Authentifizierungsprozess ermöglicht die gegenseitige Authentifizierung zwischen dem Benutzer und dem Dienst.

Kennwörter werden niemals über das unverschlüsselte Netzwerk mit Kerberos geteilt.

Kerberos-Anwendungen

Kerberos-Implementierungen werden auf einer Reihe von Betriebssystemen und Netzwerksystemen verwendet, um Benutzerkonten zu überprüfen.

>

Beispiele hierfür sind:

  • Amazon Web Services (AWS)
  • Google Cloud
  • Microsoft Azure
  • Microsoft Windows Server und Active Directory
  • Apple macOS
  • IBM Fortgeschrittener Interaktiver Geschäftsführer
  • Oracle Solaris
  • Linux (Englisch)
  • UNIX
  • FreeBSD
  • OpenBSD

Vorteile von Kerberos

Kerberos bietet Anwendern viele Vorteile, wie z. B.:

  • Single Sign-On (SSO): Der Kerberos-Dienst aktiviert SSO, eine Authentifizierungsmethode, die es Benutzern ermöglicht, über eine einzige Anmeldung auf alle autorisierten Dienste zuzugreifen.
  • Cybersicherheit: Die Verwendung von starker Verschlüsselung, Kryptografie und vertrauenswürdiger Autorisierung durch Dritte trägt dazu bei, die Datensicherheit zu erhöhen, um Cyberangriffe zu vermeiden.
  • Gegenseitige Authentifizierung: Das Kerberos-Protokoll ermöglicht es sowohl dem Benutzer als auch dem Dienst, sich gegenseitig zu authentifizieren, um sicherzustellen, dass jede Partei echt ist.
  • Zugriffssteuerung: Kerberos erleichtert die Zugriffssteuerung, indem eine Authentifizierung durchgeführt wird, um sicherzustellen, dass Sicherheitsrichtlinien eingehalten werden, bevor Zugriffsberechtigungen erteilt werden.

Welche anderen Netzwerkauthentifizierungsprotokolle gibt es?

Microsoft Neue Technologie LAN-Manager (NTLM)

NTLM ist eine inzwischen veraltete Suite von Sicherheitsprotokollen, die von Microsoft veröffentlicht wurde, um Benutzerkonten Authentifizierung, Integrität und Vertraulichkeit zu bieten. Die Einfachheit von NTLM-Passwörtern macht sie zu einem einfachen Brute-Force-Angriffsziel. Organisationen sollten die Verwendung vermeiden oder sofort deaktivieren, wenn sie verwendet wird.

Leichtgewichtiges Verzeichniszugriffsprotokoll (LDAP)

LDAP ist ein Anwendungsprotokoll, das es Anwendungen ermöglicht, über Verzeichnisdienste wie Active Directory und OpenLDAP auf bestimmte Benutzerinformationen zuzugreifen und diese zu authentifizieren.

Das Protokoll wird häufig verwendet, um den Zugriff von Benutzerkonten auf Dienste in einem Netzwerk zu autorisieren. Da LDAP für die Autorisierung und Kerberos für die Authentifizierung verwendet wird, werden beide häufig zusammen verwendet.

Sicherheitsbehauptungs-Markup-Sprache (SAML)

SAML ist ein offener Standard, der es Benutzern ermöglicht, mit denselben Anmeldeinformationen über Identity Federation auf zahlreiche Webanwendungen oder Webdienste zuzugreifen.

SAML stützt sich auf zwei Parteien - einen Identitätsanbieter (Identity Provider, IDP) und einen Service Provider (SP).

Der IDP stellt dem SP Authentifizierungsinformationen über den Benutzer zur Verfügung. Der SP verwendet diese Informationen, um dem Benutzer die Berechtigung zu erteilen.

Die Kopplung von Authentifizierung und Autorisierung ermöglicht dem Benutzer den Zugriff auf die Dienste des SP.

OAuth

OAuth ist ein offener Standard, der es Benutzern ermöglicht, die Freigabe ihrer Anmeldeinformationen für Dienste und die Zugriffsebene, die sie dem Dienst gewähren, direkt zu autorisieren.

Das Protokoll funktioniert gut auf mobilen Geräten, so dass Benutzer individuell auswählen können, welche Berechtigungen sie einem Dienst erteilen.

RADIUS

RADIUS ist ein AAA-Protokoll (Authentication, Authorization, Accounting), das zum Verwalten des Benutzerzugriffs auf Netzwerkdienste verwendet wird.

RADIUS kann mit Kerberos verwendet werden, um eine zusätzliche Authentifizierung bereitzustellen.

Ist Kerberos sicher?

Seit mehreren Jahrzehnten ist das Kerberos-Sicherheitsprotokoll für Computernetzwerke weit verbreitet und gilt als sicherer Authentifizierungsmechanismus.

Kerberos ist z. B. seit der Veröffentlichung von Windows 2000 die Standardauthentifizierungsmethode von Microsoft Windows.

Der Kerberos-Authentifizierungsdienst schützt vertrauliche Daten während der Übertragung effektiv durch die Verwendung von Verschlüsselung mit geheimen Schlüsseln, Kryptografie und vertrauenswürdiger Authentifizierung durch Dritte.

Die neueste Version, Kerberos 5, verwendet die AES-Verschlüsselung (Advanced Encryption Standard), um die Kommunikation zu sichern und Datenschutzverletzungen zu verhindern.

Die AES-Verschlüsselung ist so effektiv, dass die US-Regierung sie zum Schutz ihrer geheimen Informationen einsetzt.

Kerberos ist jedoch nicht ohne Schwächen. Unternehmen müssen ihre Angriffsfläche kontinuierlich überwachen, um sicherzustellen, dass ihre Kerberos-Implementierungen nicht Gefahr laufen, von Hackern kompromittiert zu werden.

Trotz seines Rufs als leistungsstarke Authentifizierungsmethode ist das Kerberos-Protokoll aufgrund seiner weit verbreiteten Implementierung und seiner langjährigen Präsenz ein häufiger Angriffsvektor für Cyberkriminelle.

So minimieren Sie Kerberos-Cyberrisiken

Im Folgenden finden Sie einige Möglichkeiten, wie Unternehmen die Cyberrisiken mindern können, die sich aus Kerberos-Implementierungen ergeben.

Verwenden Sie sichere Verschlüsselung

Bestimmte Verschlüsselungssuiten, wie RC4-HMAC, sind unsicher und sollten sofort deaktiviert werden, um das Abhören des Netzwerks zu vermeiden. Unternehmen sollten sich für die AES-Unterstützung entscheiden, die als Goldstandard für Datensicherheit gilt.

Beheben von Software-Schwachstellen

Cyberkriminelle nutzen Software-Schwachstellen wie Zero-Day-Schwachstellen schnell aus, um Malware einzuschleusen, Datenschutzverletzungen zu verursachen und andere Cyberangriffe durchzuführen.

Organisationen können sich über die CVE-Liste (Common Vulnerabilities and Exposures), die hier verfügbar ist, über bestehende Kerberos-Schwachstellen informieren.

Sicherheitsteams können auch in eine Plattform für das Management von Angriffsflächen investieren, um Schwachstellen automatisch in Echtzeit zu identifizieren und zu beheben, bevor sensible Daten kompromittiert werden.

Passwörter stärken

Unsichere Passwörter wie Geburtsdaten, Vornamen usw. sind eine der Hauptursachen für Datenschutzverletzungen. Das MIT bietet Kennwortempfehlungen für Kerberos-Benutzer, einschließlich Anforderungen an Zeichenlänge, Typ und Groß-/Kleinschreibung, die hier verfügbar sind.

Übernehmen Sie das Prinzip der geringsten Privilegien

Datenschutzverletzungen und andere schwerwiegende Sicherheitsvorfälle werden nicht nur von externen Cyberkriminellen begangen. Insider-Bedrohungen (eine Art von Cyber-Bedrohung) werden immer häufiger, was bedeutet, dass Unternehmen bei der Entwicklung einer Informationssicherheitsrichtlinie auch nach innen schauen müssen.

Um das Risiko von Insider-Bedrohungen zu minimieren, sollten Unternehmen das Prinzip der geringsten Rechte anwenden. Bei diesem Konzept handelt es sich um einen effektiven internen Sicherheitsmechanismus, der die Zugriffsrechte für Benutzer, Konten und Computerprozesse auf diejenigen beschränkt, die für die Ausführung der Aufgabe erforderlich sind. Außerdem erhalten Administratoren einen klareren Überblick darüber, wer auf was zugreift.

Verwandte Artikel