Systemsicherheit 11 SSL/TLS



Ähnliche Dokumente
Netzsicherheit 13: SSL/TLS

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

IT-Sicherheit Kapitel 11 SSL/TLS

Fachhochschule Frankfurt am Main Fachbereich 2: Informatik WS 2008/2009. IT-Security. Teil 4: SSL/TLS Dr. Erwin Hoffmann

Sicherheit in Netzen Modul 5: TLS Transport Layer Security Teil 2

Kommunikationsnetze. 7. Das World Wide Web 7.2 Das Hypertext Transfer Protocol. Kommunikationsnetze 7. Das World Wide Web 7.3 HTTP

Transport Layer Security Nachtrag Angriffe

ARCHITEKTUR VON INFORMATIONSSYSTEMEN

Beweisbar sichere Verschlüsselung

SSL/TLS und SSL-Zertifikate

Anwendungsprotokolle: HTTP, POP, SMTP

IT-Sicherheit - Sicherheit vernetzter Systeme -

Digitale Signatur. Digitale Signatur. Anwendungen der Kryptographie. Secret Sharing / Splitting. Ziele SSL / TLS

Seminar Neue Techologien in Internet und WWW

Rosa Freund SSL/TLS SSL/TLS Institut für Mathematik, TU Berlin. Rosa Freund --

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

Hacken von implementierungsspezifischen! SSL-Schwachstellen

Sicheres HTTP. 8. Juni Proseminar Electronic Commerce und digitale Unterschriften

Kryptographische Anonymisierung bei Verkehrsflussanalysen

Secure Socket Layer v. 3.0

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

2. Kommunikation und Synchronisation von Prozessen 2.2 Kommunikation zwischen Prozessen

Secure Socket Layer V.3.0

KvBK: Basic Authentication, Digest Authentication, OAuth

Web Grundlagen zum Spidering

SSL-Protokoll und Internet-Sicherheit

Web Service Security

Sicherheit in Netzen Modul 6: TLS Transport Layer Security

Protokolle. Konrad Rosenbaum, 2006/7 protected under the GNU GPL & FDL

Sicherheit in Client/Server-Umgebungen

IT-Sicherheit SSL/TLS. Jens Kubieziel. Fakultät für Mathematik und Informatik. 6. Januar 2012

Clientkonfiguration für Hosted Exchange 2010

TLS ALS BEISPIEL FÜR EIN SICHERHEITSPROTOKOLL

Inhaltsverzeichnis. Open-Xchange Authentication & Sessionhandling

Electronic Systems GmbH & Co. KG

C.M.I. Control and Monitoring Interface. Zusatzanleitung: Datentransfer mit CAN over Ethernet (COE) Version 1.08

Übungen zur Vorlesung Systemsicherheit

Verschlüsselung der Kommunikation zwischen Rechnern

Kontrollfragen: Internet

ISA Server Exchange RPC over HTTPS mit NTLM-Authentifizierung

Internet online Update (Mozilla Firefox)

MSXFORUM - Exchange Server 2003 > SMTP Konfiguration von Exchange 2003

Anbindung des eibport an das Internet

Verteilte Systeme Unsicherheit in Verteilten Systemen

Netzwerksicherheit Musterlösung Übungsblatt 11: TOR und Websicherheit

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

1 SICHERHEITSZERTIFIKATE (TLS)

Netzwerkbasierte Man-in-the-Middle- Angriffe auf die Online-Authentisierung mit dem elektronischen Personalausweis

Dokumentation zur Versendung der Statistik Daten

Ist das so mit HTTPS wirklich eine gute Lösung?

ElGamal Verschlüsselungsverfahren (1984)

10. Public-Key Kryptographie

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

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

Guide DynDNS und Portforwarding

Radius Server. Bericht im Studiengang Computerengineering an der HS-Furtwangen. Student: Alphonse Nana Hoessi Martikelnr.:227106

