Vorlesung Sicherheit



Ähnliche Dokumente
Vorlesung Sicherheit

Vorlesung Sicherheit

Vorlesung Sicherheit

Vorlesung Sicherheit

Vorlesung Sicherheit

Vorlesung Sicherheit

Vorlesung Sicherheit

Kryptographische Verfahren auf Basis des Diskreten Logarithmus

ElGamal Verschlüsselungsverfahren (1984)

9 Schlüsseleinigung, Schlüsselaustausch

IT-Sicherheit Kapitel 11 SSL/TLS

Vorlesung Sicherheit

Verteilte Systeme. Übung 10. Jens Müller-Iden

Erste Vorlesung Kryptographie

Verteilte Systeme Unsicherheit in Verteilten Systemen

HTTPS Checkliste. Version 1.0 ( ) Copyright Hahn und Herden Netzdenke GbR

Beweisbar sichere Verschlüsselung

Informatik für Ökonomen II HS 09

10. Public-Key Kryptographie

Grundlagen der Verschlüsselung und Authentifizierung (2)

Grundlagen der Theoretischen Informatik, SoSe 2008

Homomorphe Verschlüsselung

Diffie-Hellman, ElGamal und DSS. Vortrag von David Gümbel am

Secure Sockets Layer (SSL) Prof. Dr. P. Trommler

FL1 Hosting Technische Informationen

Sichere mit OpenPGP und S/MIME

Beweisbar sichere Verschlüsselung

Kryptographie eine erste Ubersicht

Externe Abfrage von für Benutzer der HSA über Mozilla-Thunderbird

Reale Nutzung kryptographischer Verfahren in TLS/SSL

Verschlüsselung. Chiffrat. Eve

Digitale Unterschriften Grundlagen der digitalen Unterschriften Hash-Then-Sign Unterschriften Public-Key Infrastrukturen (PKI) Digitale Signaturen

Primzahlen und RSA-Verschlüsselung

Electronic Systems GmbH & Co. KG

Anleitung über den Umgang mit Schildern

Erstellen von x-y-diagrammen in OpenOffice.calc

Grundlagen, Geschichte, Anwendung

U3L Ffm Verfahren zur Datenverschlüsselung

Heartbleed beats hard

Programmiertechnik II

Einrichtung einer eduroam Verbindung unter dem Betriebssystem Android

Sicherheit von hybrider Verschlüsselung

-Zertifikatsverwaltung

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

ecaros2 - Accountmanager

Sichere Anleitung Zertifikate / Schlüssel für Kunden der Sparkasse Germersheim-Kandel. Sichere . der

STRATO Mail Einrichtung Mozilla Thunderbird

Benutzerhandbuch - Elterliche Kontrolle

FTP-Leitfaden RZ. Benutzerleitfaden

Asymmetrische. Verschlüsselungsverfahren. erarbeitet von: Emilia Winkler Christian-Weise-Gymnasium Zittau

Internet online Update (Mozilla Firefox)

So geht s Schritt-für-Schritt-Anleitung

Matrix42. Use Case - Sicherung und Rücksicherung persönlicher Einstellungen über Personal Backup. Version September

Erweiterung AE WWS Lite Win: AES Security Verschlüsselung

Technische Informationen zum Webmail, bereitgestellt durch den Landesverband der Freiwilligen Feuerwehren Südtirols.

Sicherheit in Ihren Online Meetings. Kontrollmöglichkeiten und Sicherheitsmechanismen.

A. Ersetzung einer veralteten Govello-ID ( Absenderadresse )

Zwischenablage (Bilder, Texte,...)

Botnetzmonitoring Waledac

Ein Hinweis vorab: Mailkonfiguration am Beispiel von Thunderbird

SSL/TLS Sicherheit Warum es sich lohnt, sich mit Ciphersuites zu beschäftigen

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

TLS ALS BEISPIEL FÜR EIN SICHERHEITSPROTOKOLL

