Transportsicherheit SSL/TLS, HTTPS
Inhaltsverzeichnis
1 Einf uhrung 5
2 Authentisierungsmethoden im HTTP 6
2.1 Basic Authentication 6
2.2 Digest Access Authentication 7
3 SSL / TLS 10
3.1 Historie 10
3.2 TLS Protokoll ubersicht 11
3.3 Record Layer Protokoll 12
3.3.1 Ablauf einer Verschl usselung 12
3.3.2 Ein Record Layer Datenpacket (Record) 13
3.4 Handshake Protokoll 14
3.4.1
Uberblick : Ablauf eines Handshakes 15
3.4.2 HelloRequest 16
3.4.3 ClientHello 16
3.4.4 ServerHello 16
3.4.5 Certificate 16
3.4.6 CertificateRequest 17
3.4.7 ServerHelloDone 18
3.4.8 ClientKeyExchange 18
3.4.9 CertificateVerify 18
3.4.10 ChangeCipherSpec 19
3.4.11 Finished 19
3.4.12 Verk urzter Handshake 20
3.5 Change-Cipher-Spec Protokoll 21
3.6 Alert Protokoll 22
3.7 Angriffe auf SSL/TLS 23
4 Ausblick 25
Philipp Dosch, 19 Juni 2006 Seite 2 von 26
Transportsicherheit SSL/TLS, HTTPS
Abbildungsverzeichnis
2.1 Aufforderung zur Authentisierung durch den Browser 6
2.2 Ablauf einer Basic-Authentisierung 7
2.3 Ablauf einer Digest Access Authentication 8
3.1 Die TLS-Protokolle im Schichtenzusammenhang 12
3.2 Der Record-Layer im TCP/IP-Stack 12
3.3 Ablauf einer Verschl usselung im Record Layer 13
3.4 Darstellung eines Records 14
3.5 Ablauf eines TLS-Handshakes 15
3.6 Ein Zertifikat im Browser 17
3.7 Berechnung des Master Secrets 19
3.8 Ablauf eines verk urzten Handshakes 20
3.9 Die ChangeCipherSpec Nachricht 21
3.10 Ethereal Protokollmitschnitt eines Handshakes 22
3.11 Die Alert-Protokoll Nachricht 22
3.12 Ethereal Alert Protokollmitschnitt 23
Philipp Dosch, 19 Juni 2006 Seite 3 von 26
Transportsicherheit SSL/TLS, HTTPS
Abk¨ urzungsverzeichnis
FTP - File Transfer Protocol HTML - Hypertext Markup Language HTTP - Hyptertext Transfer Protokoll IETF - Internet Engineering Task Force IMAP - Internet Message Access Protocol IRC - Internet Relay Chat MAC - Message Authentication Code MD5 - Message Digest 5
NCSA - National Center for Supercomputing Applications NNTP - Network News Transfer Protocol PCT - Private Communication Technology PKCS - Public Key Cryptography Standards PKI - Public-Key-Infrastrukturen POP3 - Post Office Protocol Version 3 PRF - Pseudo-Random-Funktion RSA - Rivest, Shamir, Adleman (Erfinder des RSA-Kryptosystems) SHA - Secure Hash Algorithm SMTP - Simple Mail Transfer Protocol SSL - Secure Sockets Layer TCP - Transmission Control Protocol TLS - Transport Level Security VPN - Virtual Private Network WWW - World Wide Web
Philipp Dosch, 19. Juni 2006 Seite 4 von 26
Transportsicherheit SSL/TLS, HTTPS 1. Einf¨ uhrung
1 Einf¨ uhrung
Im heutigen Zeitalter des Internets gehen t¨ aglich wichtige Informationen ¨ uber die elektrischen Leitungen. Eine wichtige Informationsquelle von ca. 48 % der Frauen sowie ca. 63 % der M¨ anner in Deutschland ist in der heutigen Zeit das World Wide Web (WWW) [1] in welchem haupts¨ achlich das Hypertext Transfer Protocoll (HTTP) eingesetzt wird. Um wichtige, vertrauensw¨ urdige Informationen wie z.B. Bank¨ uberweisungen oder Wareneink¨ aufe zu sch¨ utzen und deren Sicherheit zu gew¨ ahrleisten wurden einige Methoden entwickelt. Der am weitesten verbreitete Standard ist das SSL- bzw. TLS-Protokoll, welches in Kombination mit dem HTTP als HTTPS-Protokoll genutzt wird. Das ” S“ hierbei steht f¨ ur ” Secure“. Diese Arbeit stellt die Authentisierungsmethoden direkt im HTTP-Protokoll als Grundlage vor und geht dann tiefer in die TLS-Protokolle ein.
Philipp Dosch, 19. Juni 2006 Seite 5 von 26
Transportsicherheit SSL/TLS, HTTPS 2. Authentisierungsmethoden im HTTP
2 Authentisierungsmethoden im HTTP
In HTTP/1.1 [7] wurden zwei Authentisierungsmethoden aufgef¨ uhrt. Zum ersten die Basic Authentication, die schon im HTTP/1.0 [4] aufgenommen wurde, und zum zweiten die Digest Access Authentication. Diese beiden Methoden werden in [8] spezifiziert und im folgenden n¨ aher betrachtet.
2.1 Basic Authentication
In HTTP/1.0 [4] wird als einzige M¨ oglichkeit eine HTTP-Anfrage vor unautorisiertem Zugriff zu sch¨ utzen die Basic Authentication spezifiziert. Schon hier wird vor Sicherheitsm¨ angeln gewarnt, da der Benutzername sowie das Passwort im Klartext ¨ ubertragen
werden. Es sollte nur genutzt werden, wenn man dem Netzbetreiber vertrauen kann und kein offenes Netzwerk genutzt wird.
Ablauf. Zu Beginn einer Authentisierung stellt der Client eine Anfrage an eine bestimmte HTML-Seite. Diese Anfrage wird mit dem HTTP-Kommando ” GET“ durchgef¨ uhrt.
Der Client vermutet hier noch nicht, dass diese Seite zugriffsgesch¨ utzt ist. Nach diesem Aufruf pr¨ uft der Server die Seite und stellt fest, dass eine Authentisierung n¨ otig ist. Er schickt eine Fehlermeldung mit dem Code 401 (Authorization Required) an den Client zur¨ uck. Neben der Fehlermeldung befindet sich im Header des Server-Requests beispielsweise die Zeile:
WWW-Authenticate: Basic realm="Bitte Passwort f¨ ur Webanwendung XYZ eingeben!" Dadurch teilt der Server dem Client mit, welche Art von Authentisierung gefordert ist. Durch den optionalen Parameter ” realm“ sendet der Server dem Client zus¨ atzlich eine
explizite Meldung speziell f¨ ur diese HTML-Seite. Die Interpretation dieser Meldung kann dann im Browser ¨ ahnlich wie in Abbildung 2.1 aussehen. Hier fragt der Browser sofort die ben¨ otigten Zugangsdaten ab.
Abbildung 2.1: Aufforderung zur Authentisierung durch den Browser
Philipp Dosch, 19. Juni 2006 Seite 6 von 26
Transportsicherheit SSL/TLS, HTTPS 2.2. Digest Access Authentication
Nach der Eingabe eines Benutzernamens und des dazugeh¨ origen Passworts codiert der Browser beide Werte durch eine Base64-Codierung [11] und schreibt sie in den Header der folgenden HTTP-Anfrage an den Server. Dabei sendet er genau wie bei der ersten Anfrage durch die ” GET“-Methode die gew¨ unschte HTML-Seite und zus¨ atzlich die folgende Zeile:
Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==
Hier wird zuerst nochmals die Authentisierungsart sowie danach die Base64-Codierung des Usernamens und Passworts ¨ ubermittelt.
Base64 ist eine Codierung mit Pr¨ ufsummenbildung, sodass eventuelle ¨ Ubertragungsfehler
erkannt werden k¨ onnen. Eine Manipulation der Codierung ist jedoch jederzeit m¨ oglich, da der Algorithmus zur Erstellung ver¨ offentlicht wurde und dadurch jeder Angreifer den Usernamen oder das Passwort ¨ andern und erneut eine g¨ ultige Pr¨ ufusumme errechnen kann. Der Algorithmus zum dekodieren der Base64-Codierung ist ebenfalls bekannt, sodass ein Angreifer, der die Nachricht abf¨ angt jederzeit durch die Codierung den Usernamen sowie das zugeh¨ orige Passwort leicht ermitteln kann. [11] Nach dem Verifizieren der Zugangsdaten sendet der Server dann die gew¨ unschte HTML-Seite zum Client. Bei jeder folgenden Anfrage des Clients sendet dieser immer Usernamen sowie Passwort im HTTP-Header mit, sodass dadurch die Chancen eines Angreifers die Benutzerdaten abzufangen erh¨ oht werden. Einen beispielhafen Ablauf einer Basic Authentication beschreibt Abbildung 2.2.
Abbildung 2.2: Ablauf einer Basic-Authentisierung (entnommen aus [13])
2.2 Digest Access Authentication
Die Digest Access Authentication wurde erst nach der Basic Authentication mit HTT-P/1.1 eingef¨ uhrt und sollte die ” offensichtlichsten Sicherheitsm¨ angel beseitigen.“[13] Die
Digest Access Authentication ist eine klassische Challenge-Response-Authentisierung. Der Ablauf der Digest Access Authentication beschreibt Abbildung 2.3.
Philipp Dosch, 19. Juni 2006 Seite 7 von 26
Arbeit zitieren:
Philipp Dosch, 2006, Transportsicherheit SSL TLS, HTTPS, München, GRIN Verlag GmbH
Dieser Text kann über folgende URL aufgerufen und zitiert werden:
Einbetten
DOI
IT-Risikomanagement in Kreditinstituten unter Berücksichtigung von Bas...
Informatik - Wirtschaftsinformatik
Diplomarbeit, 98 Seiten
Anforderungen an das IT-Sicherheitsmanagement hinsichtlich Basel II un...
Informatik - Wirtschaftsinformatik
Seminararbeit, 23 Seiten
Chancen und Risiken von E-Procurement
Hausarbeit (Hauptseminar), 27 Seiten
Multi-Projektmanagement: Bedeutung, Methoden und Techniken
BWL - Unternehmensführung, Management, Organisation
Hausarbeit, 14 Seiten
Basel II - Eigenkapitalrichtlinien der Banken, Auswirkungen auf KMU
Informatik - Wirtschaftsinformatik
Hausarbeit, 31 Seiten
Product Information Management als Basis für die Produktkommunikation ...
Informatik - Wirtschaftsinformatik
Studienarbeit, 54 Seiten
Kryptographie: Zertifikate und -strukturen, PKI, PKCS und ISO-Standard...
Informatik - Technische Informatik
Seminararbeit, 30 Seiten
Secure Socket Layer (SSL) - Sicherheit im Internet
Informatik - Angewandte Informatik
Seminararbeit, 15 Seiten
Bedeutung ITIL® V3 für Kunden und Dienstleister
Ingenieurwissenschaften - Wirtschaftsingenieurwesen
Masterarbeit, 129 Seiten
Analyse der Wirkung des E-Procurement auf Bestände und Prozessgeschwin...
Hausarbeit, 19 Seiten
Einsatz der Balanced Scorecard in der Personalwirtschaft
BWL - Personal und Organisation
Seminararbeit, 34 Seiten
Identity Management als Instrument zur Optimierung der unternehmensint...
Im Rahmen einer Prozessanalyse...
Informatik - Wirtschaftsinformatik
Diplomarbeit, 95 Seiten
Philipp Dosch hat den Text Transportsicherheit SSL TLS, HTTPS veröffentlicht
Philipp Dosch hat einen neuen Text hochgeladen
Transportsichere Verpackung und Ladungssicherung
Ratgeber für Verpacker, Verlad...
Gerhard Großmann, Monika Kaßmann, Wilfried J. Bartz, Elmar Wippler
TCP/IP Illustrated, Volume 3: TCP for Transactions, HTTP, NNTP, and th...
W. Richard Stevens, Stevens
Web Protocols and Practice: HTTP/1.1, Networking Protocols, Caching, a...
Balachander Krishnamurthy, Jennifer Rexford
0 Kommentare