Angaben zu einem Kontakt...1 So können Sie einen Kontakt erfassen...4 Was Sie mit einem Kontakt tun können...7

TCP SYN Flood - Attack. Beschreibung Auswirkungen Zuordnung zu Gefährdungskategorie und Attacken-Art Gegenmaßnahmen Quellen

15 Transportschicht (Schicht 4)

Inhaltverzeichnis 1 Einführung Zugang zu den Unifr Servern Zugang zu den Druckern Nützliche Links... 6

Einführung in die Netzwerktechnik

OP-LOG

Folgende Voraussetzungen für die Konfiguration müssen erfüllt sein: - Ein Bootimage ab Version Optional einen DHCP Server.

(Hinweis: Dieses ist eine Beispielanleitung anhand vom T-Sinus 154 Komfort, T-Sinus 154 DSL/DSL Basic (SE) ist identisch)

4. Network Interfaces Welches verwenden? 5. Anwendung : Laden einer einfachen Internetseite 6. Kapselung von Paketen

1. Zugriff auf das Lonza Netzwerk von ihrem privaten PC oder von einem Internet Café

Apache HTTP-Server Teil 1

DNÜ-Tutorium HS Niederrhein, WS 2014/2015. Probeklausur

STRATO Mail Einrichtung Mozilla Thunderbird

NODELOCKED LIZENZ generieren (ab ST4)

Überblick. Netzprogrammierung 7b. Zustand in Web Anwendungen. Zustand in HTTP HTTP ist zustandslos Zwei Interaktionen sind unabhängig voneinander

Sichere für Rechtsanwälte & Notare

sslstrip und HSTS Sven Schleier OWASP Stammtisch München, 18. Februar 2014 sslstrip und HSTS sslstrip und HSTS Sven Schleier Der Angriff

Anleitung zur Einrichtung des WDS / WDS with AP Modus

3.3 Transportschicht

Session Management und Cookies

FL1 Hosting Technische Informationen

Handbuch für Nutzer von Zertifikaten der Zertifizierungsstellen (CAs) des Bayerischen Behördennetzes (BYBN) zur Sicherung von s Teil C3:

goalio Documentation Release goalio UG

Einrichtung eines -konto mit Thunderbird

FOPT 5: Eigenständige Client-Server-Anwendungen (Programmierung verteilter Anwendungen in Java 1)

Zertifikate Swiss Government SSL CA 01

Kryptographische Verfahren auf Basis des Diskreten Logarithmus

Protokollbeschreibung Modbus TCP für EMU TCP/IP Modul

Serienbrieferstellung in Word mit Kunden-Datenimport aus Excel

Übersicht. Was ist FTP? Übertragungsmodi. Sicherheit. Öffentliche FTP-Server. FTP-Software

s aus -Programm sichern Wählen Sie auf der "Startseite" die Option " s archivieren" und dann die entsprechende Anwendung aus.

10.6 Authentizität. Geheimhaltung: nur der Empfänger kann die Nachricht lesen

1 Mit einem Convision Videoserver über DSL oder ISDN Router ins Internet

Sicherheit in Netzen Modul 7: TLS Transport Layer Security

Erweiterung der Autokonfigurationsmethode für Rich Communications Suite enhanced (RCS-e) durch die COCUS AG

SSL/TLS. Präsentation zur Seminararbeit. im Seminar Internetsicherheit. Michael Hübschmann 26. Juni 2014 Betreuung: Dipl. Inf.

Wie installiere ich das CAcert Root-Zertifikat?

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

Remote Tools. SFTP Port X11. Proxy SSH SCP.

Public-Key-Infrastrukturen

Einrichtung von radsecproxy. Dipl.-Math. Christian Strauf Rechenzentrum TU Clausthal

SSL/TLS: Ein Überblick

ACDSee 10. ACDSee 10 Tutorials > Hinzufügen von SendPix-Diashows zu Websites und Blogs. Was ist ACDSee SendPix?

