Vorlesung Rechnernetze II Sommersemester 2007 Netzsicherheit (2) Christoph Lindemann Kurose/Ross Buch, Kapitel 8
Fahrplan Nr. 01 02 03 04 05 06 07 08 09 10 11 12 Datum 06.06. 06.06. 13.06. 13.06. 20.06. 20.06. 27.06. 27.06. 04.07. 04.07. 11.07. 11.07. Thema Sicherungsschicht (1) Sicherungsschicht (2) Leistungsbewertung von Rechnernetzen mit NS2 (1) Leistungsbewertung von Rechnernetzen mit NS2 (2) Netzsicherheit (1) Netzsicherheit (2) Drahtlose und mobile Netzwerke (1) Drahtlose und mobile Netzwerke (2) P2P Systeme und Mobile Ad-Hoc-Netze (1) P2P Systeme und Mobile Ad-Hoc-Netze (2) P2P Systeme und Mobile Ad-Hoc-Netze (3) P2P Systeme und Mobile Ad-Hoc-Netze (4) Netzsicherheit 8-47
Kapitel 8: Überblick 7.1 Was ist Netzsicherheit? 7.2 Grundlagen der Kryptographie 7.3 Authentifizierung 7.4 Integrität 7.5 Schlüsselverteilung und Zertifizierung 7.6 Zugangskontrolle: Firewalls 7.7 Angriffe und Gegenmaßnahmen 7.8 Sicherheit auf verschiedenen Schichten Netzsicherheit 8-48
Schlüsselverteilung Problem symmetrischer Schlüssel: Wie sollen die Schüssel zwischen den Kommunikationspartnern über ein (unsicheres) Netz ausgetauscht werden? Lösung: Key Distribution Center (KDC): Agiert als Mittler zwischen den Kommunikationspartnern Problem von Public- Keys: Woher weiß Alice, dass ein Public-Key tatsächlich von Bob ist und nicht von Trudy? Lösung: Zertifizierungsstelle (Certification Authority, CA) Netzsicherheit 8-49
Key Distribution Center (KDC) (1) Alice, Bob müssen gemeinsamen geheimen Schlüssel austauschen KDC: Server hat für jeden User unterschiedlichen geheimen Schlüssel K User-KDC Alice, Bob kennen jeweiligen Schlüssel K A-KDC K B-KDC zur Kommunikation mit dem KDC. KDC K P-KDC K B-KDC K K P-KDC A-KDC K X-KDC K Y-KDC K A-KDC K B-KDC K Z-KDC Netzsicherheit 8-50
Key Distribution Center (KDC) (2) F: Wie können sich Alice und Bob über KDC auf einen gemeinsamen symmetrischen Schlüssel einigen? K A-KDC (A,B) KDC generates R1 Alice kennt R1 K A-KDC (R1, K B-KDC (A,R1) ) K B-KDC (A,R1) Bob nutzt R1 um mit Alice zu kommunizieren Alice und Bob nutzen R1 als gemeinsamen symmetrischen Schlüssel für eine Kommunikations-Sitzung Netzsicherheit 8-51
Zertifizierungsstellen (1) Zertifizierungsstellen (CA): Ordnen Kommunikations- Teilnehmern Public-Keys zu Ein Kommunikations-Teilnehmer X (Person, Webserver, Router) registriert sein Public-Key P bei einer CA: X belegt seine Identität der CA (etwa durch Personalausweis) CA erzeugt Zertifikat, das X und P verknüpft Zertifikat wird von CA signiert. Aussage: Schlüssel P gehört zu X Feststellung von Bobs Identität Public Key von Bob K B + Digitale Signatur CA Private- Key K - CA K B + Zertifikat für Bobs Public Key, signiert von CA Netzsicherheit 8-52
Zertifizierungsstellen (2) Wenn Alice Public-Key von Bob benötigt: Erfragt Bobs Zertifikat (von Bob etc.). Anwendung des Public-Keys der CA auf Bobs Zertifikat, um Bobs Public-Key zu erhalten K B + Digitale Signatur K B + Bobs Public-Key CA public key K + CA Netzsicherheit 8-53
Kapitel 8: Überblick 7.1 Was ist Netzsicherheit? 7.2 Grundlagen der Kryptographie 7.3 Authentifizierung 7.4 Integrität 7.5 Schlüsselverteilung und Zertifizierung 7.6 Zugangskontrolle: Firewalls 7.7 Angriffe und Gegenmaßnahmen 7.8 Sicherheit auf verschiedenen Schichten Netzsicherheit 8-54
Firewalls Firewall Isoliert internes Netz einer Organisation vom Internet, indem bestimmte Pakete blockiert und andere Pakete durchgelassen werden Internes Netz Öffentliches Internet Firewall (Brandmauer) Netzsicherheit 8-55
Firewalls: Warum? Schutz vor Denial Of Service Angriffen: SYN flooding: Angreifer baut viele TCP-Verbindungen auf, damit andere Nutzer keine Verbindungen mehr aufbauen können Unerwünschte Zugriffe/Modifikation interner Daten verhinden Bsp.: Angreifer ersetzt CIA Homepage durch andere Inhalte Nur bestimmten Users/Hosts Zugriff auf internes Netz ermöglichen Zwei Arten von Firewalls: Auf Anwendungsschicht (Application Gateway) Auf Netzwerkschicht (Paket-Filter) Netzsicherheit 8-56
Paket-Filter Beispiel 1: Blockierung eingehender und ausgehender Pakete mit Protocol = 17 oder Zielport = 23. Ein- und ausgehende UDP-Übertragungen werden blockiert, Telnet-Sitzungen (TCP, Port 23) werden blockiert. Beispiel 2: Blockierung eingehender TCP- Verbindungen mit ACK=0. Verbindungsaufbau von externen zu internen Hosts nicht möglich, Verbindungsaufbau von internen zu externen Hosts möglich Netzsicherheit 8-57
Application Gateways HostA-zu-Gateway Telnet Verbindung Gateway-zu-HostB Telnet Verbindung Beispiel: Bestimmte Nutzer dürfen Telnet- Verbindungen nach außen aufbauen Application gateway Router und Filter 1. Alle Telnet-Nutzer müssen Gateway benutzen Telnet-Verbindung von HostA zu HostB unter Verwendung ein Application Gateaways 2. Für authorisierte Nutzer baut das Gateway ein Verbindung zum Zielsystem auf. Es bestehen 2 TCP-Verbindungen. (Quellsystem -> Gateway, Gateway -> Zielsystem) 3. Router blockiert alle Telnet-Verbindungen, die nicht vom Gateway ausgehen Netzsicherheit 8-58
Schwächen von Firewalls IP Spoofing: Router kann nicht festellen, ob Daten wirklich von angegebener IP- Adresse stammen Application Gateway für jedes Anwendungsprotokoll verschieden Software des Client muss Adresse von Gateway kennen Alles-Oder-Nichts- Strategie für UDP Tradeoff: Einschränkung der Kommunikationsmöglichkeiten Grad an Sicherheit Viele Systeme mit hoher Abschirmung werden weiterhin angegriffen Netzsicherheit 8-59
Kapitel 8: Überblick 7.1 Was ist Netzsicherheit? 7.2 Grundlagen der Kryptographie 7.3 Authentifizierung 7.4 Integrität 7.5 Schlüsselverteilung und Zertifizierung 7.6 Zugangskontrolle: Firewalls 7.7 Angriffe und Gegenmaßnahmen 7.8 Sicherheit auf verschiedenen Schichten Netzsicherheit 8-60
Angriffsmöglichkeiten (1) Mapping: Vor dem Angriff: Auskundschaften Welche Dienste und Hosts finden sich im angepeilten Netz Verwendung von ping, um Hosts zu finden Port-Scanning: TCP-Verbindung zu jedem möglichen Port aufbauen. Feststellen, ob Dienst läuft. nmap (http://www.insecure.org/nmap/) mapper: Nutzung auf eigene Gefahr Abwehrmaßnahmen? Netzsicherheit 8-61
Angriffsmöglichkeiten (2) Mapping: Abwehrmaßnahmen Datenverkehr im Netz mitschneiden Verdächtige Aktivitäten erkennen (Viele Pings, Viele Versuche für TCP-Verbindungsaufbau) Netzsicherheit 8-62
Angriffsmöglichkeiten (3) Packet Sniffing: Möglich bei geteiltem Medium MAC-Frames von Geräten im Subnetz mitscheiden Daten können direkt genutzt werden, wenn unverschlüsselt Bsp.: C schneidet Frames zwischen A und B mit A C src:b dest:a payload B Abwehrmaßnahmen? Netzsicherheit 8-63
Angriffsmöglichkeiten (4) Packet Sniffing (Abwehrmaßnahmen): Ein Host pro Netzsegment. Netzsegmente per Switch verbinden. Netzsicherheit 8-64
Angriffsmöglichkeiten (5) IP Spoofing: Pakete mit gefälschter IP-Adresse erzeugen Empfänger kann nicht festellen, ob IP-Adresse des Absenders gefälscht wurde Bsp.: C gibt vor, B zu sein A C src:b dest:a payload Abwehrmaßnahmen? B Netzsicherheit 8-65
Angriffsmöglichkeiten (6) IP Spoofing: Ingress Filtering Router (in Zugangsnetzen) sollten nur Pakete aus dem Zugangsnetz weiterleiten, die aus dem Adressbereich des jeweiligen Zugangnetzes stammen Problem: Lässt sich nicht von oben herab anordnen (Weltweit sehr viele ISP ) Netzsicherheit 8-66
Angriffsmöglichkeiten (7) Denial Of Service (DOS): Emfänger mit Paket überfluten und außer Betrieb setzen Verteilte DOS (DDOS): Angriff erfolgt von mehreren Quellen C und entfernter Rechner greifen A mit SYN- Attack an A C SYN SYN Abwehrmaßnahmen? SYN SYN SYN SYN SYN B Netzsicherheit 8-67
Angriffsmöglichkeiten (7) Denial Of Service (DOS): Abwehrmaßnahmen Ausfiltern: Geflutete Pakete (Bsp: mit SYN gesetzt) ausfiltern: Nicht eindeutig feststellbar, Pakete werden eventuell fälschlicherweise ausgefiltert Zurückverfolgen: Quelle der Pakete feststellen: Adresse der Pakete kann wiederum gespooft sein Netzsicherheit 8-68
Kapitel 8: Überblick 7.1 Was ist Netzsicherheit? 7.2 Grundlagen der Kryptographie 7.3 Authentifizierung 7.4 Integrität 7.5 Schlüsselverteilung und Zertifizierung 7.6 Zugangskontrolle: Firewalls 7.7 Angriffe und Gegenmaßnahmen 7.8 Sicherheit auf unterschiedlichen Schichten Sichere Email Sichere Sockets IPSec 802.11 WEP Netzsicherheit 8-69
Pretty Good Privacy (PGP) De-Facto Internet Standard zur Verschlüsselung von Emails Nutzt symmetrische Kryptographie und Public-Key Krypthographie, Hash- Funktionen und digitale Unterschriften (wie beschrieben) Bietet Geheimhaltung, Sender Authentifizierung, und Nachrichtenintegrität Erfinder: Phil Zimmerman war Ziel einer 3-jährigen Ermittlung der Bundespolizei Mit PGP signierte Nachricht: ---BEGIN PGP SIGNED MESSAGE-- - Hash: SHA1 Bob:My husband is out of town tonight.passionately yours, Alice ---BEGIN PGP SIGNATURE--- Version: PGP 5.0 Charset: noconv yhhjrhhgjghgg/12epj+lo8ge4vb3 mqjhfevzp9t6n7g6m5gw2 ---END PGP SIGNATURE--- Netzsicherheit 8-70
Secure Sockets Layer (SSL) (1) Sicherheit auf Ebene der Transportschicht (TCP) Wird zwischen Browser und Webservern (Ecommerce) genutzt (https://...). Dienste: Server Authentifizierung Datenverschlüsselung Client Authentifizierung (optional) Server Authentifizierung: SSL-fähiger Browser kennt Public-Keys von CAs Browser erfragt Zertifikat vom Server, das von einer CA ausgegeben wurde Browser nutzt Public-Key der CA um Public-Key des Servers aus Zertifikat zu extrahieren Welche CAs ein Browser kennt, lässt sich in den Sicherheiteinstellungen des Browser nachprüfen Netzsicherheit 8-71
Secure Sockets Layer (SSL) (2) Verschlüsselte SSL Sitzung: Browser erzeugt symmetrischen Sitzungsschlüssel, verschlüsselt diesen mit Public-Key des Servers und überträgt Ergebnis an Server Server entschlüsselt mit seinem Private-Key Browser und Server kennen nun den Sitzungsschlüssel Alle Daten, die über TCP- Socket gehen werden mit Sitzungsschlüssel verschlüsselt SSL: Basis der IETF Transport Layer Security (TLS). SSL kann auch für nicht-web Anwendungen (IMAP, ) genutzt werden Client Authentifizierung kann mittels Client Zertifikaten erfolgen Netzsicherheit 8-72
IPsec: Sicherheit auf Netzwerkschicht Geheimhaltung: Sendender Host verschlüsselt Nutzdaten des IP-Pakets Es werden nun TCP, UDP, ICMP, SNMP Daten verschlüsselt Authentifizierung Zielhost kann Quellhost authentifizieren Zwei mögliche Protokolle: Authentication Header (AH) Protokoll Encapsulation Security Payload (ESP) Protokoll AH und ESP führen Handshake zwischen Quelle und Ziel durch: Erzeugen eines logischen Kanals zwischen Quelle und Ziel: Security Aassociation (SA) SA ist unidirektional Eindeutigkeit durch: Protokoll (AH oder ESP) Quell-IP-Adresse 32-Bit Verbindungs ID Netzsicherheit 8-73
Authentication Header (AH) Protokoll Bietet Authentifizierung und Datenintegrität, keine Geheimhaltung (Daten können mitgelesen werden) AH Header wird zwischen IP-Header und Nutzdaten eingefügt Dazwischenliegende Router bearbeiten Paket wie gewöhnlich AH Header beinhalten: Verbindungs ID Authentifizierungs- Daten: Message Digest über Orginal IP-Paket (signiert von Quellhost) IP header AH header data (e.g., TCP, UDP segment) Netzsicherheit 8-74
ESP Protockoll Bietet Geheimhaltung, Authentifizierung und Datenintegrität Daten und ESP-Trailer sind verschlüsselt Next Header Feld in ESP Trailer Authentifiziert Verschlüsselt ESP Authentifizierungs- Feld ist ähnlich wie AH Authentifizierungs- Feld IP Header ESP header TCP/UDP Segment ESP trailer ESP authent. Netzsicherheit 8-75
IEEE 802.11 Sicherheit (1) War-driving: San-Francisco durchqueren und nach 802.11 Netzen suchen? Mehr als 9000 Netze von öffentlichen Straßen erreichbar 85% ohne Verschlüsselung/Authentifizierung Packet-Sniffing und andere Attacken leicht möglich! Wired Equivalent Privacy (WEP): Authentifizierung wie in Protokoll ap4 Host fordert Authentifizierung von Acces Point an AP antwort mit 128 Bit Zeichenkette S Host verschlüsselt S zu S mit gemeinsamen symmetrischen Schlüssel AP entschlüsselt S und authentifiziert Host Netzsicherheit 8-76
IEEE 802.11 Sicherheit (2) Wired Equivalent Privacy (WEP): Datenverschlüsselung Host/AP nutzen gemeinsamen 40 bit symmetrischen Schlüssel (semi-permanent) Host fügt 24-bit Initialisierungvektor (IV) an, 64- bit Schlüssel entsteht Mit 64 bit Schlüssel wird Schlüsselfolge k i IV erzeugt k i IV wird zur Verschlüsselung des i. Bytes d i im Frame genutzt: c i = d i XOR k i IV IV und verschlüsselte Bytes werden im Frame übertragen Netzsicherheit 8-77
802.11 WEP Verschlüsselung IV (per frame) K S : 40-bit secret symmetric key plaintext frame data plus CRC key sequence generator ( for given K S, IV) k 1 IV k 2 IV k 3 IV k N IV k N+1 IV k N+1 IV d 1 d 2 d 3 d N CRC 1 CRC 4 802.11 header IV WEP-encrypted data plus CRC c 1 c 2 c 3 c N c N+1 c N+4 Sender: Figure 7.8-new1: WEP Verschlüsselung 802.11 WEP protocol Netzsicherheit 8-78
Angriff auf 802.11 WEP Sicherheitsloch: 24-bit IV, ein IV pro Frame, -> IV wird eventuell mehrmals genutzt IV wird in Klartext übertragen -> IV Mehrfachnutzung erkennbar Angriff: Trudy zwingt Alice bekannten Klartext d 1 d 2 d 3 d 4 verschlüsselt zu senden Trudy kann mitlesen: c i = d i XOR k i IV Trudy kennt c i d i, kann k i IV berechnen Trudy kennt nun Schlüsselfolge k 1 IV k 2 IV k 3 IV Wird IV wieder benutzt, kann Trudy entschlüsseln Netzsicherheit 8-79
Zusammenfassung: Netzsicherheit Grundlegende Konzepte... Kryptographie (symmetrisch und Public-Key) Authentifizierung Nachrichtenintegrität Schlüsselverteilung. Verwendung in unterschiedlichen Schichten Anwendungsschicht (PGP: Email) Transportschicht (SSL: HTTPS, ECommerce) Netzwerkschicht (IP sec) Sicherungsschicht (802.11 WEP) Netzsicherheit 8-80