TLS Einführung

DNS Workshop

Created: 2019-08-29 Thu 10:21

Transport Layer Security (TLS)

  • TLS ist ein generisches Sicherheitsprotokoll für TCP-Netzwerkverbindungen
  • DTLS ist eine Variante von TLS für UDP-Verbindungen, wird aber selten eingesetzt
  • TLS bietet Verschlüsselung des Datentransports, Authentisierung des Servers und (optional) Authentisierung des Clients
  • TLS benutzt X.509-Zertifikate der Internet PKI (PKIX)

TLS Geschichte

  • TLS wurde unter dem Markennamen SSL von der Firma Netscape Communications Corporation für den Netscape Browser entwickelt
Version Jahr
SSL 1 (unveröffentlicht) vor 1995
SSL 2 1995
SSL 3 1996
TLS 1 1999
TLS 1.1 2006
TLS 1.2 2008
TLS 1.3 2018

TLS Handshake

TLS-handshake.png

Client-Hello

  • die TLS-Nachricht ClientHello beinhaltet
    • Protokoll-Version
    • 32(28) Byte Zufallsdaten
    • Session-ID (bei Wiederaufnahme einer vorherigen Sitzung, sonst "0")
    • unterstützte Krypto-Algorithmen
    • Komprimierungs-Methoden (nicht mehr benutzt)
    • unterstützte Erweiterungen

Server-Hello

  • die TLS-Nachricht ServerHello beinhaltet
    • Protokoll-Version
    • 32(28) Byte Zufallsdaten
    • Session-ID
    • unterstützte Krypto-Algorithmen
    • Komprimierungs-Methoden (nicht mehr benutzt)
    • unterstützte Erweiterungen

Krypto-Protokolle

  • TLS Unterstützt eine Anzahl verschiedener Krypto-Protokolle

cert-browser.png

Cypher-Suite String

TLS-cypher-suite.png

TLS 1.3 - Was ist neu? (1/2)

  • RSA Key-Exchange wurde entfernt (RSA-KEX hat kein "Forward secrecy")
  • nur noch bekannt sichere Diffie-Hellman Parameter
  • problematische Cipher und Cipher-Modes wurden entfernt (CBC-Mode, RC4)
  • symmetrische Verschlüsselung per AEAD (authenticated encryption with additional data)

TLS 1.3 - Was ist neu? (2/2)

  • PKCS#1 v1.5 entfernt
  • der gesamte Handshake zwischen Client und Server ist per digitaler Signatur abgesichert (verhindert Downgrade Angriffe)
  • Vereinfachte Cipher-Suite Auswahl zwischen Client und Server
  • Schneller Handshake - 1-RTT
  • Schnelle Wiederaufnahme einer alten TLS-Verbindung mit 0-RTT
  • MITM-Angriffe (und Proxies) auf der Netzstrecke nicht mehr möglich

Internet PKI - X.509 Zertifikate

  • TLS authentisiert die Gegenstelle per X.509 Zertifikat
    • RFC 6091 definiert TLS mit OpenPGP, dieser Standard ist jedoch in keiner Produktions-Software umgesetzt (und in TLS 1.3 nicht mehr spezifiziert)

X.509 Zertifikat (1/6)

TLS-x509-01.png

X.509 Zertifikat (2/6)

TLS-x509-02.png

X.509 Zertifikat (3/6)

TLS-x509-03.png

X.509 Zertifikat (4/6)

TLS-x509-04.png

X.509 Zertifikat (5/6)

TLS-x509-05.png

X.509 Zertifikat (6/6)

TLS-x509-06.png