Güte von Tests. die Wahrscheinlichkeit für den Fehler 2. Art bei der Testentscheidung, nämlich. falsch ist. Darauf haben wir bereits im Kapitel über

etoken mit Thunderbird verwenden

Alice & More Anleitung. GigaMail.

Effizienten MAC-Konstruktion aus der Praxis: NMAC Idee von NMAC:

MSXFORUM - Exchange Server 2003 > SMTP Konfiguration von Exchange 2003

Merkblatt: Sichere -Kommunikation zur datenschutz cert GmbH

D a s P r i n z i p V o r s p r u n g. Anleitung. - & SMS-Versand mit SSL (ab CHARLY 8.11 Windows)

Konfigurieren mit Outlook Express (Windows XP) oder Windows Mail (Windows Vista / Windows 7)

Stammtisch Zertifikate

Einrichten eines Postfachs mit Outlook Express / Outlook bis Version 2000

Hinweise für die Online- Dienste der Studierenden

E Mail Versand mit der Schild NRW Formularverwaltung

Mail-Signierung und Verschlüsselung

Voll homomorpe Verschlüsselung

Verein zur Förderung der privaten Internet Nutzung e.v. Sicher bewegen im Internet

Professionelle Seminare im Bereich MS-Office

Lizenzierung von SharePoint Server 2013

Transport Layer Security Nachtrag Angriffe

Inhalt. Seminar: Codes und Kryptographie

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: MORE Projects GmbH

TeleTrusT-Informationstag "IT-Sicherheit im Smart Grid"

Konfiguration von Igel ThinClients fu r den Zugriff via Netscaler Gateway auf eine Storefront/ XenDesktop 7 Umgebung

Secure Socket Layer V.3.0

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

STRATO Mail Einrichtung Microsoft Outlook

6.2 Scan-Konvertierung (Scan Conversion)

Korrelation (II) Korrelation und Kausalität

Einrichtung von Mozilla Thunderbird

NAT & VPN. Adressübersetzung und Tunnelbildung. Bastian Görstner

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer

2 Wie sicher ist mein Passwort? *

Hilfedatei der Oden$-Börse Stand Juni 2014

ISA Server 2004 Erstellen einer Webverkettung (Proxy-Chain) - Von Marc Grote

Geld Verdienen im Internet leicht gemacht

Viele Bilder auf der FA-Homepage

Bedienungsanleitung: Onlineverifizierung von qualifiziert signierten PDF-Dateien

Bernd Blümel. Verschlüsselung. Prof. Dr. Blümel

Transkript:

Vorlesung Sicherheit Dennis Hofheinz IKS, KIT 03.06.2013 1 / 34

Überblick 1 Schlüsselaustauschprotokolle Motivation Symmetrische Verfahren Asymmetrische Verfahren Transport Layer Security (TLS) 2 / 34

Überblick 1 Schlüsselaustauschprotokolle Motivation Symmetrische Verfahren Asymmetrische Verfahren Transport Layer Security (TLS) 3 / 34

Motivation Ziel: gemeinsamen geheimen Schlüssel K aushandeln Alice Bob Kommunikationskanal unsicher, aber K soll geheim bleiben Verschiedene Szenarien denkbar: Altes K schon vorhanden (frisches K gewünscht) Secret-Key-Infrastruktur (mit Schlüsselzentrale) Alice hat K A, Bob hat K B, Schlüsselzentrale kennt K A und K B Public-Key-Infrastruktur pk A und pk B öffentlich, Alice kennt sk A, Bob kennt sk B Alice und Bob haben gemeinsames Passwort Alice und Bob haben keine weiteren Informationen Prinzipbedingt unsicher gegen aktive Angriffe 4 / 34

Überblick 1 Schlüsselaustauschprotokolle Motivation Symmetrische Verfahren Asymmetrische Verfahren Transport Layer Security (TLS) 5 / 34

