• Keine Ergebnisse gefunden

Erstellung eines Protokolls

N/A
N/A
Protected

Academic year: 2022

Aktie "Erstellung eines Protokolls"

Copied!
22
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Kryptographische Protokolle

Lerneinheit 3: Design von Protokollen

Prof. Dr. Christoph Karg

Studiengang Informatik Hochschule Aalen

Sommersemester 2021

4.5.2021

Einleitung

Einleitung

Diese Lerneinheit ist eine Einführung in die Konstruktion kryptographischer Protokolle für die Verteilung von

Sitzungsschlüsseln.

Gliederung:

1. Beschreibung des Kommunikationsszenarios

2. Konstruktion eines Protokolls zur Schlüsselverteilung 3. Wissenswertes zum Design kryptographischer Protokolle

Referenz: Colin Boyd, Anish Mathuria: Protocols for Authentication and Key Establishment, Springer, 2003.

(2)

Das Kommunikationsszenario Teilnehmer

Teilnehmer an der Kommunikation

• Alice (A) und Bob (B) ⇝ Nutzer, die einen geheimen Sitzungsschlüssel (Session Key) für eine vertrauliche Kommunikation benötigen.

• Trusted Server (S) ⇝ Vertrauenswürdige Instanz, die die Erzeugung der Sitzungsschlüssel übernimmt.

• Oskar(O) ⇝ Angreifer, der versucht, die Übertragung zu manipulieren.

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 3 / 44

Das Kommunikationsszenario Aufgabe des Protokolls

Aufgabe des Protokolls

Aufgabe: Bereitstellung eines Sitzungsschlüssels KAB für die vertrauliche Kommunikation zwischen A und B.

Anforderungen:

• Nach Abschluss des Protokolls kennen ausschließlich A, B und S den Sitzungsschlüssel.

• Anhand der übertragenen Daten kann der Sitzungsschlüssel nicht ermittelt werden.

• Die Nutzer wissen nach der Beendigung des Protokolls, wer den Sitzungsschlüssel kennt.

• Manipulationsversuche von O werden erkannt bzw. verhindert.

Voraussetzung: A und B haben im Vorfeld mit S jeweils einen

(3)

Erstellung eines Protokolls

Erstellung eines Protokolls

• Im folgenden werden mehrere Entwürfe für ein Protokoll zur Schlüsselverteilung vorgestellt.

• Viele der Entwürfe haben eine Designschwäche und ermöglichen Oskar einen Angriff, der von den anderen Teilnehmern nicht entdeckt wird.

• Die Spezifikation des Protokolls erfolgt in stark vereinfachter Weise.

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 5 / 44

Erstellung eines Protokolls

Anmerkungen zur Darstellung des Protokolls

• Die Spezifikation beschreibt den kompletten Ablauf des Protokolls.

• Es wird implizit angenommen, dass die Teilnehmer wissen, dass die empfangenen Nachrichten Teil des Protokolls sind.

• Das Protokoll legt nicht fest, wie die Teilnehmer die empfangenen Daten speichern und verarbeiten.

• Die Spezifikation enthält keine Hinweise zur Fehlerbehandlung, z.B. für den Fall, dass eine Nachricht nicht empfangen wird.

(4)

Erstellung eines Protokolls Protokoll 1: Ein erster Versuch

Protokoll 1: Ein erster Versuch

A B

S

1. A, B

2. KAB

3. KAB, A

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 7 / 44

Erstellung eines Protokolls Protokoll 1: Ein erster Versuch

Ablauf von Protokoll 1

1. A beantragt bei S einen Sitzungsschlüssel zur vertraulichen Kommunikation mit B.

2. S sendet den Sitzungsschlüssel an A.

3. A leitet den Sitzungsschlüssel an B weiter, um die vertrauliche Kommunikation zu initiieren.

(5)

Erstellung eines Protokolls Protokoll 1: Ein erster Versuch

Bemerkungen

• Protokoll 1 ist nicht sicher, da der Sitzungsschlüssel unverschlüsselt übertragen wird.

• Oskar kann durch Abfangen der Nachricht 2 oder Nachricht 3 ohne Mühe in Besitz des Sitzungsschlüssels gelangen.

• Der Fehler, dass vertrauliche Daten unverschlüsselt übertragen werden, wurde in der Vergangenheit oft begangen.

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 9 / 44

Erstellung eines Protokolls Protokoll 2: Einsatz verschlüsselter Nachrichten

Notation

• Die Notation {M}K steht dafür, dass die Nachricht M mit dem Schlüssel K verschlüsselt wird.

• Das eingesetzte Kryptosystem wird nicht weiter spezifiziert, da es für den prinzipiellen Ablauf des Protokolls nicht relevant ist.

• Um die Sicherheit des Protokolls zu gewährleisten, muss ein sicheres Kryptosystem gewählt werden.

(6)

Erstellung eines Protokolls Protokoll 2: Einsatz verschlüsselter Nachrichten

Protokoll 2: Einsatz verschlüsselter Nachrichten

A B

S

1. A, B

2. {KAB}KAS,{KAB}KBS

3. {KAB}KBS, A

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 11 / 44

Erstellung eines Protokolls Protokoll 2: Einsatz verschlüsselter Nachrichten

Ablauf von Protokoll 2

1. A beantragt bei S einen Sitzungsschlüssel zur vertraulichen Kommunikation mit B.

2. S verschlüsselt den Sitzungsschlüssel jeweils für A und B und sendet die Daten an A.

3. A leitet den für B verschlüsselten Sitzungsschlüssel an B weiter, um die vertrauliche Kommunikation zu initiieren.

(7)

Erstellung eines Protokolls Ein Angriff auf Protokoll 2

Ein Angriff auf Protokoll 2

A B

S

O

1. A, B

2. {KAB}KAS,{KAB}KBS

3. {KAB}KBS, A 3’. {KAB}KBS, D

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 13 / 44

Erstellung eines Protokolls Ein Angriff auf Protokoll 2

Bemerkungen

• In Protokoll wird der Sitzungsschlüssel zwar verschlüsselt, aber nicht mit der zugehörigen Identität verbunden.

• Oskar kann A’s Identität durch eine andere Identität D ersetzen und die modifizierte Nachricht an B weiterleiten.

B denkt, dass er mit D eine vertrauliche Kommunikation aufbaut.

• Eine mögliche Konsequenz ist, dass B Informationen für A offenlegt, die eigentlich nur für D bestimmt sind.

• Dieses Protokoll ist nicht sicher, da B die Identität des Kommunikationspartners nicht mit dem Sitzungsschlüssel zuordnen kann.

(8)

Erstellung eines Protokolls Ein weiterer Angriff auf Protokoll 2

Ein weiterer Angriff auf Protokoll 2

A O

S

O

1. A, B

1’. A, O

2’. {KAO}KAS,{KAO}KOS

2. {KAO}KAS,{KAO}KOS

3. {KAO}KOS, A

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 15 / 44

Erstellung eines Protokolls Ein weiterer Angriff auf Protokoll 2

Bemerkungen

• Ablauf des Angriffs:

1. O fängt die Nachricht von A an S, ersetzt die Identität B durch seine eigene und sendet die von S empfangenen Schlüssel an A weiter.

2. O fängt die Nachricht von A an B ab und nutzt den empfangenen Sitzungsschlüssel zur vertraulichen Kommunikation mit A.

A kann nicht erkennen, dass sie mit O und nicht mit B kommuniziert.

(9)

Erstellung eines Protokolls Protokoll 3

Protokoll 3

A B

S

1. A, B

2. {KAB, B}KAS,{KAB, A}KBS

3. {KAB, A}KBS

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 17 / 44

Erstellung eines Protokolls Protokoll 3

Ablauf von Protokoll 3

1. A beantragt bei S einen Sitzungsschlüssel zur vertraulichen Kommunikation mit B.

2. S verschlüsselt den Sitzungsschlüssel sowie die Identität des Gegenübers jeweils für A und B. Anschließend sendet S die Daten an A.

3. A leitet den für B verschlüsselten Sitzungsschlüssel an B weiter, um die vertrauliche Kommunikation zu initiieren.

(10)

Erstellung eines Protokolls Protokoll 3

Bemerkungen

• Die Angriffe auf Protokoll 2 sind bei Protokoll 3 wirkungslos, da O den Inhalt der verschlüsselten Nachrichten nicht verändern kann.

• Es wird jedoch nicht zwischen Datenintegrität und Vertraulichkeit unterschieden.

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 19 / 44

Erstellung eines Protokolls Angriff auf Protokoll 3

Angriff auf Protokoll 3

A B

O

1. A, B

2. {KAB , B}KAS,{KAB , A}KBS

3. {KAB , A}KBS

(11)

Erstellung eines Protokolls Angriff auf Protokoll 3

Bemerkungen

O verwendet einen alten Sitzungsschlüssel KAB von A und B für eine Replay Attacke.

• Hierzu gibt er sich gegenüber A als S aus.

• Weder A noch B können erkennen, dass sie einen alten Sitzungsschlüssel erhalten haben.

• Falls O den Wert von KAB nicht kennt, dann er die Replay

Attacke zur Gewinnung zusätzlicher Daten für die Kryptoanalyse einsetzen.

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 21 / 44

Erstellung eines Protokolls Protokoll 4

Challenge Response Verfahren

• Challenge Response Verfahren werden zur Verhinderung von Replay Angriffen eingesetzt.

• Bei Challenge Response Protokollen kommt ein Zufallswert zum Einsatz, der als Nonce bezeichnet wird.

• Die Nonce wird von einem Nutzer generiert und an den Server gesendet. Dieser integriert sie in seine Antwort.

• Eine Nonce darf nur einmal verwendet werden.

• Durch die Generierung guter Zufallszahlen ist es äußerst

unwahrscheinlich, dass zweimal dieselbe Nonce generiert wird.

(12)

Erstellung eines Protokolls Protokoll 4

Protokoll 4

A B

S

1. A, B, NA

2.{KAB, B, NA,{KAB, A}KBS}KAS

3. {KAB, A}KBS

4. {NB}KAB

5. {NB 1}KAB

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 23 / 44

Erstellung eines Protokolls Protokoll 4

Ablauf von Protokoll 4

1. A generiert die Nonce NA und sendet diese mit der Beantragung des Sitzungsschlüssels für eine vertrauliche Kommunikation mit B an S.

2. S sendet NA zusammen mit dem Sitzungsschlüssel an A zurück.

A vergleicht die erhaltene Nonce mit NA und bricht bei Ungleichheit das Protokoll ab.

3. A sendet den Sitzungsschlüssel an B weiter.

4. B sendet die mit dem Sitzungsschlüssel KAB chiffrierte Nonce NB an A.

5. A sendet NB −1 als mit KAB verschlüsselte Nachricht an B zurück und bestätigt auf diese Weise, dass sie denselben

(13)

Erstellung eines Protokolls Angriff auf Protokoll 4

Angriff auf Protokoll 4

O B

3. {KAB , A}KBS

4. {NB}KAB

5. {NB 1}KAB

Bemerkungen:

• In Protokoll 4 wird nur A (aber nicht B) vor einer Replay Attacke geschützt.

O kann B immer noch einen alten Sitzungsschlüssel

unterschieben und eventuell an vertrauliche Daten gelangen.

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 25 / 44

Erstellung eines Protokolls Protokoll 5

Protokoll 5

A B

S

2. A, B, NA, NB

3. {KAB, B, NA,{KAB, A, NB}KBS}KAS

1. B, NB 4. {KAB, A, NB}KBS

(14)

Erstellung eines Protokolls Protokoll 5

Ablauf von Protokoll 5

1. B initiiert das Protokoll, indem er die Nonce NB an A sendet.

2. A erzeugt selbst die Nonce NA und sendet diese zusammen mit NB an S, um einen Sitzungsschlüssel für B und sich zu

beantragen.

3. S integriert NA und NB in die entsprechenden Antworten mit dem Sitzungsschlüssel und sendet die Daten an A.

4. A leitet den Sitzungsschlüssel (inklusive NB) an B weiter.

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 27 / 44

Erstellung eines Protokolls Protokoll 5

Bemerkungen

• Protokoll 5 behebt alle Schwächen der voran gegangenen Protokolle.

• Im Unterschied zu Protokoll 4 wissen A und B nach Ablauf des Protokolls nicht, ob der Gegenüber den korrekten Schlüssel empfangen hat.

(15)

Wissenswertes zum Protokolldesign

Wissenswertes zum Protokolldesign

• Annahmen über potentielle Angreifer

• Arten von Angriffen auf kryptographische Protokolle

• Prinzipien beim Protokolldesign

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 29 / 44

Wissenswertes zum Protokolldesign Annahmen über den Angreifer

Annahmen über den Angreifer

1. Der Gegner ist in der Lage, alle in einem kryptographischen Protokoll versendeten Nachrichten abzuhören.

2. Der Gegner ist in der Lage, jede versendete Nachricht zu

manipulieren. Außerdem kann er eine Nachricht an einen anderen Teilnehmer umleiten oder neue Nachrichten einschleusen.

3. Der Gegner kann ein legitimer Nutzer (Insider) eine externe Entität (Outsider) oder eine Kombination von beiden sein.

4. Der Gegner ist in der Lage, den Wert eines Sitzungsschlüssel zu ermitteln, falls die Sitzung hinreichend lange zurück liegt.

5. Der Gegner kann eine beliebige Anzahl parallel ablaufender Protokolle zwischen beliebigen Teilnehmern starten.

(16)

Wissenswertes zum Protokolldesign Angriffsarten

Angriffsarten

• Abhören der Kommunikation (Lauschangriff)

• Modifikation der Nachrichten

• Replay Attacke

• Preplay Attacke

• Reflection Attacke

• Denial of Service Attacke

• Typing Attacke

• Kryptoanalyse

• Manipulation von Zertifikaten

• Protokoll Interaktion

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 31 / 44

Wissenswertes zum Protokolldesign Angriffsarten

Abhören der Kommunikation

• Der Angreifer ist in der Lage, die versendeten Nachrichten abzufangen.

• Das Abhören der Kommunikation lässt sich durch Verschlüsseln der Nachrichten verhindern.

• Ein derartiger Angriff ist in der Regel nicht erkennbar.

(17)

Wissenswertes zum Protokolldesign Angriffsarten

Modifikation der Nachrichten

• Der Angreifer verändert den Inhalt der versendeten Nachrichten.

• Oft wird aus abgefangenen Nachrichten eine neue inhaltlich korrekte Nachricht konstruiert.

• Eine Maßnahme zur Verhinderung dieses Angriffs ist der Einsatz digitaler Signaturen und kryptographischer Hashfunktionen.

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 33 / 44

Wissenswertes zum Protokolldesign Angriffsarten

Replay und Preplay Attacken

• Eine Replay Attacke tritt auf, wenn ein Angreifer in den Ablauf des Protokolls eingreift, indem er Nachrichten aus vergangenen Abläufen des Protokolls versendet.

• Replay Attacken werden oft in Kombination mit anderen Angriffsarten verwendet.

• Bei einer Preplay Attacke versendet der Angreifer bereits Nachrichten, bevor die eigentlichen Teilnehmer des Protokolls miteinander kommunizieren.

(18)

Wissenswertes zum Protokolldesign Angriffsarten

Reflection Attacke

• Bei dieser Art von Angriff sendet der Angreifer Nachrichten an den Sender zurück.

• Reflection Attacken sind ein Spezialfall von Replay Attacken.

• Ein Szenario für eine derartige Attacke ist ein Server, der die parallele Ausführung eines Protokolls erlaubt.

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 35 / 44

Wissenswertes zum Protokolldesign Angriffsarten

Denial of Service Attacke

• Der Angreifer behindert oder verhindert, dass das Protokoll von legitimen Nutzern ausgeführt wird.

• Unterscheidung:

▷ Resource Depletion Attack ⇝ Verbrauch der Rechenleistung.

▷ Connection Depletion Attack ⇝ Ausschöpfen der maximalen Zahl der erlaubten Verbindungen.

• DoS Attacken lassen sich prinzipiell nicht komplett verhindern.

• Es gibt diverse Ansätze, um DoS Attacken abzuschwächen.

(19)

Wissenswertes zum Protokolldesign Angriffsarten

Typing Attacke

• Der Angreifer ersetzt Teile einer Nachricht durch einen anderen Inhalt.

• Dies ist möglich, da Nachrichten in Form eines Byte-Arrays übertragen werden und leicht manipulierbar sind.

• Das Ziel ist es zu erreichen, dass ein Teilnehmer die empfangenen Daten fehlinterpretiert.

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 37 / 44

Wissenswertes zum Protokolldesign Angriffsarten

Kryptoanalyse

• Der Angreifer nutzt in dem Protokoll enthaltene Informationen für die Kryptoanalyse.

• Insbesondere schwache Schlüssel bieten eine große Angriffsfläche.

(20)

Wissenswertes zum Protokolldesign Angriffsarten

Manipulation von Zertifikaten

• Der Angreifer manipuliert Informationen über Zertifikate um einen oder mehrere Abläufe des Protokolls zu beeinflussen.

• Eine Möglichkeit, die Teilnehmer zu täuschen, ist das Einschleusen eines gefälschten Zertifikats.

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 39 / 44

Wissenswertes zum Protokolldesign Angriffsarten

Protokoll Interaktion

• Der Angreifer verwendet ein neues Protokoll, um mit einem bekannten Protokoll zu interagieren.

• Die zwischen Server und Nutzern vereinbarten Langzeit-Schlüssel sollten nur für ein Protokoll verwendet werden.

• Wird ein Langzeit-Schlüssel für mehrere Protokolle eingesetzt, dann kann ein kompromittierter Schlüssel „zweckentfremdet“

werden.

(21)

Wissenswertes zum Protokolldesign Prinzipien beim Protokolldesign

Prinzipien beim Protokolldesign

1. Die Interpretation einer Nachricht sollte ausschließlich auf ihrem Inhalt basieren.

2. Die Bedingungen, ob und wie auf eine Nachricht reagiert wird, sollten klar festgelegt werden.

3. Falls die Identität eines Teilnehmers für die Bedeutung einer Nachricht wichtig ist, sollte dessen Name in der Nachricht genannt werden.

4. Es sollte klar gestellt werden, warum Verschlüsselung eingesetzt wurde.

5. Aus der Tatsache, dass ein Teilnehmer verschlüsselte Daten signiert, kann man nicht ableiten, dass er deren Inhalt kennt.

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 41 / 44

Wissenswertes zum Protokolldesign Prinzipien beim Protokolldesign

Prinzipien beim Protokolldesign (Forts.)

6. Die Annahmen über die Eigenschaften der genutzten Nonces müssen klar ersichtlich sein.

7. Es muss verhindert werden, dass ein Angreifer eine Challenge stellen und anschließend eine Replay Attacke für die Response ausführen kann.

8. Beim Einsatz von Zeitstempeln muss sicher gestellt werden, dass die zeitliche Abweichung der Uhren der betroffenen Computer kleiner ist als das zulässige Alter einer Nachricht.

(22)

Wissenswertes zum Protokolldesign Prinzipien beim Protokolldesign

Prinzipien beim Protokolldesign (Forts.)

9. Ein kürzlich verwendeter Sitzungsschlüssel kann mittlerweile veraltet und kompromittiert sein.

10. Es sollte feststellbar sein,

▷ zu welchem Protokoll und

▷ zu welcher Ausführung des Protokolls

eine Nachricht gehört. Ferner sollte die Nummer der Nachricht erkennbar sein.

11. Die Vertrauensverhältnisse eines Protokolls sollten explizit erklärt werden. Ferner sollte begründet werden, warum diese notwendig sind.

Prof. Dr. C. Karg (HS Aalen) Kryptographische Protokolle Design von Protokollen 43 / 44

Zusammenfassung

Zusammenfassung

• Das Design von kryptographischen Protokollen ist eine schwierige Aufgabe.

• Bei der Spezifikation eines Protokolls werden unnötige Details weg gelassen.

• Es gibt eine Vielzahl von Angriffsmöglichkeiten auf kryptographische Protokolle.

• Designprinzipien helfen bei der Konzeption kryptographischer Protokolle.

Referenzen

ÄHNLICHE DOKUMENTE

Diakonisches Werk der Evangelischen Kirche der Pfalz Diakonisches Werk der Ev.-Luth.. Landeskirche

Diakonisches Werk der Evangelischen Kirche der Pfalz Diakonisches Werk der Ev.-Luth.. Landeskirche

• Die Reihenfolge der Aufgaben ist nicht vorgegeben, aber wenn eine Aufgabe angefangen wurde, muss sie gelöst.. werden, bevor mit einer anderen begonnen

Dank dieses neuen Systems sind die Tore nicht nur besonders montage- und wartungsfreundlich, sondern punkten auch mit einer ansprechenden Optik. Neues

Der abgebildete Anzug (links) entspricht der Herstellungs- und Prüfungsbeschrei- bung für eine universelle Feuerwehr- schutzkleidung (HuPF Teil 2 und 3) und erfüllt auch die

UNSERE LEBENSGRUNDLAGE WASSER – WIE STELLEN WIR SIE SICHER?. Zum Zusammenhang von Klimakrise und Trinkwasserversorgung

Schaden Welker, Martius, Stucki, Bresch, Dierer& Brönnimann, 2015 Schwierz, Köllner-Heck, Zenklusen, Bresch, Vidale, Wild, Schär, 2010 Della-Marta, Liniger, Appenzeller,

die Anwendung von TCPv6 wird von OpenLAB CDS, Client für Microsoft-Netzwerke sowie Datei- und Druckerfreigabe für Microsoft-Netzwerke nicht unterstützt.. Genauere Informationen