Goodbye TLS 1.0 & 1.1! Hallo sichereres Internet!

  1. Die IETF
  2. TLS
  3. Die Geschichte von TLS und SSL
  4. Deprecation von TLS 1.0 und TLS 1.1
  5. Was muss ich tun?
  6. Wer ist betroffen?
  7. Fazit

Die IETF

Die IETF steht als Kurzbezeichnung für die „Internet Engineering Task Force“, eine lose Organisation von Technikern, Forschern, Herstellern und Netzbetreibern und kümmert sich um die technische Weiterentwicklung des Internets, was oft in Standarddokumenten mündet, den sogenannten RFCs.

Im Grunde kann sich jeder an der Erstellung dieser Standards beteiligen, berühmte Beispiele sind etwa die TCP/IP-Protokollfamilie oder HTTP2. Diese Standards sorgen dafür, dass verschiedenste Geräte, vom ans Internet angeschlossenen Kühlschrank bis zur ISS Weltraumstation, über gemeinsam frei verfügbare Protokolle miteinander kommunizieren können.

Der Vorteil dieser losen Organisation (die IETF besitzt keine Rechtsform) ist, dass einerseits die Hürden relativ gering sind, sich an der Entwicklung neuer Standards zu beteiligen und andererseits, dass die Standards für jeden kostenfrei im Internet abrufbar und nutzbar sind. Dies steht im starken Kontrast zu anderen Standardisierungsorganisationen wie z.B. der ISO, in welcher nur Nationalstaaten Mitglied sind und der Zugriff auf die Norm immer bezahlt werden muss.

Man kann also sagen: Die IETF ist ein richtiges Communityprojekt des Internets, um gemeinsame Standards zu schaffen, welche für die Interoperabilität verschiedenster Geräte und Programme nützlich sind.

Einer dieser Standards beschäftigt sich mit der Verschlüsselung von Datenübertragungen – und zwar TLS.

TLS

TLS steht für „Transport Layer Security“, also Transportschichtsicherheit. Genau dafür ist es auch da, also die Sicherheit der Transportschicht, d.h. die Datenverbindung zwischen zwei Geräten, etwa eurem Browser und diesem Blog, während ihr diesen Artikel lest. Es steht für das „S“ in „HTTPS“, wird aber auch in vielen weiteren Protokollen genutzt um eine sichere Datenübertragung gewährleisten zu können.

Die Geschichte von TLS und SSL

Ursprünglich basiert TLS auf dem Protokoll SSL („Secure Sockets Layer“), welches für den Browser Mosaic (später Netscape Navigator) im Jahr 1994 entwickelt wurde. Diese frühe Version wurde als „SSL 1.0“ bezeichnet und bis zur Version 3.0 aktualisiert, bevor sie durch die IETF weiterentwickelt und im Jahr 1999 als RFC 2246 unter dem Namen TLS 1.0 veröffentlicht wurde. Dies ist auch der Grund, warum auch heute noch gerne mit dem Begriff „SSL-Verschlüsselung“ geworben wird, obwohl im Grunde moderne TLS Varianten zum Einsatz kommen.

Im Laufe der Zeit wurde das TLS Protokoll um zusätzliche Funktionen erweitert, etwa um die Verwendung zusätzlicher Verschlüsselungsalgorithmen wie AES in RFC 3268 im Jahr 2002. Diese Erweiterungen führten nacheinander zu der Veröffentlichung von TLS 1.1 im Jahr 2006, TLS 1.2 im Jahr 2008 und zur aktuell neuesten Version, TLS 1.3 im Jahr 2018.

Deprecation von TLS 1.0 und TLS 1.1

Mit RFC 8996 werden die TLS Protokollversionen 1.0 und 1.1 endgültig für veraltet erklärt. Das bedeutet, dass alle Anwender und Hersteller diese Versionen nicht mehr benutzen sollten und dass man auf moderne Varianten wie die Versionen 1.2 oder 1.3 updaten sollte. So hat Microsoft seit Oktober 2020 begonnen, den Support für die veralteten Versionen in Office 365 zu entfernen. Mozilla Firefox, Google Chrome und Apples Safari haben ebenfalls im Laufe des Jahres 2020 den Support entfernt bzw. standardmäßig deaktiviert.