Symmetrische Verfahren Szenario mit Schlüsselzentrum KC: Alice KA Bob KB Key Center (KC) KA,K B Alice kennt K A, Bob kennt K B, KC kennt K A und K B Kommunikation mit KC möglich, soll aber minimiert werden Werkzeug der Wahl: symmetrische Verschlüsselung (Enc, Dec) Grund: Effizienz, Lösungen allein mit (Enc, Dec) möglich 6 / 34

Symmetrische Verfahren Szenario: Alice KA Bob KB Key Center (KC) KA,K B Frage: wie könnte Lösung aussehen? 7 / 34

Kerberos Sehr gängig: Kerberos (im folgenden ursprüngliches Protokoll) 1 Alice 2 KC (Alice,Bob) KC Enc(K A,(T KC,L,K,Bob)), Enc(K B,(T KC,L,K,Alice)) Alice Hier T KC Zeitstempel, L Gültigkeitsdauer, K frischer Schlüssel Enc(K,(Alice,T A )), Enc(K B,(T KC,L,K,Alice)) 3 Alice Bob Hier T A Zeitstempel 4 Bob Enc(K,T A +1) Alice 8 / 34

Eigenschaften von Kerberos Geschachtelte Struktur verhindert Man-in-the-Middle-Angriffe Zeitstempel/Gültigkeitsdauern verhindern Replay-Angriffe Aber: aktiv sichere Verschlüsselung nötig! Sicherheit von Kerberos nicht formal geklärt 9 / 34

Eigenschaften von Kerberos Wichtig: Kerberos authentifiziert Alice und Bob auch Reales Kerberos hauptsächlich zur Authentifizierung genutzt Kerberos-Standard/-Implementierung historisch zur Single-Sign-On-Lösung gewachsen (Quelle: wikipedia.org) 10 / 34

Überblick 1 Schlüsselaustauschprotokolle Motivation Symmetrische Verfahren Asymmetrische Verfahren Transport Layer Security (TLS) 11 / 34

Asymmetrische Verfahren Szenario: Public-Key-Infrastruktur (pk A, pk B öffentlich) Alice ska Bob skb Schlüsselgenerierung von Parteien selbst vorgenommen Schlüsselverteilung/-zertifizierung als gegeben angenommen Frage: Wie könnte man hier Schlüssel austauschen? 12 / 34

Public-Key Transport Szenario: Public-Key-Infrastruktur (pk A, pk B öffentlich) Alice ska Bob skb Werkzeug: Public-Key-Verschlüsselung (Gen, Enc, Dec) Schlüsselpaare mittels Gen generiert Basisverfahren überaus simpel: 1 Alice Enc(pk B,K) Bob (mit K von Alice frisch gewählt) 13 / 34

Eigenschaften von Public-Key Transport C:=Enc(pk Alice B,K) ska Bob skb Erzielt so nur passive Sicherheit Replay-Angriff möglich (wiederhole C) (Ist das überhaupt ein Angriff?) Nicht authentifiziert (wenn Kanal nicht authentifiziert) Allerdings passive Sicherheit erreicht Passive Sicherheit : nur lauschender A (hier: der C erhält) kann K nicht von Zufall unterscheiden (genaues Modell lässt A mehrere Sitzungen beobachten) PKE-Verfahren IND-CPA Schlüsselaustausch passiv sicher 14 / 34

Eigenschaften von Public-Key Transport C:=Enc(pk Alice B,K) ska Bob skb Kann durch zusätzliche Signatur authentifiziert werden: Alice skpke,a, sk Sig,A (C:=Enc(pk PKE,B,K), σ=sig(sk Sig,A,C)) Bob skpke,b, sk Sig,B Allerdings immer noch anfällig z.b. für Replay-Angriffe 15 / 34

Diffie-Hellman-Schlüsselaustausch Basisschema sehr ähnlich zu ElGamal (G = g gegeben) g x 1 Alice Bob g 2 Bob y Alice 3 Gemeinsamer Schlüssel: K = g xy = (g y ) x = (g x ) y Diffie-Hellman (1976) lange vor ElGamal (1985), erstaunlich Passiv sicher unter geeigneter zahlentheoretischer Annahme Wird durch Signieren aller Nachrichten authentifiziert Allerdings immer noch anfällig z.b. für Replay-Angriffe 16 / 34

