IT-Sicherheit Kapitel 10 IPSec Dr. Christian Rathgeb Sommersemester 2014 1 IT-Sicherheit – Kapitel 10 – IPSec
IT-Sicherheit
Kapitel 10
IPSec
Dr. Christian Rathgeb
Sommersemester 2014
1 IT-Sicherheit – Kapitel 10 – IPSec
2
• TCP/IP-Schichtenmodell:
IT-Sicherheit – Kapitel 10 – IPSec
TCP/IP
3
• Sicherheitsmechanismen in den Schichten:
IT-Sicherheit – Kapitel 10 – IPSec
TCP/IP
4
• TCP verpackt die Anwenderdaten in eine Folge von Datenpaketen.
• IP versendet die einzelnen Datenpakete. TCP setzt die
empfangenen Datenpakete wieder in der richtigen Reihenfolge
zusammen.
IT-Sicherheit – Kapitel 10 – IPSec
TCP/IP
5
• Jedes IP-Paket besteht aus einem „Header“ und einem Datenfeld
(„Payload“).
• Jedes IP-Paket enthält im Header die Quell- und Zieladresse. Über
Gateways/Router werden die IP-Pakete bis zur Zieladresse
vermittelt.
IT-Sicherheit – Kapitel 10 – IPSec
TCP/IP
6
• Bewertung:
• IP-Pakete werden unverschlüsselt von den Routern übertragen.
• IP-Pakete können von jedem Router manipuliert werden.
• Integrität, Authentizität und Vertraulichkeit können NICHT
gewährleistet werden.
• IPSec ist eine Erweiterung des Internet Protocols um
Authentifizierung und Verschlüsselung.
IT-Sicherheit – Kapitel 10 – IPSec
TCP/IP
7
• Prinzip:
• Um IP-Pakete sicher zu übertragen, werden diese transformiert
(Message Authentication Codes oder/und symmetrische
Verschlüsselung).
IT-Sicherheit – Kapitel 10 – IPSec
IPSec
8
• Die Transformation übernimmt der IPSec-Stack des
Betriebssystems.
• Dem Anwendungsprozess bleibt IPSec verborgen.
• IPSec sichert die Kommunikation zwischen Rechnersystemen.
• Spezifikation:
• Architektur: erste Version: RFC 2401; neu: RFC 4301
• Authentifizierung: erste Version: RFC 2402; neu: RFC 4302
• Verschlüsselung: erste Version: RFC 2406; neu: RFC 4303
• Schlüsselmanagement: RFC 2407, 2408 (ISAKMP); RFC 2409
(IKEv1); RFC 4306 (IKEv2)
IT-Sicherheit – Kapitel 10 – IPSec
IPSec
9
• Mechanismen:
• IPSec bietet zwei Arten von Transformationen um IP-Pakete sicher zu übertragen:
1. Authentication Header (AH): Integritätsschutz; Datenauthentizität
2. Encapsulating Security Payload (ESP): Vertraulichkeit; optional Datenauthentizität
• Modi:
• Für die Verwendung AH und ESP gibt es zwei verschiedene Modi:
1. Transport-Modus: Sicherung der Nutzdaten
2. Tunnel-Modus: Schutz des gesamten IP-Paketes; dazu wird das zu schützende IP-Paket in ein neues IP-Paket verpackt
IT-Sicherheit – Kapitel 10 – IPSec
IPSec
10
• Der Authentication Header (= AH) bietet einen Integritätsschutz +
Authentizität des IP-Paketes.
• Es wird ein Hash-Wert über das IP-Paket + AH-Parameter +
Schlüssel berechnet.
IT-Sicherheit – Kapitel 10 – IPSec
Authentication Header
11
• Next Header: gibt den Typ des nachfolgenden Headers an
• Payload Length: gibt die Länge des Authentication Headers an
• Security Parameter Index: gibt den MAC Algorithmus und den Schlüssel an
• Sequence Number: Zähler, der bei jedem IP-Paket erhöht wird; (gegen Replay-Angriffe)
• Algorithmen für AH:
• Verwendbare Algorithmen nach der aktuellen Version (RFC 4835) für die Implementierung von AH: HMAC-SHA1-96, AES-XCBC-MAC-96, HMAC-MD5-96
IT-Sicherheit – Kapitel 10 – IPSec
Authentication Header
12
• Modi für Authentication Header:
IT-Sicherheit – Kapitel 10 – IPSec
Authentication Header
13
• ESP dient zur Verschlüsselung der Nutzdaten.
• Es wird optional ein Hash-Wert über das ESP-Paket + Schlüssel
berechnet.
IT-Sicherheit – Kapitel 10 – IPSec
Encapsulating Security Payload
14
• Security Parameter Index: gibt den Algorithmus und den
Schlüssel an.
• Sequence Number: Zähler, der bei jedem IP-Paket erhöht wird;
(gegen Replay-Angriffe)
• Encrypted Data: verschlüsselte Nutzdaten.
• Padding: Padding des Klartextes bei blockorientierten Chiffren
bzw. Auffüllen von Bits, so dass ESP-Format stimmt.
• Padding Length: gibt die Anzahl der Padding-Bytes an.
• Next Header: gibt den Typ des nachfolgenden Headers an.
IT-Sicherheit – Kapitel 10 – IPSec
Encapsulating Security Payload
15
• Algorithmen für ESP:
• Verwendbare Algorithmen nach der aktuellen Version (RFC 4835)
für die Verschlüsselung:
AES128-CBC, 3DES-CBC, AES-CTR
• Verwendbare Algorithmen für die MAC-Berechnung:
HMAC-SHA1-96, AES128-XCBC-MAC-96, HMAC-MD5-96
IT-Sicherheit – Kapitel 10 – IPSec
Encapsulating Security Payload
16
• NULL-Verschlüsselung:
• In der Spezifikation RFC 2410 wurde gefordert, dass die NULL-
Verschlüsselung von ESP unterstützt werden muss.
• Aus technischer Sicht wird hier eine Verschlüsselung durchgeführt,
jedoch wird durch die Wahl des NULL-Algorithmus de facto auf
eine Verschlüsselung verzichtet.
• NULL-Verschlüsselung ist ein wissenschaftlicher Witz der
Informatik! (mit hoher Flexibilität und Performance :-)
IT-Sicherheit – Kapitel 10 – IPSec
Encapsulating Security Payload
17
• Modi für Encapsulating Security Payload:
IT-Sicherheit – Kapitel 10 – IPSec
Encapsulating Security Payload
18
• AH/ESP (Transport) Host-to-Host:
• AH/ESP im Transport-Modus gewährleistet eine sichere
Kommunikation zwischen Host A und Host B.
• Der Datentransfer zwischen Host A und Host B kann aber erkannt
und analysiert werden (Eingriff in die Privatsphäre).
IT-Sicherheit – Kapitel 10 – IPSec
Anwendungsszenarien
19
• ESP (Tunnel) Gateway-to-Gateway:
• Im Tunnel-Modus werden mit ESP auch die IP-Header verschlüsselt.
• Bei Anwendung von ESP im Tunnel-Modus zwischen Gateways wird der Kommunikationsfluss zwischen Host A und Host B verschleiert (kann aber zw. Host und Gateway abgehört bzw. manipuliert werden).
IT-Sicherheit – Kapitel 10 – IPSec
Anwendungsszenarien
20
• ESP (Tunnel) Host-to-Host (Transport):
• Kommunikationsfluss-Verschleierung durch ESP im Tunnel-Modus zwischen Gateways.
• Verschlüsselte/ authentische/ integritäts-geschützte Kommunikation zwischen Host A und B im Transport-Modus.
• Realisierung eines Virtual Private Networks (= VPN).
IT-Sicherheit – Kapitel 10 – IPSec
Anwendungsszenarien
21
• IPSec-Transformationen:
• Für die Sicherheits-Transformationen (AH/ESP) sind zusätzliche
Informationen notwendig:
1. Welcher Algorithmus wird verwendet?
2. Welcher Schlüssel wird verwendet?
3. Wie lange ist der Schlüssel gültig?
• Die Parameter der Transformation werden in einer Security Association (= SA) definiert.
• Eine Security Association fasst IP-Pakete anhand mehrerer Parameter zusammen.
IT-Sicherheit – Kapitel 10 – IPSec
Security Associations
22
• SA-Parameter:
• Security Parameter Index: ermöglicht dem Empfänger die
entsprechende SA auszuwählen, mit der das empfangene Paket
verarbeitet wird.
• IP-Zieladresse: gibt die Zieladresse der SA an; kann ein End-User
oder Router sein.
• Security Protocol Identifier: gibt an, ob AH oder ESP verwendet
wird.
• Sequenz-Zähler/ Sequenz-Zähler-Überlauf/ Anti-Replay-
Window: Schutz vor Replay
IT-Sicherheit – Kapitel 10 – IPSec
Security Associations
23
• SA-Parameter:
• AH-Information: MAC-Algorithmus, Schlüssel, Gültigkeitsdauer
• ESP-Information: Verschlüsselungs- und MAC-Algorithmus,
Schlüssel, Initialisierungsvektoren, Gültigkeitsdauer
• Gültigkeitsdauer: Zeitintervall oder Byte-Zähler; gibt an wann die
SA ersetzt werden muss
• Protokoll-Modus: gibt den Modus an: Transport oder Tunnel
IT-Sicherheit – Kapitel 10 – IPSec
Security Associations
24
• Beziehungen:
• Eine Security Association gilt immer nur in eine
Kommunikationsrichtung zwischen zwei Teilnehmern.
IT-Sicherheit – Kapitel 10 – IPSec
Security Associations
25
• Security Policy Database:
• Die Security Policy Database (= SPD) definiert, welche Security
Associations für welche IP-Pakete verwendet werden sollen.
• Jeder SPD-Eintrag ist durch so genannte Selektoren bestimmt:
- IP-Adressen
- User-ID
- Transport Layer Protocol
- Ports
IT-Sicherheit – Kapitel 10 – IPSec
Security Associations
26
• IPSec benötigt für AH und ESP geheime Schlüssel, die an beiden
Endpunkten verfügbar sein müssen.
• Die Festlegung und Verteilung von Schlüsseln ist auf zwei Arten
möglich:
1. Der Administrator legt die Schlüssel an beiden Seiten fest.
2. Internet Key Exchange (= IKE)
• Das Internet Key Exchange Protokoll dient dazu, Security
Associations zwischen Kommunikationsteilnehmern aufzubauen,
abzustimmen, zu verändern und zu löschen.
IT-Sicherheit – Kapitel 10 – IPSec
Schlüsselmanagement
27
• Internet Key Exchange:
IT-Sicherheit – Kapitel 10 – IPSec
Schlüsselmanagement
28
• Internet Key Exchange:
• ISAKMP (Internet Security Association and Key Management Protocol) dient dem Aufbau von Security Associations.
• ISAKMP wurde von der IETF standardisiert (RFC 2408).
• ISAKMP arbeitet standardmäßig auf dem UDP-Port 500.
• ISAKMP kann mit verschiedene Schlüsselvereinbarungs-protokollen verwendet werden.
• ISAKMP besteht aus zwei Protokollphasen:
• Phase 1: Hier authentifizieren sich die Partner und tauschen Schlüssel aus.
• Phase 2: Eigentliche Vereinbarung der SAs für IPSec.
IT-Sicherheit – Kapitel 10 – IPSec
Schlüsselmanagement
29
• ISAKMP:
IT-Sicherheit – Kapitel 10 – IPSec
Schlüsselmanagement
30
• Austausch von Cookies:
• Beide Partner senden in ihrer initialen Nachricht eine Zufallszahl,
die vom Partner bestätigt werden muss.
• Erst nachdem der Initiator den „Cookie“ des Responders bestätigt,
sendet der Responder seine eigentliche Nachricht.
• Mit dem Austausch von „Cookies“ will man Denial-of-Service-
Angriffe verhindern.
IT-Sicherheit – Kapitel 10 – IPSec
Schlüsselmanagement
31
• Schlüsselaustausch:
• Die Phase 1 kann in zwei Modi ablaufen:
• Main Mode:
- Authentifizierung und Vereinbarung eines Sitzungsschlüssels auf
Basis von Diffie-Hellman
- Vereinbarung der Kryptoalgorithmen
• Aggressive Mode:
- Authentifizierung und Vereinbarung eines Sitzungsschlüssels auf
Basis von Diffie-Hellman
- Der Initiator gibt die Kryptoalgorithmen vor
IT-Sicherheit – Kapitel 10 – IPSec
Schlüsselmanagement
32
• Gegenseitige Authentifizierung:
• Nach dem Schlüsselaustausch authentifizieren sich die beiden
Teilnehmer gegenseitig. Es gibt drei mögliche Modi:
- Vorab ausgetauschte Schlüssel (Pre-Shared Keys)
- Digitale Signaturen (DSA oder RSA)
- Public-Key Verschlüsselung (El-Gamal oder RSA)
IT-Sicherheit – Kapitel 10 – IPSec
Schlüsselmanagement
33
• Schlüsselableitung:
• Aus den Protokolldaten, die zwischen Initiator und Responder
ausgetauscht werden, werden je nach Modus verschiedene Schlüssel abgeleitet: - Sitzungsschlüssel - Ableitungsschlüssel - Authentifizierungsschlüssel - Verschlüsselungsschlüssel
• Aktuell sind folgende Algorithmen (Pseudo Random Functions) zur Schlüsselableitung in IKEv2 spezifiziert: HMAC-MD5 (RFC 2104), HMAC-SHA1 (RFC 2104), HMAC-TIGER (RFC 2104), AES128-XCBC-MAC (RFC 3664)
IT-Sicherheit – Kapitel 10 – IPSec
Schlüsselmanagement
34
• Chiffren in IKEv2:
• DES-IV64 (RFC 1827), DES (RFC 2405), NULL (RFC 2410),
3DES (RFC 2451), RC5 (RFC 2451), IDEA (RFC 2451), CAST
(RFC 2451), BLOWFISH (RFC 2451), 3IDEA (RFC 2451), AES-
CBC (RFC 3602), AES-CTR (RFC 3664)
• MAC-Algorithmen:
• HMAC-MD5-96 (RFC 2403), HMAC-SHA1-96 (RFC 2404), DES-
MAC, KDPK-MD5 (RFC 1826), AES128-XCBC-96 (RFC 3566)
IT-Sicherheit – Kapitel 10 – IPSec
Schlüsselmanagement
35
• Zusammenfassung :
• AH bietet nur Integrität und Authentizität, aber keine
Vertraulichkeit. AH schützt auch die IP-Header vor Manipulation.
• ESP bietet Integrität, Authentizität und Vertraulichkeit. ESP schützt
aber nicht die IP-Header.
• ESP im Tunnel-Modus schützt auch die Integrität der eigentlichen
IP-Header nur nicht die Tunnel-IP-Header.
• Mit AH erreicht man kein hohes Sicherheitsniveau.
• IPSec-Lösungen werden komplizierter und aufwändiger zu
administrieren.
IT-Sicherheit – Kapitel 10 – IPSec
Sicherheitsbetrachtung
36
• Schwachstellen im Design:
• Authentizität: Datenpakete werden nur einzeln authentitäts-
geschützt; die Authentizität des gesamten Datenstroms wird nur
optional überprüft.
• Vertraulichkeit: ESP gibt es im CBC-Modus, d.h. eine
Veränderung von Geheimtextblöcken wirkt sich nur auf den
aktuellen und den nächsten Klartextblock aus.
(Cut-and-Paste- Angriff möglich bei Host-to-Host)
IT-Sicherheit – Kapitel 10 – IPSec
Sicherheitsbetrachtung
37
• Cut-and-Paste-Angriff:
• Voraussetzung:
• 1.Schritt:
IT-Sicherheit – Kapitel 10 – IPSec
Sicherheitsbetrachtung
38
• 2.Schritt:
• 3.Schritt:
IT-Sicherheit – Kapitel 10 – IPSec
Sicherheitsbetrachtung
39
• 4.Schritt:
• Da Cipher-Block-Chaining verwendet wird, kann der größte Teil
richtig entschlüsselt werden!
IT-Sicherheit – Kapitel 10 – IPSec
Sicherheitsbetrachtung
40
• Bruce Schneier, ein US-amerikanischer Experte für
Kryptographie und Computersicherheit sagt über IPSec:
„IPsec was a great disappointment to us. Given the
quality of the people that worked on it and the time that
was spent on it, we expected a much better result.“
IT-Sicherheit – Kapitel 10 – IPSec
Sicherheitsbetrachtung