Internet- Installationsanleitung für Zyxel 660R / 660H / 660HW

Transkript:

Systemsicherheit 11 SSL/TLS Das TCP/IP-Schichtenmodell Anwendungsschicht (FTP, HTTP, SMTP,...) Transportschicht (TCP, UDP) s-http https Internetschicht (IP) Netzwerkschicht (z.b. Ethernet, TokenRing,...) Ziel: Sicherung des WWW

HTTP 1. Nutzer tippt http://www.joerg-schwenk.de/start.htm 2. Browser sucht auf einem Domain Name Server (DNS) die IP- Adresse zu www.joerg-schwenk.de: 212.227.127.75. 3. Browser baut eine TCP-Verbindung zu 212.227.127.75 und Port 80 auf. 4. Browser sendet ein HTTP-Kommando über TCP an 212.227.127.75/Port 80: Get start.htm HTTP/1.0 User-agent: Netscape 4.7 Accept: text/plain Accept: text/html Accept: image/gif HTTP (2) 5. Server antwortet über die TCP-Verbindung mit: Einer Statuszeile (Erfolgsmeldung oder Fehler), Metainfomation (Beschreibung der nachfolgenden Information), Einer Leerzeile und Der Information selbst: HTTP/1.0 Status 200 Document follows Server: Apache/1.8 Date: Mon, 14 Mai, 2001 11:23:22 GMT Content-type: text/html Content-length: 5280 Last-modified: Fri, 11 Mai, 2001 03:12:12 GMT <html>... </html>

HTTP (3) Schritt 1-5 wird für jede HTTP(1.0)-Anfrage wiederholt. Insbesondere muß für jede HTTP(1.0)-Anfrage eine neue TCP-Verbindung aufgebaut werden. Moderne Browser schummeln hier und bauen mehrere TCP-Verbindungen gleichzeitig auf, um die verschiedenen Bestandteile einer Webseite schneller zu laden. HTTP Basic Authentication Username/Passwort-Verfahren (RFC 1945) Dialog mit dem Nutzer durch Popup-Fenster

HTTP Digest Access Authentication Challenge/Response-Verfahren (RFC 2617) mit MD5 Dialog mit dem Nutzer durch Popup-Fenster Nachricht 2: HTTP/1.1 401 Unauthorized WWW-Authenticate: Digest realm="testrealm@host.com", nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093", opaque="5ccc069c403ebaf9f0171e9517f40e41" Nachricht 3: Authorization: Digest username="mufasa", realm="testrealm@host.com", nonce="dcd98b7102dd2f0e8b11d0f600bfb0c093", uri="/dir/index.html", response="e966c932a9242554e42c8ee200cec7f6", opaque="5ccc069c403ebaf9f0171e9517f40e41" Zwei Möglichkeiten für sicheres WWW 1. Absicherung der http-nachrichten von Client und Server: S-HTTP 2. Absicherung der zugrunde liegenden TCP-Verbindung: SSL (https)

S-HTTP: Idee S-HTTP Header HTTP Header S-HTTP Daten HTTP Header HTTP Daten HTTP Daten S-HTTP: Anfrage und Antwort Aus Get start.htm HTTP/1.0 wird Secure * Secure-HTTP/1.4 (der URI wird unterdrückt, um eine Verkehrsanalyse zu vermeiden.) Server-Antwort: Secure-HTTP/1.4 200 OK