Hintergrund für die Deaktivierung ist, dass im Laufe der Jahre immer wieder Sicherheitslücken in den unterschiedlichsten TLS Implementierungen gefunden wurden und es auch verschiedene Konfigurationsoptionen gab, welche bei falscher Handhabung zu Schwachstellen führen konnten.

Die TLS Standards 1.2 und 1.3 räumen mit vielen dieser unsicheren Methoden auf und erlauben so eine einfachere, sicherere Konfiguration von IT-Systemen.

Bekannte Angriffe sind etwa:

 

Was muss ich tun?

In 99% aller Fälle: nichts. Halbwegs aktuelle Browser, Betriebssysteme und Geräte unterstützen seit Jahren TLS 1.2. Einige alte Softwareprodukte unterstützen allerdings kein TLS 1.2 mehr und sollten nach Möglichkeit auf modernere Versionen aktualisiert werden.

Falls die Software nicht mehr aktualisiert werden kann, da es keinen Support vom Hersteller gibt, was z.B. häufig bei Smartphones, TVs und IOT-Devices der Fall ist, sollten diese Geräte entweder nicht mehr für sicherheitsrelevante Tätigkeiten wie z.B. Onlinebanking eingesetzt bzw. gleich ersetzt werden.

Wer ist betroffen?

Um einen Eindruck zu gewinnen, folgt hier eine Liste von bekannten Clients, die kein TLS 1.2 unterstützen und somit oft keine sicheren Verbindungen mehr aufbauen können:

 

  • Android Version 4.3 und ältere
  • Firefox Version 5 und ältere
  • Internet Explorer Versionen 8-10 auf Windows 7 oder älteren Windows Versionen
  • Internet Explorer 10 auf Windows Phone 8
  • Safari 6.0.4/OS X 10.8.4 und ältere Versionen

Abgesehen von der Schwierigkeit verschlüsselte Verbindungen zu modernen Systemen aufbauen zu können, sollte der Einsatz solcher alten, nicht mehr vom Hersteller unterstützter Versionen generell vermieden werden, da hier oft auch weitere, teils schwerwiegende Sicherheitslücken existieren.

Konkret testen, ob eure eigenen Endgeräte bzw. eure eingesetzte Software betroffen sind, könnt ihr z.B. einfach über den kostenlosen Client Online SSL/TLS Test von Qualys.

Wenn euer Client TLS 1.2 und 1.3 unterstützt, seht ihr oben im Ergebnis Folgendes:

Client Online SSL/TLS Test

Als kleinen Bonus prüft die Seite zudem noch, ob ihr gegen diverse TLS Schwachstellen abgesichert seid.

Wer einen Server testen möchte, für den bietet Qualys ebenfalls einen Test an, dieser benötigt aber etwas länger für die Ausführung, da hier auch die genutzten Zertifikate überprüft werden.

Wer lieber auf der Kommandozeile unterwegs ist, dem sei hier das Python Tool „sslyze“ ans Herz gelegt, welches als freie Software auf Github erhältlich ist. Damit könnt ihr nicht nur Webserver und Browser testen, sondern auch SMTP Server und vieles mehr.

Installieren könnt ihr dies unter Linux einfach via pip:

pip install --user --upgrade sslyze

Ein normaler Webscan wird so ausgeführt:

sslyze --regular mittwald.de:443

Das Tool liefert euch dann sehr viele Informationen, u.a. auch zu den eingesetzten Zertifikaten des Servers, also ob diese noch mittels des veralteten SHA-1 signiert wurden. Darüber hinaus prüft es nebenbei auch noch, ob und in welchen Truststores das Zertifikat hinterlegt ist, sowie diverse unsichere Konfigurationen des TLS-Servers.

Die komplette Vielfalt der angebotenen Optionen erhaltet ihr via:

sslyze --help

Hier könnt ihr euch den Output als json formatieren lassen oder auch nur bestimmte TLS Versionen testen.

Fazit

Abschließend kann man somit festhalten, dass durch die Abschaltung von TLS 1.0 und 1.1 das Web ein Stück sicherer geworden ist. Ein idealer Zeitpunkt, um einmal den eigenen Gerätepark durchzusehen und das eine oder andere veraltete Gerät auszusortieren oder zu aktualisieren.

Kommentar hinzufügen