Abo
  • Services:
Anzeige
Schluss mit alten, unsicheren Verschlüsselungsverfahren: TLS 1.3 räumt auf.
Schluss mit alten, unsicheren Verschlüsselungsverfahren: TLS 1.3 räumt auf. (Bild: PMRMaeyaert, Wikimedia Commons/CC-BY-SA 3.0)

Versionsintoleranz und Schmierfett

Ein Problem, das bisher bei jeder neuen TLS-Version auftauchte, hängt mit der Aushandlung der TLS-Version zusammen. Bei einem TLS-Handshake sendet der Client die höchste TLS-Version, die er unterstützt. Aktuell wäre das etwa in der Regel TLS 1.2. Doch damit sich ein Client auch mit Servern verbinden kann, die nur ältere TLS-Protokollversionen unterstützen, kann der Server auch mit einer niedrigeren Protokollversion antworten, etwa TLS 1.0.

Anzeige

Das Problem: Obwohl dieses Versionsaushandlungsverfahren relativ simpel ist, schlampen viele Server dabei. Bei Verbindungen mit höheren TLS-Versionen brechen sie die Verbindung ab, senden einen Fehler oder produzieren einen Timeout. Dieses Verhalten wird als Versionsintoleranz bezeichnet.

Um auch mit solch fehlerhaften Servern eine Verbindung zu ermöglichen, haben die Browserhersteller Fallbacks implementiert. Schlug eine Verbindung mit TLS 1.2 fehl, versuchten sie es erneut mit TLS 1.1, danach mit TLS 1.0 und danach häufig sogar mit dem Uraltprotokoll SSL Version 3.

Diese Fallbacks führten jedoch zu einer ganzen Reihe von Problemen. Zunächst einmal traten sie manchmal auch bei schlechten Netzverbindungen auf. Das führte dazu, dass neuere Protokollfeatures gelegentlich nicht funktionierten. Beispielsweise ermöglicht die TLS-Erweiterung Server Name Indication seit TLS 1.0, dass auf derselben IP mehrere Hosts mit verschiedenen Hostnamen und Zertifikaten betrieben werden. Doch wenn ein Fallback die Verbindung auf SSL Version 3 reduziert, erhält der Nutzer das falsche Zertifikat.

Protokoll-Downgrades können auch zu Sicherheitsproblemen werden. Der erste Angriff, der auf Protokolldowngrades basierte, war 2014 der sogenannte Virtual-Host-Confusion-Angriff von Antoine Delignat-Lavaud. Auch der Ende 2014 entdeckte Poodle-Angriff nutzte die Protokoll-Downgrades.

Nach Poodle hatten die meisten Browser daher diese Downgrades entfernt. Doch zunächst sah es so aus, als würden die Protokolldowngrades mit TLS 1.3 ein Comeback erleben: Trotz dieser ganzen Sicherheitslücken und Fehler in der Vergangenheit haben viele Hersteller offenbar nichts gelernt. Eine ganze Reihe von Servern reagierte fehlerhaft auf Verbindungsversuche mit TLS 1.3 - darunter Webseiten von IT-Größen wie Apple, Ebay oder Paypal.

IBM, Cisco und Citrix mit defekten TLS-Implementierungen

Der Autor dieses Artikels versuchte im Sommer 2016, einige der Hersteller, die für diese defekten TLS-Implementierungen verantwortlich waren, zu kontaktieren, darunter Cisco, Citrix und IBM. Die Reaktionen auf die Meldung dieses Problems waren verhalten. IBM teilte mit, dass es bereits zu spät sei, dieses Problem im nächsten Versionsupdate zu beheben. Erst die übernächste Version - irgendwann 2017 - werde einen Fix enthalten. Cisco verweigerte einen Fix komplett, da das Ganze nur Geräte betraf, die nicht mehr unterstützt wurden. Citrix bestätigte zwar das Problem, sagte aber nicht, wann man einen Fix bereitstellen werde. Apple und Ebay antworteten auf Anfragen überhaupt nicht, Paypal teilte lediglich mit, dass derartige Probleme nicht Teil des Bug-Bounty-Programms der Firma seien.

Google-Entwickler David Benjamin schlug vor, das Problem der Versionsintoleranz durch ein neues Versionsaushandlungsverfahren zu umgehen. Benjamins Vorschlag sieht vor, dass künftig die unterstützten TLS-Versionen durch eine Erweiterung im Handshake mitgeteilt werden. Unbekannte TLS-Erweiterungen werden von Servern ignoriert. Theoretisch könnte ein Server auch in so einem Fall fehlerhaft reagieren, aber das kommt deutlich seltener vor. Der Grund dafür dürfte sein, dass neue TLS-Erweiterungen häufiger eingeführt werden als neue TLS-Versionen.

Dieser neue Mechanismus würde zwar für TLS 1.3 mit ziemlicher Sicherheit funktionieren, aber bei künftigen Versionen könnte sich ein ähnliches Problem ergeben: Server, die TLS 1.3 implementieren, könnten die Versionserweiterung auswerten und eine Verbindung ablehnen, wenn dort eine ihnen unbekannte Version auftaucht.