S-HTTP: Beispiel (RFC 2660) C S: Get start.htm HTTP/1.0 S C: 200 OK HTTP/1.0 Server-Name: Navaho-0.1.3.3alpha Certificate-Info: CMS,MIAGCSqGSIb3DQEHAqCAMIACAQExADCABgkqh... PhZcW1e+nojLvHXWAU/CBkwfcR+FSf4hQ5eFu1AjYv6Wqf430Xe9Et5+jgnM Tiq4LnwgTdA8xQX4elJz9QzQobkE3XVOjVAtCFcmiin80RB8AAAMYAAAAAAA AAAAA== Encryption-Identity: DN-1779, null, CN=Setec Astronomy, OU=Persona Certificate,O="RSA Data Security, Inc.", C=US; SHTTP-Privacy-Enhancements: recv-required=encrypt <A name=tag1 HREF="shttp://www.setec.com/secret"> Don't read this. </A> S-HTTP: Beispiel C S: Secure * Secure-HTTP/1.4 Content-Type: message/http Content-Privacy-Domain: CMS MIAGCSqGSIb3DQEHA6CAMIACAQAxgDCBqQIBADBTME0xCzAJBgNVBAYTAlVTMSAw HgYDVQQKExdSU0EgRGF0YSBTZWN1cml0eSwgSW5jLjEcMBoGA1UECxMTUGVyc29u YSBDZXJ0aWZpY2F0ZQICALYwDQYJKoZIhvcNAQEBBQAEQCU/R+YCJSUsV6XLilHG GET /secret HTTP/1.0 cnvzwqkcwzmt/rz+duov8ggb7oo/d8h3xuvgq2lsx4kygq2szwj8q6ewhsmhf4oz Security-Scheme: S-HTTP/1.4 User-Agent: Web-O-Vision 1.2beta lvmaadcabgkqhkig9w0bbweweqyfkw4dagcecfif7badxlw3oiaegzbncmexke16 Accept: *.* +mnxx8yqpukbcl0bwqs86lvws/agrkkpelmysbi5lco8mbcswk/fcyrnxirhs1ok Key-Assign: Inband,1,reply,des-ecb;7878787878787878 BXBVlsAhKkkusk1kCf/GbXSAphdSgG+d6LxrNZwHbBFOX6A2hYS63Iczd5bOVDDW Op2gcgUtMJq6k2LFrs4L7HHqRPPlqNJ6j5mFP4xkzOCNIQynpD1rV6EECMIk/T7k 1JLSAAAAAAAAAAAAAA==

S-HTTP: Beispiel S C: Secure * Secure-HTTP/1.4 Content-Type: message/http Prearranged-Key-Info: des-ecb,697fa820df8a6e53,inband:1 Content-Privacy-Domain: CMS MIAGCSqGSIb3DQEHBqCAMIACAQAwgAYJKoZIhvcNAQcBMBEGBSsOAwIHBAifqtdy x6uimyccargvfzjtozbn773dtmxlx037ck3giqnv0wc0qax5f+fesaigaxmqwcir HTTP/1.0 200 OK r9xvt0nt0lgsq/8tilcdbekdycngdcjaduy3d0r2sb5sntt0tyl9uydg3w55vtnw Security-Scheme: S-HTTP/1.4 Content-Type: text/html apbcpcwludari1uhdzbnojicrvehxg/syx069m8v6vo8psjs7//hh1ym+0nekzq5 Congratulations, you've won. l1p0j7uwku4w0csrlgqhlvejanj6dqagstncooh3jzexgqxntgesk8pofpfhdtj0 <A href="/prize.html CRYPTOPTS="Key-Assign: 5RH4MuJRajDmoEjlrNcnGl/BdHAd2JaCo6uZWGcnGAgVJ/TVfSVSwN5nlCK87tXl Inband,alice1,reply,des-ecb;020406080a0c0e0f; nl7djwaprywxb3mnpknq7atijpf5u162mbwxrddmie7e3sst7nasn+gs0atey5x7 SHTTP-Privacy-Enhancements: recv-required=auth"> AAAAAAAAAAA= Click here to claim your prize</a> SSL De facto Standard für Client-Server-Sicherheit IETF RFC: The TLS Protocol Version 1.0 (RFC 2246) In allen gängigen Browsern integriert Freie Programmbibliotheken, z.b. SSLRef, SSLPlus, SSLava, SSLeay, openssl, modssl

SSL SSL