Geeignete formale Modelle Geeignetes Modell für Schlüsselaustausch nichttrivial Komplexes Szenario: viele Parteien, viele Sitzungen pro Partei Angreifer passiv oder aktiv? Was darf ein aktiver Angreifer genau? In der Realität subtile Angriffe (?) möglich (später mehr) Reales Netzwerk (TCP/IP) spezifisch und komplex Wie können einzelne Sitzungen unterschieden werden (SIDs)? Zahlreiche verschiedene theoretische Modelle Deshalb hier kein abstraktes Sicherheitsmodell 17 / 34

Überblick 1 Schlüsselaustauschprotokolle Motivation Symmetrische Verfahren Asymmetrische Verfahren Transport Layer Security (TLS) 18 / 34

Motivation für TLS Problem: http, imap, smtp, ftp,... ungeschützt Interneteinkauf, Mailabholung/-transport, Dateitransfer Mögliche Lösung: auf höherer Protokollebene sichern E-Mail verschlüsseln/signieren Aufpassen: alles verschlüsseln/signieren! (Nur Kreditkartendaten verschlüsseln könnte Manipulation erlauben) Besser: Universelle Lösung auf Transportebene 19 / 34

Transport Layer Security (TLS) TLS: Protokoll für den Aufbau und Betrieb sicherer Kanäle Zuerst authentifizierter asymmetrischer Schlüsselaustausch...... danach symmetrische Verschlüsselung der Nutzdaten Renegotiation ( Neuaushandlung des Schlüssels) möglich Viele Algorithmen möglich (RSA/DH, 3DES/AES/RC4,... ) Problem: viele Kombinationen von Algorithmen/Varianten Aktuell Standard (OpenSSL/GnuTLS, https, imaps,... ) 20 / 34

TLS Handshake (Schlüsselaustauschprotokoll) (Quelle: wikipedia.org) 21 / 34

TLS Handshake (Schlüsselaustauschprotokoll) 22 / 34

TLS Handshake (Schlüsselaustauschprotokoll) 23 / 34

Geschichte von TLS Vorläufer SSL von TLS: SSL 1.0 (1994) von Netscape für Mosaic-Browser SSL 3.0 (1996) komplette Überarbeitung TLS aus SSL hervorgegangen: TLS 1.0 (1999) SSL 3.0, erstmals in Windows 98 (SE) TLS 1.1 (2006) und TLS 1.2 (2008) noch nicht gut unterstützt (< 20% aller Browser unterstützen TLS > 1.0, aber > 98% TLS 1.0) Geschichtliche Einordnung (erfolgreiche Musik/Kinofilme): 1994: Hyper Hyper (Scooter), Pulp Fiction 1996: Wannabe (Spice Girls), Independence Day 1999: Baby One More Time (Britney Spears), Star Wars I Am häufigsten benutzte SSL/TLS-Versionen sehr alt 24 / 34

Demo: Browserunterstützung Demo: https://cc.dcsec.uni-hannover.de/ (Welche TLS-Version unterstützt mein Browser?) 25 / 34

Sicherheit von TLS Viele Patches (im Hinblick auf Angriffe) für konkrete Implementierungen Nach heutiger Kenntnis (in neuester Version, mit Patches, mit richtigen Parametern/Algorithmen betrieben!) sicher In idealen Modellen (ideale Verschlüsselung) sicher Bedeutet, dass TLS-Verbindung so sicher wie sicherer Kanal Allerdings: Einige Angriffe (folgend) widersprechen dem nicht Aber: Angriffe auf konkrete Varianten/Kombinationen 26 / 34

