(entfällt) schlecht (spezielle Clients) Server-basiert schlecht gut HSM gut gut Smartcard gut schlecht gut schlecht anwendungsspezifisch sehr gut sehr gut USB-Token eingeschränkt gut Java Key-Store PKCS#12 Kompatibilität Portabilität sehr gut gut gut gut eingeschränkt gut gut gut sehr gut sehr gut sehr gut schlecht schlecht schlecht Verfügbarkeit Zugriffsschutz Eigenschaften von Tokens TU Darmstadt FG Theoretische Informatik Prof. J. Buchmann Sichere Aufbewahrung privater Schlüssel Public Key Infrastrukturen 4 Mit MAC signiert und kann vom Empfänger verifiziert werden. ¾ Password Integrity Mode: Mit privatem Schlüssel signiert und kann vom Empfänger verifiziert werden. ¾ Public Key Integrity Mode: Mit symmetrischem Schlüssel verschlüsselt, der von einem Passwort abgeleitet wurde. ¾ Password Privacy Mode: Mit symmetrischem Schlüssel verschlüsselt, der mit einem öffentlichem Schlüssel des Empfängers verschlüsselt ist. ¾ Public Key Privacy Mode: Modi für die gesicherte Übertragung: PKCS#12: Modi – Private Schlüssel – Operationen, die den Priv. Schlüssel verwenden – Vertrauensanker • Abstrakte Modellierung der Tatsache, dass manche Objekte und Berechnungen in einer sicheren Umgebung des Teilnehmers stattfinden müssen: Personal Security Environment (PSE) 5 2 PKCS#12 anwendungsspezifisch ContentInfo Enveloped data Encrypted Data Plain Data PKCS#12: Struktur Smartcard in Hardware USB-Token Server-basiert („hybrid“) (Netscape,Windows) AuthenticatedSafe Java Key-Store in Software sichere Aufbewahrung privater Schlüssel Realisierung von PSEs : Tokens 6 3 Hardware Security Module (HSM) Standard Algorithmen Starke Verschlüsselung Teil der JCE (Java Cryptography Extensions) Seit Java 1.4, aber nicht Bestandteil der Standardklassen1 ¾ Schlüssel werden bei Gefahr zerstört! ¾Chemische Angriffe ¾Manipulation der elektrischen Spannung ¾Temperatur Angriffen ¾Mechanischen Angriffen ¾ Schützen die Schlüssel vor Hardware Security Module ¾ Einfache Verwaltung mit Keytool ¾ ¾ ¾ ¾ ¾ JCEKS ¾ Proprietäre Algorithmen ¾ Schwache Verschlüsselung ¾ JKS Implementation of the Keystore Class Java Keystores 10 7 ¾Anzahl der Schlüssel begrenzt ¾ z.B. Mechanische Einwirkungen beim Transport werden ¾Schlüsseln können versehentlich zerstört Aber... Hardware Security Module Windows ¾ Internet Explorer,Outlook/Express ¾ Standard-Implementierung proprietär ¾ Durch Cryptographic Service Provider ¾ Importformat PKCS#12 Netscape Familie ¾ Mozilla, Firefox, Thunderbird ¾ Durch Software Security Module ¾ Standard-Implementierung proprietär ¾ Importformat PKCS#12 Anwendung Spezifisch 11 8 Smartcards ¾ Entschlüsselung ¾ Erstellung digitaler Signaturen ¾ Schlüsselgenerierung (nicht alle) Nutzung ¾Sichere Schlüssel Aufbewahrung und Verfahren ¾ Beschleunigung der kryptographischen ¾ Schlüsselarchivierung ¾ Erstellung digitaler Signaturen ¾ Schlüsselgenerierung ¾ Zufallszahlengenerierung ¾ Sichere Aufbewahrung und Nutzung der Schlüssel Hardware Security Module 12 9 ¾Null-PIN Verfahren (Patentiert) ¾3 Schlüsselpaare vorbeschlüsselt ¾NetKey Applikation ¾Vorbeschlüsselt mit einem Schlüsselpaar nach SigG ¾SigG Applikation ¾ Einhaltung der Sicherheitsbeschränkungen ¾ kontrolliert ¾ Ausführung der Applets ¾ Kommunikation mit den Außenwelt ¾ Ressourcen der Karte ¾ verwaltet: ¾ JCRE (Java Card Runtime Environment) ¾Globale Files (Serienummer, etc.) Java Cards ¾ Keine Dateisystem Struktur sondern Applets 16 13 ¾ Certificate ¾ PublicKey ¾ PrivateKey ¾ Zeiger auf kryptographische Objekte (ODF) Applikation ¾ Verzeichnis auf der Karte entspricht Struktur auf der Karte gespeichert Zugriff über PKCS#15 ¾E4 evaluiert (nach ITSEC) E4 NetKey (TeleSec) Schnittstelle zur Karte Unterstützt die Funktionen: ¾ Change PIN ¾ Sign ¾ Decrypt ¾ Write Certificate Aber: ¾ Kartenstruktur und Fähigkeiten der Karte und des Lesers fest in der PKCS#11-Bibliothek kodiert ¾ Eine Bibiliothek für jede Kombination von Karte und Leser Zugriff über PKCS#11 17 14 PrKDF CDF ADF TokenInfo Nutzdaten EF (DIR) Weitere DFs/EFs ¾ Garbage Collector muss nicht vorhanden sein ¾ Sicherheitsmanager ¾ Dynamische Laden von Klassen (wie bei Treibern) ¾ Object Serialisation und cloning ¾ Threads ¾ Mehrdimensionale Arrays ¾ Characters and Strings ¾ Kein long, double, float Wie normaler Java code aber.... Java Cards Zeiger auf PrivateKey Data, Certificate Data, Authentication Data (PIN) und Token Information (Seriennummer) ODF Descriptor DF(PKCS#15) MasterFile Aufbau PKCS#15 18 15 • • • • • • • • • • Vereinfachtes Schichtenmodell Sichere Internetkommunikation WWW Email Programmcode Virtual Privat Networks Datei- und Datenbank-Sicherheit Wireless LAN Elektronisches Büro Elektronische Verwaltung Medizinischer Bereich Einsatz von PKIs 22 19 1 2 3 4 5 Physical Layer Bitübertragungsschicht Data Link Layer Sicherungsschicht Network Layer Vermittlungsschicht Transport Layer Transportschicht Application Layer Anwendungsschicht Bitübertragungsschicht Anwendungsszenarien 23 20 Physical Layer Bitübertragungsschicht Data Link Layer Sicherungsschicht Network Layer Vermittlungsschicht Transport Layer Transportschicht Application Layer Anwendungsschicht – – – – Koaxialkabel Twisted Pair Funkverbindung Optische Leiter • Beispiele: – Dateneinheit: Bit – Übertragungsfehler (Verlust, Einfügung, Änderung von Bits, aber keine Reihenfolgefehler) • Datenstrom zwischen 2 Nachbarn Bitübertragungsschicht 1 2 3 4 5 Vereinfachtes Schichtenmodell 24 21 1 2 3 4 5 Physical Layer Bitübertragungsschicht Data Link Layer Sicherungsschicht Network Layer Vermittlungsschicht Transport Layer Transportschicht Application Layer Anwendungsschicht Sicherungsschicht • Daten als elektrische Impulse • Mehradriges Kupferkabel Twisted Pair 28 25 – – – – HDLC Token Ring Ethernet PPP • Beispiele: – Flusssteuerung • Reihenfolge und Integrität (in Grenzen) gewahrt – Dateneinheit: Frame – Fehlererkennung und –korrektur(CRC) • Datenaustausch zwischen vielen Nachbarn Sicherungsschicht – Abstrahlung – Man In The Middle • Angreifer belauscht die Leitung Bit-Sniffing 29 26 • Genau ein Weg zwischen zwei Stationen • Carrier Sense Multiple Access • Collison Detection Beispiel: Ethernet – Muss umverschlüsseln – Kennt alle Klartexte Sicherung auf darüberliegender Schicht Aber: Kommunikation über Zwischenknoten Einsatz einer Stromchiffre Abwehr von Bit-Sniffing 30 27 1 2 3 4 5 Physical Layer Bitübertragungsschicht Data Link Layer Sicherungsschicht Network Layer Vermittlungsschicht Transport Layer Transportschicht Application Layer Anwendungsschicht Vermittlungsschicht Beispiel: Ethernet 34 31 Aufbau von Frame bis TCP – IP – IPX – X.25 • Beispiele: 35 32 Zusammengesetzte Pakete der höheren Protokollebenen – Dateneinheit: Paket – Einfügung (Verdopplung), Reihenfolgefehler und Verlust möglich • Datenaustausch über LAN-Grenzen Vermittlungsschicht Mitlauschen aller Frames z.B. Ethereal: Frame-Sniffing • • • • IP-Packet Internet Protokoll Header und Payload Verteiltes Routing mittels Tabellen Fragmentierung Beispiel: IP Routing-Tabelle Sicherung auf darüber liegender Schicht • muss umverschlüsseln • sieht alle Klartexte – Aber: Bridge • Verschlüsselte Frames – Aber: Überlast hebelt Switcht aus (Flooding) • Geswitchtes Netz Abwehr von Frame-Sniffing 36 33 01 • Angreifer gibt vor, der Empfänger zu sein IP-Spoofing 01 • Angreifer lauscht IP-Pakete ab • Ideal: Am Sender- bzw Empfänger-Gateway Packet-Sniffing 40 37 IPsec: Authentication Header IPsec: Encapsulated Security Payload 41 38 1 2 3 4 5 Physical Layer Bitübertragungsschicht Data Link Layer Sicherungsschicht Network Layer Vermittlungsschicht Transport Layer Transportschicht Application Layer Anwendungsschicht Transportschicht 01 • Angreifer versendet IP-Pakete mit falscher Absender-Adresse IP-Spoofing 42 39 Absicherung mit SSL / TLS 2 3 3 2 2 2 2 2 vertraulich unverändert datiert 2 authentisch verbindlich https (SSL/TLS) 3 (meist nur Server) http Sicherheitsziel • MACs zur Integritätssicherung • Key Exchange für symmetrische Datenverschlüsselung • Server- und Client-Authentisierung • Wrapper um TCP (zur Anwendungschich hin) SSL/TLS: – RSVP – UDP – TCP • Beispiele: – Dateneinheit: Datagramme oder Streams – Zuverlässiger Datentransport von Quelle zu Ziel (Anwendung zu Anwendung) – Unabhängig von physischem Netz • Datenstrom zwischen entfernten Applikationen Transportschicht 46 43 Nutzdaten (verschlüsselt) Schlüsselaustausch Serverauthentisierung Hallo! Ablauf SSL/TLS (sehr vereinfacht): SSL / TLS • Garantiert Reihenfolge und Prüft auf Übertragungsfehler (CRC) • Anwendungen lauschen auf Ports • Portnummern < 1024 sind reserviert TCP 142.254. 112.17 47 44 HTTP, Port #80 DNS, Port #42 FTP, Port #20 Telnet, Port #23 DNS, Port #42 SMTP, Port #25 1 2 3 4 5 Physical Layer Bitübertragungsschicht Data Link Layer Sicherungsschicht Network Layer Vermittlungsschicht Transport Layer Transportschicht Application Layer Anwendungsschicht Anwendungsschicht TCP Email-Client 48 45 File-Transfer (FTP-Data, Port #21) WWW-Browser HTTP-Sniffing 142.254. 112.17 www.my-bank.de get Kontostand.html Angriffsmöglichkeiten: 1. DNS kompromittieren 2. Lauschen Æ Verschlüsselung (SSL/TLS) – HTTP – FTP – POP • Beispiele: 49 23.17. 34.16 ? 52 142.254.112.17 named – Dateneinheit, Flußkontrolle, Fehlerkontrolle obliegt den jeweiligen Applikationen • Applikationsspezifische Protokolle Anwendungsschicht Web Security http://142.254.112.17/Kontostand.html http://www.my-bank.de/Kontostand.html DNS-spoofing Webprotokolle DNS und http: 142.254. 112.17 www.my-bank.de get Kontostand.html Aktionen des Browsers: 1. DNS-Anfrage 2. http-Request named 142.254.112.17 eavesdropping http://www.my-bank.de/Kontostand.html WWW: Online-Banking 53 50 Web Security •… • Ergebnisabfrage • Anmeldung • Prüfungsverwaltung • Webmail • Online-Handel • Home-Banking Anwendungsbeispiele: 142.254. 112.17 www.my-bank.de get Kontostand.html 23.17. 34.16 54 51 142.254.112.17 23.17.34.16 named Angriffsmöglichkeiten: 1. DNS kompromittieren (DNS-Spoofing) Æ Serverauthentifizierung DNS-Spoofing A lice’ C om puter M odem M X -Server R outer – Versender „kennt“ Mailserver – Mailserver „kennt“ Versender – SSL: Mittel der Wahl (wenn vom Mailclient unterstützt) H ub B ob’s Laptop Bo b 58 55 Lesen und speichern auf der Festplatte B ob’s P ostfach P O P 3-Server Bob’s Em ail-P rovider „C ryptoM ail“ (nur E m pfangsteil) W ilhelm inenstraße (Funklan und N etzdosen) Bewertung Abholen über POP3 C ryptom ail’s B ackupm ailserver Internet Versand über SMTP Email-Sicherheit • Absicherung einfach möglich M ailserver A lice’ E m ail-Provider (nur Sendeteil) Versand über SMTP A li c e Schreiben und speichern auf der Festplatte Nicht vom Benutzer kontrollierbar Keine Garantien Mailserver „kennen“ sich i.d.R. nicht! Authentifizierung schwieriger ZUSÄTZLICH: Eigenschaften wie Email-Versand Transport (SMTP) Alice‘ Mailservero Bobs Mailserver: – Mitlauschen – Verändern • Klartextprotokoll – Versand unter anderem Namen – SPAM-Mails • Applikationsspezifisches Protokoll (basiert auf TCP, Port 25) • Keine Authentifizierung Email-Versand (SMTP) Alice‘ PC o Alice‘ Mailserver 59 56 – Passwörter mitlesbar unberechtigter Zugriff auf Postfach – Emails lesbar Mitlesen und Verändern von Emails • Applikationsspezifisches Protokoll (TCP, Port 110) • Klartext-Protokoll Email-Abholung (POP3) Bobs Mailservero Bobs PC: – SMTP over SSL • Vertraulichkeit: – SMTP nach POP – Passwort (Klartext) – Passwort-Hashes (z.B. Simple Authentication and Security Layer, SASL) – SMTP over SSL (mit Client-Authentication) • Authentizität: Absicherung 60 57 mehr Sicherheit S/MIME MIME – Emails + hybride Verschlüsselung + digitale Signatur – POP over SSL • Vertraulichkeit – Passwort-Hashes – POP over SSL (mit Client-Authentication) • Authentizität Absicherung mehr Sicherheit 64 61 verschlüsselte Email: Vertraulichkeit signierte Email: Integrität Authentizität Verbindlichkeit S/MIME während der gesamten Lebensdauer der Email – Benutzer „kennt“ Postfach-Server – Postfach-Server „kennt“ Benutzer – SSL: Mittel der Wahl (wenn vom Mailclient unterstützt) Absicherung gut möglich: Bewertung 65 62 Alice’ Computer Modem Mailserver Alice’ Email-Provider (nur Sendeteil) A li c e MX-Server Bob’s Postfach POP3-Server Cryptomail’s Backupmailserver Router Hub Bob’s Laptop Bo b Im Netz: ungeschützte Kopien „Man in the Middle“-Angriffe „Malicious Hosts“ W ilhelminenstraße (Funklan und Netzdosen) Internet E-Mail an sich ist nicht authentisch, nicht verbindlich, nicht vertraulich. Bob’s Email-Provider „CryptoMail“ (nur Empfangsteil) Noch nicht gelöste Probleme 63