www.wikidata.de-de.nina.az
Kerberos im TCP IP Protokollstapel Anwendung KerberosTransport UDP TCPInternet IP IPv4 IPv6 Netzzugang Ethernet TokenBus TokenRing FDDI Kerberos ist ein verteilter Authentifizierungsdienst Netzwerkprotokoll fur offene und unsichere Computernetze wie zum Beispiel das Internet der von Steve Miller und Clifford Neuman basierend auf dem Needham Schroeder Protokoll zur Authentifizierung 1978 entwickelt wurde Die zurzeit aktuelle Version ist Kerberos 5 Sie ist in RFC 4120 definiert und nutzt ASN 1 zur Codierung Kerberos entstand im Rahmen des Projekt Athena am MIT erst die Version 4 Ende der 1980er Jahre wurde auch ausserhalb des MIT verwendet Kerberos soll eine sichere und einheitliche Authentifizierung in einem ungesicherten TCP IP Netzwerk auf sicheren Hostrechnern bieten Die Authentifizierung ubernimmt eine vertrauenswurdige dritte Partei auch als Trusted Third Party bezeichnet Diese dritte Partei ist ein besonders geschutzter Kerberos 5 Netzwerkdienst Kerberos unterstutzt Single Sign on das heisst ein Benutzer muss sich nur einmal anmelden Im Anschluss kann er alle verfugbaren Netzwerkdienste nutzen ohne ein weiteres Mal sein Passwort eingeben zu mussen Der Name leitet sich vom dreikopfigen Hollenhund Kerberos aus der griechischen Mythologie ab der den Eingang zur Unterwelt bewacht Inhaltsverzeichnis 1 Funktionsweise 1 1 Schematischer Ablauf der Kerberos Authentifikation 2 Kerberos Unterstutzung 3 Implementierungen 4 Schwachstellen 5 Siehe auch 6 Literatur 7 Weblinks 8 EinzelnachweiseFunktionsweise BearbeitenBei Kerberos sind drei Parteien beteiligt der Client der Server den der Client nutzen will der Kerberos ServerDer Kerberos Dienst authentifiziert sowohl den Server gegenuber dem Client als auch den Client gegenuber dem Server um Man in the middle Angriffe zu unterbinden Auch der Kerberos Server selbst authentifiziert sich gegenuber dem Client und dem Server und verifiziert selbst deren Identitat Kerberos verwendet Tickets zur Authentifizierung Um den Kerberos Dienst nutzen zu konnen muss sich ein Client zuerst beim Kerberos Server anmelden Er fordert vom Kerberos Server ein Ticket Granting Ticket TGT an Hierzu muss der Nutzer des Clients entweder ein Passwort eingeben oder das TGT wird direkt bei der Benutzeranmeldung angefordert Mit dem TGT ist der Client in der Lage weitere Tickets fur Dienste anzufordern ohne nochmal ein Passwort eingeben zu mussen Es wird auch ein Session Key fur die Kommunikation zwischen Client und Kerberos Server ausgehandelt Er kann benutzt werden um den Datenverkehr zu verschlusseln Um einen Dienst der Kerberos unterstutzt benutzen zu konnen fordert der Client ein weiteres Ticket an Dieses Ticket sendet der Client dann an den Dienst der uberpruft ob er dem Client den Zugriff gestatten soll Auch hierbei wird ein Sitzungsschlussel vereinbart und die Identitat von Client Server und Kerberos Server uberpruft Der RFC verlangt fur beteiligte Hosts einen Zeitabgleich der beteiligten Systeme um Zeitunterschiede uber funf Minuten zu vermeiden 1 Hier bietet sich die Verwendung von NTP an Schematischer Ablauf der Kerberos Authentifikation Bearbeiten nbsp Ablauf der Kerberos AuthentifikationErlauterungen zur Abbildung Szenario Nutzer u mochte Service s nutzen er besitzt noch kein TGT Die kleineren Rechtecke hell grun hell orange hell lila sind Datenpakete die jeweils mit dem nach dem Stern stehenden Schlussel verschlusselt sind Das Kurzel ST steht fur Ticket zur Nutzung des Services s In den grossen Rechtecken Server und in der Ellipse Client stehen nach den Pfeilen diejenigen Informationen die dem jeweiligen Service Client bekannt sind in Weiss und diejenigen die zugesandt werden in der Farbe des Absenders Kerberos Authentication Server und Ticket Granting Server TGS haben beide Zugriff auf die Schlusseldatenbank ihres Administrationsbereiches Realm sie kennen also beide alle Client und Server Schlussel Die Pakete am Pfeilende sind dabei zuerst verschickt worden um das Entschlusseln des folgenden zu ermoglichen Ein Kerberos Server ist fur einen Realm zustandig das heisst er verwaltet nur Konten die zu seinem Realm gehoren Der Realm kann beispielsweise der DNS Domanen Name in Grossbuchstaben etwa EXAMPLE COM sein Ein Rechner kann immer nur zu einem Realm gehoren Um auf Dienste in anderen Realms uber Kerberos zugreifen zu konnen mussen Vertrauensstellungen zwischen den einzelnen Realms hergestellt werden So ist es moglich dass ein Benutzer aus A EXAMPLE COM auf Dienste in B EXAMPLE COM zugreifen kann ohne sich erneut authentifizieren zu mussen Bei Kerberos4 wird als Chiffre nur DES unterstutzt Kerberos5 ist in der Lage die verwendete Chiffre und das verwendete Prufsummenverfahren auszuhandeln Nutzer Hosts und Dienste werden bei Kerberos uber symmetrische Schlussel authentifiziert Dem Schlussel ist ein Name der Kerberos Principal zugeordnet Fur Hosts ist der Principal host lt hostname gt lt REALM gt z B host www example com EXAMPLE COM fur Dienste lt servicename gt lt hostname gt lt REALM gt z B imap www example com EXAMPLE COM und fur Nutzer lt benutzer gt lt instanz gt lt REALM gt z B mueller admin EXAMPLE COM Die Instanz gibt bei einem Nutzer Principal die Art des Accounts an Der Nutzer mueller admin EXAMPLE COM ist ein Kerberos Administrator Durch Kerberos werden insbesondere Angriffe durch passives Sniffing unterbunden aber auch Spoofing Worterbuch Replay und andere Angriffe erschwert Kerberos Unterstutzung BearbeitenDamit ein Netzwerkdienst Kerberos nutzen kann ist es notig dass der Dienst in der Lage ist mit Kerberos Tickets umzugehen Auf dem Server und Client Host muss jeweils ein Kerberos Client installiert und konfiguriert sein Sowohl die Client als auch die Server Software muss Kerberos unterstutzen Fur Kerberos5 mussen Client Server und Kerberos Server ein gemeinsames Verschlusselungs und Prufsummenverfahren verwenden Es gibt zwei unterschiedliche Arten von Kerberos Unterstutzung Entweder Kerberos wird vollstandig unterstutzt oder der Client sendet dem Server den Kerberos Principal und das Passwort im Klartext Fur den Apache HTTP Server gibt es das Kerberos Modul mod auth kerb 2 Daruber hinaus kann auch mod auth gssapi verwendet werden Implementierungen BearbeitenMIT Kerberos Das MIT bietet eine freie Implementierung des Kerberos Protokolls fur Unix und Linux an Es werden die Versionen 4 und 5 unterstutzt Als Verschlusselungsverfahren werden DES 3DES AES und RC4 unterstutzt als Prufsummenverfahren stehen MD5 SHA 1 HMAC und CRC32 zur Verfugung Heimdal Kerberos An der KTH entstand eine weitere freie unter BSD Lizenz stehende Kerberos Implementierung fur Unix Linux und Mac namens Heimdal 3 Der Hauptentwickler ist Love Hornquist Astrand Da Heimdal kompatibel zur MIT Implementierung ist werden dieselben Verschlusselungsverfahren und Hashfunktionen unterstutzt Samba benutzt mit Samba4 auch Heimdal 4 GNU Shishi Eine weitere freie weil unter der GPL stehende Kerberos Implementierung fur Unix und Linux ist Shishi 5 Active Directory Microsoft verwendet Kerberos als Standardprotokoll fur die Authentifizierung ab Windows 2000 basierten Netzwerken sowie fur Clients ab Windows 2000 Hier werden die Kerberos Schlussel in Active Directory gespeichert Unter Windows 2000 wird nur die Verschlusselung mit RC4 oder DES unterstutzt was diesen Verzeichnisdienst verwundbar fur Brute Force Angriffe macht In den Versionen ab Windows XP SP1 sind Erweiterungen implementiert worden die das System gegen solche Angriffe starker absichern Schwachstellen BearbeitenMit Version 5 von Kerberos wurden bereits viele Schwachstellen aus Version 4 beseitigt Unter anderem wurde das Login Verfahren verbessert In Version 4 konnte jeder unter Angabe eines Benutzernamens ein Initialticket anfordern welches mit dem Passwort des Benutzers verschlusselt wird Der Clientrechner fragt den Benutzer nun nach dem Passwort um das Ticket zu entschlusseln Die Problematik hierbei ist dass der Benutzer nun in Besitz des Tickets ist und offline eine Worterbuch Attacke auf das Passwort starten kann Aber auch in Version 5 sind einige Schwachstellen enthalten Die Sitzungsschlussel werden lokal auf dem Clientrechner im tmp Verzeichnis verwaltet und nach Ablauf der Gultigkeit geloscht Als das Protokoll im Projekt Athena entwickelt wurde war es nur fur Einbenutzersysteme vorgesehen In Mehrbenutzersystemen ist es nun ohne Probleme moglich Tickets anderer Benutzer zu stehlen Ein weiterer wesentlicher Schwachpunkt ist die Masterkey Verwaltung des Kerberos Authentication Servers Dieser verschlusselt alle Passworter der Benutzer mit demselben Masterkey Da dieser Schlussel aber auch lokal auf der Festplatte des Servers gespeichert ist mussten alle Passworter der Benutzer erneuert werden wenn das System kompromittiert wurde Um Replay Angriffe zu verhindern wird unter anderem ein Zeitstempel verwendet Dies hat jedoch zur Folge dass sich die beteiligten Rechner auf eine gemeinsame Zeit einigen und synchronisiert werden mussen Hierdurch wird Angreifern die Angriffsmoglichkeit eroffnet per Manipulation der Serverzeit ggf alte Tickets als noch gultige zu verwenden 6 Siehe auch BearbeitenNetzwerksicherheit Computersicherheit Kryptologie Active Directory Network Time Protocol Lightweight Directory Access Protocol LDAP Literatur BearbeitenRoland Bless u a Sichere Netzwerkkommunikation Grundlagen Protokolle und Architekturen In X systems press Springer Verlag 2005 ISBN 3 540 21845 9 ISSN 1611 8618 sineko de Claudia Eckert IT Sicherheit Oldenbourg Verlag Munchen 2006 ISBN 3 486 57851 0 Jason Garman Kerberos The Definitive Guide O Reilly Media Sebastopol 2003 ISBN 0 596 00403 6 Mark Prohl Kerberos Single Sign on in gemischten Linux Windows Umgebungen dpunkt verlag Heidelberg 2011 ISBN 978 3 89864 444 0 kerberos buch de William Stallings Network Security Essentials Applications and Standards International Version 4 E Pearson Higher Education New York 2010 ISBN 978 0 13 706792 3 Weblinks Bearbeiten nbsp Commons Kerberos Sammlung von Bildern Videos und Audiodateien C Neuman S Hartman K Raeburn RFC 4120 The Kerberos Network Authentication Service V5 Juli 2005 lost RFC 1510 ab englisch MIT Kerberos englisch Heimdal Kerberos englisch Shishi Kerberos englisch Kerberos Single Sign On Benutzerauthentisierung PDF 94 kB Kerberos An Authentication Service for Open Network Systems PostScript englisch ausfuhrlich Einzelnachweise Bearbeiten C Neuman S Hartman K Raeburn RFC 4120 The Kerberos Network Authentication Service V5 Juli 2005 Abschnitt 1 6 Environmental Assumptions lost RFC 1510 ab englisch mod auth kerb Heimdal In h5l org Abgerufen am 16 Marz 2012 englisch Samba amp Kerberos In SambaWiki 26 Februar 2007 abgerufen am 4 Juni 2012 englisch GNU Shishi Projektseite In GNU Shishi Abgerufen am 26 Juni 2013 englisch Eckert Claudia IT Sicherheit Oldenbourg 2014 pp 522 523 Abgerufen von https de wikipedia org w index php title Kerberos Protokoll amp oldid 238325221