Angriffe auf TLS Einige konkrete Angriffe auf TLS(-Varianten): ChangeCipherSpec Drop (1996, auf SSL < 3.0) Angriff auf schwaches RSA-padding (1998, auf SSL) CRIME (2002/2012, bei eingeschalteter Komprimierung) TLS Renegotiation Attack (2009) BEAST (2011, auf chained IVs im CBC-Mode, TLS< 1.1) Angriff auf RC4 (2013, braucht viele Sessions) Lucky 13 (2013, Angriff auf CBC, braucht viele Sessions) Problem: TLS gibt aus, warum Dec fehlschlägt 27 / 34

Angriffe auf TLS Deshalb: Aktuelle TLS-Version (1.1/1.2, mit Patches) benutzen Kompression ausschalten RC4 nicht benutzen (d.h. als Möglichkeit entfernen) AES in nicht-cbc-modus benutzen (z.b. AES-GCM) 28 / 34

Transport Layer Security (TLS) (Quelle: wikipedia.org) 29 / 34

Beispielangriff: ChangeCipherSpec Drop Beobachtung: Handshake-Ablauf bei SSL <3.0: 1 Client und Server tauschen unverschlüsselt Informationen aus (public keys, CipherSuite-Präferenz, Sitzungsnummer, Authentifikation) 2 Client sendet ChangeCipherSpec (mit Parametern), um auf verschlüsselte Kommunikation umzuschalten 3 Client und Server senden Finished und beenden Handshake Angenommen, Server sendet sofort danach Nutzdaten Angriff: aktiver Angreifer unterdrückt ChangeCipherSpec Konsequenz: Server sendet Nutzdaten unverschlüsselt Fix: zusätzliche Bestätigung von Client vor Nutzdaten 30 / 34

Beispielangriff auf RSA-Padding Beobachtung: von SSL zum Key Transport genutzte RSA-Variante berechnet C = Enc(pk, pad(m)) = (pad(m)) e mod N mit schlechtem (d.h. naivem) Padding (PKCS#1.5) Angriff auf schlechtes Padding seit 1998 bekannt Idee: verändere C homomorph, beobachte, ob verändertes C noch als gültig akzeptiert wird Allein aus Gültigkeit lässt sich Information über M ableiten Benötigt viele (mehrere Tausend) Versuche 31 / 34

Beispielangriff auf RSA-Padding (konkreter) Konkreteres PKCS#1.5-Padding (vereinfacht): C = pad(k) e = (0x0002 rnd 0x00 K) e mod N K wird kurz sein (und immer mit vielen Nullbits anfangen) Ziel: finde viele gültige Faktoren α i, so dass Dec(α e i C mod N) = α i (0x0002 rnd 0x00 K) mod N } {{ } =:M i gültig ist (so dass M i mit 0x0002 beginnen muss) 32 / 34

Beispielangriff auf RSA-Padding (konkreter) Ziel: finde viele gültige Faktoren α i, so dass Dec(α e i C mod N) = α i (0x0002 rnd 0x00 K) mod N } {{ } =:M i gültig ist (so dass M i mit 0x0002 beginnen muss) Gültigkeit wird mit Injizieren von αi e C mod N überprüft In alten SSL-Versionen sagt Server RSA-Padding falsch oder Key K zu groß, sagt also, ob Padding gültig Viele gültige M i grobes Intervall, in dem K liegt Liefert 1-Bit-Guckloch in K 33 / 34

Beispielangriff auf RSA-Padding (konkreter) Bedeutendes theoretisches Resultat: jedes Klartextbit von RSA ist hardcore Theorem (Håstad und Näslund) Sei N, e, d wie bei RSA, und M Z N und i {1,..., log 2 (N) } beliebig. Sei O ein Orakel, das bei Eingabe C das i-te Bit von M = C d mod N ausgibt. Dann existiert ein (von N, e, d unabhängiger) Polynomialzeit-Algorithmus, der bei Eingabe N, e, i und C := (M ) e mod N, und mit O-Zugriff M berechnet. Bricht (mit Anpassungen) PKCS#1.5 (auch in TLS) Gewählte Gegenmaßnahme: patche SSL/TLS (wähle K zufällig, wenn Padding ungültig), obwohl RSA-OAEP bekannt 34 / 34