Schmierfett gegen unfähige Hersteller

Um solche Fehler auch zukünftig zu vermeiden hat Benjamin das Grease-Verfahren entwickelt (Generate Random Extensions And Sustain Extensibility). Man müsse verhindern, dass Protokollimplementierungen rosten und sie deswegen regelmäßig mit Schmierfett behandeln. Die Idee ist simpel: Browser und andere Clients können gelegentlich bestimmte reservierte Nonsens-Versionsnummern mit dem TLS-Handshake mitschicken. Auch für TLS-Erweiterungen und Verschlüsselungsverfahren sind Grease-Werte reserviert.

Ein Server muss unbekannte Werte in all diesen Fällen ignorieren. Falls ein Server auf unbekannte Werte mit einem Fehler reagiert, würde dies früh auffallen, da Verbindungen fehlschlagen. Somit soll verhindert werden, dass derartige fehlerhafte Implementierungen überhaupt Verbreitung finden.

Ein Schlupfloch für dumme Implementierungen bleibt: Entwickler einer TLS-Servers könnten zwar die vordefinierten Grease-Werte ignorieren, aber bei allen anderen Werten weiterhin einen Fehler produzieren. Dafür müssten sie aber schon das Protokoll lesen und gleichzeitig komplett missverstehen - oder absichtlich derartige Fehler einbauen.

 Handshake mit einem oder mit null Round-TripsTLS 1.3 oder doch TLS 4? 

eye home zur Startseite
Elwedritsche 16. Dez 2016

...kann ich nur zustimmen!

bjs 14. Dez 2016

das gilt natürlich auch für apache. die api von openssl 1.0 zu 1.1 hat sich grundlegend...



Anzeige

Stellenmarkt
  1. BG-Phoenics GmbH, München
  2. über Ratbacher GmbH, Raum Saarlouis
  3. Schlütersche Verlagsgesellschaft mbH & Co. KG, Hannover
  4. Zurich Gruppe Deutschland, Bonn


Anzeige
Top-Angebote
  1. (alle Angebote versandkostenfrei, u. a. GTA V PS4/XBO für 27,00€ und Fast & Furious 1-7 Box Blu...
  2. (u. a. Wolverine 1&2, Iron Man 1-3 und Avengers)
  3. (u. a. Total War: WARHAMMER 24,99€ und Rome: Total War Collection 2,75€)

Folgen Sie uns
       


  1. Die Woche im Video

    Mr. Robot und Mrs. MINT

  2. Spülbohrverfahren

    Deutsche Telekom "spült" ihre Glasfaserkabel in die Erde

  3. Privacy Phone

    John McAfee stellt fragwürdiges Smartphone vor

  4. Hacon

    Siemens übernimmt Software-Anbieter aus Hannover

  5. Quartalszahlen

    Intel bestätigt Skylake-Xeons für Sommer 2017

  6. Sony

    20 Millionen Playstation im Geschäftsjahr verkauft

  7. Razer Lancehead

    Symmetrische 16.000-dpi-Maus läuft ohne Cloud-Zwang

  8. TV

    SD-Abschaltung kommt auch bei Satellitenfernsehen

  9. ZBook G4

    HP stellt Grafiker-Workstations für unterwegs vor

  10. Messenger Lite

    Facebook bringt abgespeckte Messenger-App nach Deutschland



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Mario Kart 8 Deluxe im Test: Ehrenrunde mit Ballon-Knaller, HD Rumble und Super-Turbo
Mario Kart 8 Deluxe im Test
Ehrenrunde mit Ballon-Knaller, HD Rumble und Super-Turbo
  1. Hybridkonsole Nintendo verkauft im ersten Monat 2,74 Millionen Switch
  2. Nintendo Switch Verkaufszahlen in den USA nahe der Millionengrenze
  3. Nintendo Von Mario-Minecraft bis zu gelben dicken Joy-Cons

Bonaverde: Von einem, den das Kaffeerösten das Fürchten lehrte
Bonaverde
Von einem, den das Kaffeerösten das Fürchten lehrte
  1. Google Alphabet macht weit über 5 Milliarden Dollar Gewinn
  2. Insolvenz Weniger Mitarbeiter und teure Supportverträge bei Protonet
  3. Jungunternehmer Über 3.000 deutsche Startups gingen 2016 pleite

Noonee: Exoskelett ermöglicht Sitzen ohne Stuhl
Noonee
Exoskelett ermöglicht Sitzen ohne Stuhl

  1. Re: Anstand?

    Kleba | 11:20

  2. Re: Diese Analyse ist ein peinlicher Tiefpunkt

    ve2000 | 11:19

  3. Re: an alle Debian Mitarbeiter ...

    George99 | 11:19

  4. Re: Und später mal in ein paar Jahren

    bombinho | 11:18

  5. Re: Ist die Telekom endlich mal aufgewacht?!

    neocron | 11:17


  1. 09:01

  2. 08:00

  3. 18:05

  4. 17:30

  5. 17:08

  6. 16:51

  7. 16:31

  8. 16:10


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel