6 Kryptographische Protokolle
1
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Willkommen zur Vorlesung
Modellbasierte Softwaretechniken für sichere Systeme
im Sommersemester 2012 Prof. Dr. Jan Jürjens
TU Dortmund, Fakultät Informatik, Lehrstuhl XIV
2
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
6. Kryptographische Protokolle
6 Kryptographische Protokolle
3
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Sicherheitsprotokolle
System über nicht vertrauenswürdiges Netzwerk verteilt.
Angreifer kann Nachrichten abfangen, modifizieren, löschen und einfügen.
Kryptographie ermöglicht Sicherheit.
Kryptographisches Protokoll: Austausch von Nachrichten für verteilte Sitzungsschlüssel, authentisierenden Auftragsgebern etc. durch Benutzung von kryptographischen Algorithmen.
Korrekter Entwurf sehr schwierig.
4
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Beispiel: Authentisierungs- Protokolle
Ziel: Sichere Authentisierung von Kommunikationspartnern.
Bedrohungen:
• Fälschung von Identitäten
• Unautorisierte Verwendung von Identitäten Weitere Ziele von Sicherheitsprotokollen:
Schlüsselmanagement, elektronische Transaktionen, ...
6 Kryptographische Protokolle
5
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Sicherheitsprotokolle: Probleme
Viele Protokolle haben Schwachstellen aus unterschiedlichen Gründen:
−
schwache Kryptographie
−
Zentraler Nachrichten-Austausch
−
Schnittstellen, Prologe, Epiloge
−
Verwendung
−
Implementierungsfehler
6
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
ISO OSI 7-Schichten-Modell
Zwischenknoten
Phys. Medium Phys. Medium
End- knoten
End- knoten Ebene
(Layer) Application
Session Transport
Network Link Physical Presentation
Anwendungsprotokoll Darstellungsprotokoll
Sitzungsprotokoll Transportprotokoll
Netzwerk- -protokoll
-protokoll Protokoll Leitungs-
Physikal.
6 Kryptographische Protokolle
7
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Network level Ethernet, FDDI, Token Ring, PPP
Network level Ethernet, FDDI, Token Ring, PPP Switching level
IP
Transport level UDP / TCP
Transport level UDP / TCP Switching level
IP Application level
HTTP, DNS, SMTP,FTP, SNMP,POP3, T
Telenet
Application level HTTP, DNS,
SMTP,FTP, SNMP,POP3, T
Telenet
1 2 3
4 5 - 7
1 2 3 4 5 - 7
Application Application
Physical Transport Layer S/MIME, PGP,
PEM, SSH
Kerberos, SET, S-HTTP
SSL, TLS
IPsec ECP, CHAP
Verschlüsselung und
Protokollebenen
8
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
S/MIME, PGP, PEM, SSH
Kerberos, SET, S-HTTP
Verschlüsselung und Protokollebenen
Network level Ethernet, FDDI, Token Ring, PPP
Network level Ethernet, FDDI, Token Ring, PPP Switching level
IP
Transport level UDP / TCP
Transport level UDP / TCP Switching level
IP Application level
HTTP, DNS, SMTP,FTP, SNMP,POP3, T
Telenet
Application level HTTP, DNS,
SMTP,FTP, SNMP,POP3, T
Telenet
1 2 3
4 5 - 7
1 2 3 4 5 - 7
Application Application
Physical Transport Layer SSL, TLS
IPsec
ECP, CHAP
6 Kryptographische Protokolle
9
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Verschlüsselung und Protokollebenen
Network level Ethernet, FDDI, Token Ring, PPP
Network level Ethernet, FDDI, Token Ring, PPP Switching level
IP
Transport level UDP / TCP
Transport level UDP / TCP Switching level
IP Application level
HTTP, DNS, SMTP,FTP, SNMP,POP3, T
Telenet
Application level HTTP, DNS,
SMTP,FTP, SNMP,POP3, T
Telenet
1 2 3
4 5 - 7
1 2 3 4 5 - 7
Application Application
Physical Transport Layer S/MIME, PGP,
PEM, SSH
Kerberos, SET, S-HTTP
SSL, TLS
IPsec
ECP, CHAP
10
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Verschlüsselung und Protokollebenen
Network level Ethernet, FDDI, Token Ring, PPP
Network level Ethernet, FDDI, Token Ring, PPP Switching level
IP
Transport level UDP / TCP
Transport level UDP / TCP Switching level
IP Application level
HTTP, DNS, SMTP,FTP, SNMP,POP3, T
Telenet
Application level HTTP, DNS,
SMTP,FTP, SNMP,POP3, T
Telenet
1 2 3
4 5 - 7
1 2 3 4 5 - 7
Application Application
Physical Transport Layer S/MIME, PGP,
PEM, SSH
Kerberos, SET, S-HTTP
SSL, TLS
IPsec
ECP, CHAP
6 Kryptographische Protokolle
11
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Verschlüsselung und Protokollebenen
Network level Ethernet, FDDI, Token Ring, PPP
Network level Ethernet, FDDI, Token Ring, PPP Switching level
IP
Transport level UDP / TCP
Transport level UDP / TCP Switching level
IP Application level
HTTP, DNS, SMTP,FTP, SNMP,POP3, T
Telenet
Application level HTTP, DNS,
SMTP,FTP, SNMP,POP3, T
Telenet
1 2 3
4 5 - 7
1 2 3 4 5 - 7
Application Application
Physical Transport Layer S/MIME, PGP,
PEM, SSH
Kerberos, SET, S-HTTP
SSL, TLS
IPsec
ECP, CHAP
12
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Ziel:
vertrauliche Übertragung
von Daten über ungeschützte Kommuni-
Kations-
verbindung
Beispiel:
Sicherer Kanal
6 Kryptographische Protokolle
13
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Sicherer Kanal: Protokoll
Verschlüsseln unter Sitzungsschlüssel nach Austausch eines Zertifikates.
14
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Sicherheitsanalyse
Nach Dolev, Yao (1982): Für Sicherheitsanalyse,
verifiziere Systemmodell gegen Angreifermodel auf Basis der Bedrohungsszenarien in den
Verteilungsdiagrammen, das:
●
an Protokolläufen teilnehmen kann,
●
bestimmte Daten im Voraus kennt,
●
Nachrichten von bestimmten
Kommunikationsverbindungen abfangen kann,
●
Nachrichten in bestimmte
Kommunikationsverbindungen einfügen kann
●
auf bestimmte System-Knoten zugreifen kann.
6 Kryptographische Protokolle
15
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Angreifer
Verschiedene Angreifer-Klassen können
unterschiedliche Stellen des Systems entsprechend der Gefährdungsszenarien angreifen.
Beispiel: Insider-Angreifer kann
Kommunikationsverbindungen im LAN kontrollieren.
Für Sicherheitsanalyse der Spezifikation wird sie
zusammen mit dem gegebenen Angreifermodell
simuliert.
16
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Kryptographie
Im Kontext der Sicherheitsanalye betrachten wir
Schlüssel als Symbole und Kryptoalgorithmen als abstrakte Operationen:
• Kann nur mit richtigen Schlüsseln entschlüsseln.
• Kann keine statistischen Angriffe ausführen.
6 Kryptographische Protokolle
17
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Kryptographische Ausdrücke I
Exp: Menge der Krypto-Terme, die aus den Symbolen in den
Mengen Data, Keys, Var gebildet werden unter Verwendung der Operationen:
• _::_ (Konkatenation), head(_), tail(_),
• (_)
-1(K
-1: zum Verschlüsselungsschlüssel K gehöriger Entschlüsselungsschlüssel)
• { _ }_ ({M}
K: Verschlüsselung der Nachricht M mit Schlüssel K)
• Dec_( ) (Dec
K(C): Entschlüsselung der Daten C mit dem Schlüssel K)
• Sign_( ) (Sign
K(M): Signatur der Nachricht M mit dem Schlüssel K)
• Ext_( ) (Ext
K(S): Extrahieren der Signatur S mit dem Schlüssel K)
18
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Kryptographische Ausdrücke II
unter Berücksichtigung der folgenden Gleichungen:
∀ E,K. Dec
K-1({E}
K)=E
∀ E,K. Ext
K(Sign
K-1(E))=E
∀ E
1,E
2. head(E
1::E
2)=E
1
∀ E
1,E
2. tail(E
1::E
2)=E
2• Assoziativität für ::.
Zur besseren Lesbarkeit, schreibe E
1::E
2::E
3für E
1::(E
2::E
3) und fst(E
1::E
2) für head(E
1::E
2) etc.
[NB: Die o.g. Gleichungen können bei Bedarf um weitere krypto-
spezifische Eigenschaften erweitert werden (z.B. bei XOR).]
6 Kryptographische Protokolle
19
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Angreifer-Modell
memory logic
A B
a dv er sa ry
* memorize message
* delete message
* insert message
* compose own message
* use cryptographic primitives
Angreifer kann:
• Nachrichten abspeichern
• Nachrichten löschen
• Nachrichten einfügen
• Nachrichten erstellen
• Kryptographische Funktionen benutzen
• Bestimmte Systemknoten kontrollieren
• Bestimmte Daten vorab kennen
20
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Kryptobasierte Software (z.B Protokolle)
A Angreifer B
m(x)
Angreifer- Wissen:
k -1 , y,
m(x)
x
return({z} k )
[arg
b,1,1= x]
{z} k, z
return({y::x} z )
6 Kryptographische Protokolle
21
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Beispiel: Variante von TLS (SSL)
IEEE Infocom 1999.
Ziel: Vertrauliche
Daten verschlüsselt unter
Sitzungsschlüssel.
Weniger Server-
belastung als bei TLS.
22
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Protokollablauf
init
1: erstes
Argument der
Nachricht init
6 Kryptographische Protokolle
23
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Frage
Angenommen, der Angreifer kommt in Besitz des zum
Schlüssel K
CAgehörenden vertraulichen Signaturschlüssels
der Certification Authority. Wie kann er damit in Besitz des zu
übertragenden Geheimnisses s
ikommen ?
24
Modellbasierte Software- Modellbasierte Software-
techniken für sichere techniken für sichere
Systeme
Systeme SS 2012SS 2012
Zusammenfassung
●
ISO Schichtenmodell und Sicherheit
●
Angreifer-Modell
●
Kryptographische Ausdrücke
●