Aufbau von SSL/TLS HTTP(S) Change Chipher Alert Handshake Anwendung Record Layer TCP SSL/TLS Record Layer HTTP-Daten Fragmentierung http 3.1 Länge http 3.1 Länge Kompression Verschlüsselung http 3.1 Länge MAC Padd. P. Länge

SSL/TLS Verbindungsstatus SSL/TLS arbeitet immer in einem aktuellen Verbindungsstatus (connection state): Ausgewählte Algorithmen Ausgewählte Schlüssel Start-Status ist NULL Das Handshake-Protokoll handelt einen pending state aus Durch [ChangeCipherSpec] wird der pending state in actual state kopiert. SSL/TLS: Handshake Master secret k = 0101... 110110 Client ClientHello Certificate ClientKeyExchange CertificateVerify [ChangeCipherSpec] Finished Server ServerHello (Session_ID) Certificate CertificateRequest ServerHelloDone [ChangeCipherSpec] Master secret Finished k = 0101... 110110

SSL/TLS: Verkürzter Handshake Client ClientHello (Session_ID) [ChangeCipherSpec] Finished Server ServerHello (Session_ID) [ChangeCipherSpec] Finished Vorteil: Einsparung der aufwendigen Public-Key-Operationen beim Weitersurfen auf dem gleichen Server. SSL/TLS: Schlüsselvereinbarungsverfahren Benötigter Zertifikatstyp Schlüssel- austausch- Algorithm. ServerKey- Exchange benötigt? Inhalt ClientKey- Exchange Beschreibung RSA RSAExport (>512 Bit) DHE-DSS RSA Encryption RSA Signing DSS Signing Nein Ja (temporärer RSAKey = 512 Bit) Ja (g s mod p) Verschlüsseltes premaster secret Mit temp. RSAKey verschlüsseltes premaster secret g c mod p Client verschlüsselt premaster secret mit öffentlichem Schlüssel des Servers Client verschlüsselt premaster secret mit temporärem RSA- Schlüssel des Servers (nur noch relevant wegen Rückwärtskompatibilität). Diffie-Hellman- Schlüsselvereinbarung, Server signiert (g s mod p) mit dem DSS- Schlüssel.

SSL/TLS: Schlüsselvereinbarungsverfahren Benötigter Zertifikatstyp Schlüssel- austausch- Algorithm. ServerKey- Exchange benötigt? Inhalt ClientKey- Exchange Beschreibung DHE-RSA DH-DSS RSA Signing DH, signiert mit DSS Ja (g s mod p) Nein (g c mod p im Zertifikat enthalten) g c mod p g c mod p Diffie-Hellman- Schlüsselvereinbarung, Server signiert (g s mod p) mit dem RSA- Schlüssel. Diffie-Hellman- Schlüsselvereinbarung mit festem Serveranteil, Authentisierung über DSS-Zertifikat. DH-RSA DH, signiert mit RSA Nein (g c mod p im Zertifikat enthalten) g c mod p Diffie-Hellman- Schlüsselvereinbarung mit festem Serveranteil, Authentisierung über RSA-Zertifikat. TLS: Generierung der Schlüssel

TLS: Generierung der Schlüssel TLS: Generierung der Schlüssel

TLS: Finished-Nachricht TLS: Ciphersuites

Angriffe: Bleichenbacher Der Eine Million Fragen -Angriff SSL verwendet PKCS#1 zur Codierung von RSA- Kryptogrammen: PKCS#1-Klartext beginnt immer mit den Bytes 00 und 02 Angreifer wählt einen Chiffretext und sendet ihn an Server beginnt Klartext nicht mit 00 02, dann Fehler_1 beginnt Klartext mit 00 02, dann Fehler_2 Jedesmal, wenn Fehler_2 auftritt, kann der Angreifer den Schlüsselraum verkleinern. Effiziente Version des Algorithmus von Håstad und Näslund zur Sicherheit einzelner RSA-Bits Angriffe: Bleichenbacher (2) Daniel Bleichenbacher: Chosen Ciphertext Attacks Against Protocols Based on the RSA Encryption Standard PKCS#1, CRYPTO `98. PKCS#1 00 02 Padding String 00 Data Block k Bytes k: Länge des Modulus n in Bytes: 2 8(k-1) n<2 8k m PKCS-konforme Zahl ( B = 2 8(k-2) ): 2 B m< 3 B

