Was ist TLS 1.3?

„Ein Vorteil von TLS liegt ist, dass es aus zwei Schichten und mehreren Subprotokollen besteht, die beliebig erweiterbar sind."

Nachdem im ersten Teil der Beitragsreihe zu meiner Bachelorarbeit „Das Verschlüsselungsprotokoll TLS 1.3 und seine Auswirkungen auf das Netzwerk-Monitoring“ geklärt wurde, was Monitoring ist und wie Verschlüsselung im Allgemeinen funktioniert, geht es in diesem Teil nun um die Struktur und Funktionsweise des Verschlüsselungsprotokolls TLS sowie um die Neuerungen, die TLS 1.3 mit sich bringt.

Das Funktionsprinzip von TLS

Oft ist sowohl von SSL (Secure Socket Layer) als auch von TLS (Transport Security Layer) die Rede. Beide Begriffe werden synonym verwendet, bezeichnen aber unterschiedliche Versionen desselben Verschlüsselungsprotokolls, das sich zwischenzeitlich so sehr weiterentwickelt hat, dass damit eine Namensänderung von SSL zu TLS einhergegangen ist.
Das TLS-Protokoll läuft auf dem verbindungsorientiertem TCP-Protokoll, das für die zuverlässige Übermittlung von Datenpaketen zwischen Client und Server zuständig ist. Gleichzeitig ist TLS unabhängig von einem Anwendungsprotokoll, das heißt, jede Anwendung, die sicher kommunizieren möchte, kann TLS nutzen. Ein Vorteil von TLS liegt darin, dass es aus zwei Schichten und mehreren Subprotokollen besteht, die beliebig erweiterbar sind. Damit muss bei Veränderungen nicht jedesmal ein komplett neues Protokoll implementiert werden. 

Das bekannteste und womöglich wichtigste Subprotokoll von TLS ist das Handshake-Protokoll. Dabei wird eine Verbindung zwischen Client und Server aufgebaut und die Vereinbarungen für die folgende Sitzung getroffen. Diese beinhalten die Protokollversion, die zu verwendende Cipher Suite und eine optionale gegenseitige Authentifizierung. 

[Quelle: nach RFC 5246, Fig. 1]


Anschließend kann der Datenaustausch verschlüsselt über das Application Data-Subprotokoll erfolgen. Sofern es sich nicht um die erste Verbindung zwischen Client und Server handelt, sondern eine Sitzung wiederaufgenommen werden soll, kann der Handshake auch verkürzt werden.

Unterschiede zwischen TLS 1.2 und TLS 1.3

Die aktuell noch am weitesten verbreitete Version ist TLS 1.2. Die Vorgängerversionen TLS 1.0 und TLS 1.1 sind zwar auch noch oft im Einsatz, werden aber als unsicher bewertet. Dennoch werden sie aus Gründen der Rückwärtskompatibilität noch unterstützt. Sie werden jetzt aber offiziell als veraltet deklariert und von deren Verwendung wird dringend abgeraten.
TLS 1.2 gibt es seit 2008 und 10 Jahre lang war es die aktuellste Protokollversion. Seit August 2018 wird aber die Umstellung auf TLS 1.3 empfohlen. Die Entwickler von TLS 1.3 haben nämlich das Protokoll ordentlich aufgeräumt und die Bestandteile, die sich als Einfallstore für Angriffe erwiesen haben, entfernt oder zumindest umstrukturiert.

TLS 1.3 zeichnet sich durch folgende Punkte aus:
•    Die Anzahl der vom Protokoll unterstützten Cipher Suiten wurde auf fünf reduziert. Dabei sind nur noch solche mit aktuell als sicher geltenden Verschlüsselungsverfahren übrig geblieben. 
•    Es wird nun besonders viel Wert auf „Perfect Forward Secrecy“ gelegt. Dies bedeutet, dass im Fall der Kenntnis eine Schlüssels durch den Angreifer alle zukünftigen Kommunikationen dennoch sicher sind. Das ist möglich durch den Einsatz sogenannter ephemerer – flüchtiger – Schlüssel, die stets nur für die aktuelle Verbindung gültig sind.
•    Der aus TLS 1.2 und früheren Versionen bekannte Ticket-Mechanismus zur Sitzungswiederaufnahme wird durch ein Pre-Shared-Key (PSK)-Verfahren abgelöst. Damit soll verhindert werden, dass ein Unbefugter mit gestohlenen Sitzungstickets an eine bestehende Sitzung anknüpft.
•    Eine schnellere Wiederaufnahme bestehender Sitzungen wird durch eine weitere Verkürzung des Handshakes erreicht. Mit dem 0-RTT-Handshake können sogar „early data“ vom Client an den Server gesendet werden, noch bevor der Handshake abgeschlossen ist. Bei dieser Methode wird ein Umlauf (Round Trip) beim Verbindungsaufbau eingespart. Der Datenaustausch erfolgt somit noch schneller und effizienter. 
•    Die Verschlüsselung erfolgt in TLS 1.3 zu einem früheren Zeitpunkt. Während in TLS 1.2 erst nach Beendigung des Handshakes verschlüsselt wird, erfolgt in TLS 1.3 die Verschlüsselung der Daten bereits nach dem ServerHello.

Nachdem jetzt geklärt ist, wie TLS funktioniert und wie sich TLS 1.3 von seinem Vorgängerversionen unterscheidet, folgt im nächsten und letzten Beitrag, wie sich diese Änderungen nun tatsächlich auf das Monitoring auswirken.

Wenn Sie sich mit mir über die Inhalte meiner Arbeit austauschen möchten, erreichen Sie mich unter Olga.Wall@amasol.de. 

 

<< Zurück zu Teil I: TLS 1.3 und seine Auswirkungen auf das Netzwerk-Monitoring - Weiter zu Teil III: TLS 1.3 - wird das Monitoring blind?