<< 5.5 Biometrische Merkmale | Index | 6.1 Firewalls >>


5.6 Authentifikationsprotokolle

Schlüsselaustauschprotokoll von Needham-Schroeder

  • Basiert auf pre-shared secret zwischen Authentifikationsserver AS und jedem Client C: Master-Key K_C
  • Verteilt Sitzungsschlüssel für jede Sitzung zwischen Kommunikationspartnern
  • Protokollschritte: Alice möchte mit Bob kommunizieren
    1. Alice -> AS: Alice, Bob, Nonce1
    2. AS -> Alice: {K_AB, Bob, Nonce1, {K_AB, Alice}K_Bob}K_Alice
    3. Alice -> Bob: {K_AB, Alice}K_Bob
    4. Bob -> Alice: {Nonce2}K_AB
    5. Alice -> Bob: {Nonce2 - 1}K_AB
  • Enthält Challenge-Response-Authentifikation
    • AS -> Alice: Schritte 1+2
    • Bob -> Alice: nur indirekt durch Schritte 3+4 (Bob muss K_Bob kennen)
    • Alice -> Bob: Schritte 4+5
  • Probleme
    • Replay-Attacken möglich
      • Mit altem Ticket und geknackten Schlüssel K_AB kann sich Angreifer als Alice ausgeben
      • Alice kann nach Rechteentzug weiterhin mit Bob mittels altem Schlüssel kommunizieren

Leitlinien zum Protokolldesign

  1. Jede Nachricht muss alle relevanten Information enthalten
  2. Unterschiedliche Schlüssel für den jeweiligen Zweck (Vertraulichkeit, Authentizität, Integrität) verwenden
  3. Unnötige Doppelverschlüsslung vermeiden
  4. Erst signieren, dann verschlüsseln
  5. Aktualität der Schlüssel über Zeitstempel und/oder Nonces sicherstellen

Kerberos-Protokoll

  • Ziele
    • Authentifikation der Subjekte
    • Verteilen von Sitzungsschlüsseln
    • Single-Sign-On
  • Ähnlich dem Needham-Schroeder-Protokoll, aber mit Zeitstempel
  • Komponenten
    • Authentifikationsserver (AS)
      • AS besitzt und verwaltet pre-shared secrets (Master-Keys) mit allen Clients
      • Prüft die Authentizität der Clients und stellt ihnen Identitätsnachweis in Form eines Tickets aus
    • Ticket Granting Server (TGS)
      • Erstellt Berechtigungstickets für Clients, auf weitere Server zuzugreifen (nicht: Dienste der Server zu nutzen!!!), nachdem diese authentisiert wurden
      • TGS häufig Bestandteil des KDC
    • Weitere Server für verschiedene Dienste in der Domäne (Dateiserver, Verzeichnisserver, ...)
      • Server besitzen ebenfalls Master-Key mit KDC
  • Weiteres
    • AS und TGS werden häufig als Key Distribution Center (KDC) zusammengefasst
      • Auch hierarchische Struktur von KDCs möglich
    • Client-Master-Schlüssel wird vom Client-Passwort abgeleitet (muss nicht vom Client gespeichert werden)
  • Datenstrukturen
    • Authenticator A_C eines Clients C zum Server S:
      • A_C = (C, addr, timestamp)
      • Nachweis der Authentizität eines Clients über die Kenntnis des geheimen Sitzungsschlüssels K_C:S, indem A_C mit K_C:S verschlüsselt wird
    • Ticket T_C:S eines Clients C für den Server S:
      • T_C:S = (S, C, addr, timestamp, lifetime, K_C:S)
      • Berechtigungsnachweis mit einem Server kommunizieren zu dürfen
  • Protokollschritte: Bob möchte auf NSF-Server zugreifen
    1. Bob -> KDC: Bob, TGS, Nonce1
    2. KDC -> Bob: {K_Bob:TGS, Nonce1}K_Bob, {T_Bob:TGS}K_TGS
    3. Bob -> TGS: {A_Bob}K_Bob:TGS, {T_Bob:TGS}K_TGS, NFS, Nonce2
    4. TGS -> Bob: {K_Bob:NFS, Nonce2}K_Bob:TGS, {T_Bob:NFS}K_NFS
    5. Bob -> NFS: {A_Bob}K_Bob:NFS, {T_Bob:NFS}K_NFS

Sicherheitsprobleme

  • Alle Client-Master-Keys sind mit dem gleichen Master-Key des AS verschlüsselt. Wird AS kompromittiert, müssen alle Benutzer-Kennwörter geändert werden.
  • In Kerberos Version 4 konnte ein Client das Initialticket mit dem verschlüsselten Client-Master-Key anfordern und dann offline eine Wörterbuchattacke fahren. Wurde in Version 5 behoben.
  • Schwaches Krypto-Verfahren (DES) in Version 4, aber z. T. auch in Version 5
  • Tickets werden für die Dauer des Logins auf der Festplatte im /tmp-Verzeichnis gespeichert und können so evtl. gestohlen werden.
  • Wird eine Identität bzw. ein Ticket gestohlen, so hat ein Angriff durch das Single-Sign-On weitreichende Wirkung.
  • Die Uhrzeit zwischen den Rechnern wird meist durch angreifbare Protokolle synchronisiert. Da die Tickets mit Zeitstempeln und Lebensdauer arbeiten, sind durch einen Angriff auf das Zeit-Protokoll auch Replay-Attacken möglich.
  • Authentifikator enthält spoofbare IP bzw. MAC-Adresse des Recherns zu dessen Identifikation.

Nach oben

Zuletzt geändert am 06 April 2005 10:56 Uhr von chrschn