Angriffe: Bleichenbacher (3) RSA ist wegen seiner Homomorphie-Eigenschaft unsicher gegenüber Chosen Ciphertext-Attacken: Um den Klartext zu c zu erhalten, lasse c s e mod n entschlüsseln, und dividiere das Ergebnis durch s. Idee Bleichenbacher: Suche viele verschiedene s i, so das c(s i ) e mod n PKCS-konform ist. Dann gilt für alle i: 2 B ms i mod n < 3 B Man erhält so viele verschiedene Intervalle, und der gesuchte Klartext m muss in deren Schnittmenge liegen. Angriffe: Bleichenbacher (4) Schritt 1: Gegeben ist ein PKCS-konformer Chiffretext c; gesucht ist m = c d mod n. c 0 c M 0 {[2B, 3B-1]}={[a,b]} (da m 0 =m PKCS-konform ist, liegt m in diesem Intervall) i 1

Angriffe: Bleichenbacher (5) Schritt 2: Suche die kleinste Zahl s 1 n/3b, so dass c 0 (s 1 ) e mod n PKCS-konform ist Da ms 1 PKCS-konform ist, gibt es ganze Zahlen r mit 2B ms 1 -rn 3B-1 2B-ms 1 -rn (3B-1)-ms 1 ms 1-2B rn ms 1 - (3B-1) Aus Schritt 1 wissen wir, dass a m b gilt. Daraus folgt as 1 - (3B-1) rn bs 1-2B (Lösungsmenge für r) Analog (2B+rn)/s 1 m (3B-1+rn)/s 1 (Intervalle für m) M 1 r { [max(a, (2B+rn)/s 1 ), min(b, (3B-1+rn)/s 1 ] } i 2 Angriffe: Bleichenbacher (6) Schritt 3: Suche die kleinste Zahl s 2 >s 1, so dass c 0 (s 2 ) e mod n PKCS-konform ist Analog zu Schritt 2 erhält man eine Lösungsmenge für r Analog zu Schritt 2 erhält man neue Intervalle für m (2B+rn)/s 2 m (3B-1+rn)/s 2 M 2 r,a,b { [max(a, (2B+rn)/s 1 ), min(b, (3B-1+rn)/s 1 ] } i 3

Angriffe: Bleichenbacher (7) Schritt 4 bis x: Wie Schritt 3, bis nur noch ein Intervall übrig ist Angriffe: Ettercap IP: 123.123.123.123 MAC: 1 Server ARP: Who has 123.123.123.123 Client Ettercap IP: 123.123.123.123 MAC: 2 Ettercap eignet sich die IP-Adresse des Servers an DNS greift dann nicht mehr

SSL: PKI Markt ist zwischen großen Anbietern aufgeteilt. Wer nicht mitspielt erhält: SSL: PKI Statistik für SSL-Zertifikate:

SSL/TLS, S-HTTP: Links TLS: www.ietf.org/html.charters/tls-charter.html SSL: home.netscape.com/security/techbriefs/ssl.html S-HTTP: www.ietf.org/rfc/rfc2660.txt Implementierungen: www.openssl.org, www.apache-ssl.org, www.modssl.org Million-Fragen-Angriff: D. Bleichenbacher "Chosen Ciphertext Attacks against Protocols Based on RSA Encryption Standard PKCS #1" in Advances in Cryptology --CRYPTO'98, LNCS vol. 1462, pages: 1--12, 1998. www.belllabs.com/user/bleichen/bib.html