Zum Hauptinhalt springen

1.3. Choosing a Principal with Which to Communicate (Auswahl eines Principals für die Kommunikation)

1.3. Choosing a Principal with Which to Communicate (Auswahl eines Principals für die Kommunikation)​

Überblick​

Das Kerberos-Protokoll bietet die Mittel, zu verifizieren, dass die Entität, mit der man kommuniziert, dieselbe Entität ist, die beim KDC (Key Distribution Center) unter der behaupteten Identität (Principal-Name) registriert ist. Es ist dennoch erforderlich zu klären, ob diese Identität der Entität entspricht, mit der man kommunizieren möchte.

Bestimmungsmethoden​

Syntaktische Bestimmung​

Wenn im Voraus geeignete Daten ausgetauscht wurden, kann die Anwendung die Bestimmung syntaktisch vornehmen auf Grundlage von:

  • Spezifikation des Anwendungsprotokolls
  • Vom Benutzer bereitgestellten Informationen
  • Konfigurationsdateien

Beispiel: Der Server-Principal-Name für einen Telnet-Server kann abgeleitet werden aus:

  • vom Benutzer angegebenem Hostnamen (von der Telnet-Befehlszeile)
  • dem Präfix "host/" (aus der Spezifikation des Anwendungsprotokolls)
  • einer Zuordnung zum Kerberos-Realm, abgeleitet aus dem Domain-Teil des Hostnamens

Vertrauenswürdige Dritte​

Man kann sich für die Bestimmung auf vertrauenswürdige Dritte verlassen, aber NUR wenn:

  • die von Dritten bezogenen Daten angemessen integritätsgeschützt sind
  • die Daten während der Speicherung auf dem Server des Dritten geschützt sind
  • die Daten während der Übertragung geschützt sind

Sicherheitsanforderungen​

DNS und Hostnamen-Kanonisierung​

DARF NICHT:

  • Implementierungen DÜRFEN KEINE unsicheren DNS-Abfragen verwenden, um Hostnamen-Komponenten von Dienst-Principal-Namen zu kanonisieren
  • DÜRFEN KEINE unsicheren DNS-Abfragen verwenden, um einen Namen einem anderen zuzuordnen

DARF:

  • In Umgebungen ohne sicheren Namensdienst DÜRFEN Anwendungen statisch konfigurierte Domain-Namen an nicht qualifizierte Hostnamen anhängen
  • Sie sollten nicht mehr tun

Sicherer Namensdienst:

  • Sichere Namensdienst-Funktionen können, falls verfügbar, für die Hostnamen-Kanonsierung vertrauenswürdig sein
  • Eine solche Kanonisierung durch den Client SOLLTE von KDC-Implementierungen nicht verlangt werden

Hinweis zur Implementierung​

Viele aktuelle Implementierungen führen eine gewisse Kanonisierung des angegebenen Dienstnamens durch, oft unter Verwendung von DNS. Das birgt Sicherheitsprobleme. Es gibt jedoch keine Einheitlichkeit unter Implementierungen hinsichtlich:

  • ob der Dienstname per Case-Folding in Kleinbuchstaben umgewandelt wird
  • ob eine Reverse-Auflösung verwendet wird

Best Practice: Um Interoperabilität und Sicherheit zu maximieren, SOLLEN Anwendungen Sicherheitsmechanismen Namen bereitstellen, die sich aus der Umwandlung der vom Benutzer eingegebenen Namens in Kleinbuchstaben ergeben, ohne weitere Änderungen oder Kanonisierung.

Referenz​

Vollständige technische Details finden sich im Original RFC 4120, Abschnitt 1.3.