Abo
  • IT-Karriere:

Diffie-Hellman: Unsinnige Krypto-Parameter

Ein kurzer Schlüsselaustausch bringt Chrome zum Absturz, andere Browser akzeptieren völlig unsinnige Parameter für einen Diffie-Hellman-Schlüsselaustausch. Im Zusammenhang mit den jüngst gefundenen TLS-Problemen könnte das ein Sicherheitsrisiko sein.

Artikel veröffentlicht am , Hanno Böck
Chrome stürzt beim Schicken kurzer Schlüsselaustausch-Parameter ab.
Chrome stürzt beim Schicken kurzer Schlüsselaustausch-Parameter ab. (Bild: Screenshot Golem.de)

Wer in den vergangenen Tagen versucht hat, die Webseite https://demo.cmrg.net/ mit einer aktuellen Version des Chrome-Browsers oder dessen freiem Pendant Chromium aufzurufen, hat feststellen müssen, dass dies den Browser zum Absturz gebracht hat. Darauf wurde am Dienstag über die Mailingliste oss-security hingewiesen. Die Nachricht verbreitete sich schnell und verschaffte der Testseite große Aufmerksamkeit.

Chrome stürzt ab

Inhalt:
  1. Diffie-Hellman: Unsinnige Krypto-Parameter
  2. Kein Browser prüft Primzahlen

Doch die Seite sollte eigentlich nicht dazu dienen, Abstürze in Browsern zu verursachen. Sie wurde laut einem Thread bei LWN.net bereits im November 2013 aufgesetzt und diente dazu, die Auswirkungen extrem kurzer Parameter bei einem Schlüsselaustausch mit Diffie-Hellman zu testen. Diffie-Hellman kann im TLS-Protokoll dazu genutzt werden, eine Verbindung mit Perfect Forward Secrecy aufzubauen.

Für einen Schlüsselaustausch mit Diffie-Hellman benötigt ein Server zwei Parameter, die er bei einem versuchten Verbindungsaufbau dem Client mitteilt: eine große Primzahl und einen sogenannten Generator. Von der Größe der Primzahl hängt die Sicherheit des Verfahrens ab. Üblich sind heutzutage meistens 1.024 Bit, was jedoch nicht mehr als sicher gilt. Vor allem der Apache-Webserver hat aber dafür gesorgt, dass ein derartig kurzer Schlüsselaustausch nach wie vor weit verbreitet ist. Erst in der jüngsten Version 2.4.7 verfügt Apache über die Möglichkeit, einen Schlüsselaustausch mit größeren Primzahlen durchzuführen.

Die oben erwähnte Testseite versucht, eine Verbindung mit viel zu kurzen 16 Bit aufzubauen und entdeckte dabei offenbar einen gravierenden Bug im Code von Chromium. Wir haben uns daraufhin angesehen, wie andere Browser mit kurzen oder unsinnigen Schlüsselaustausch-Parametern umgehen.

Stellenmarkt
  1. Deloitte, Düsseldorf, München
  2. Interhyp Gruppe, München

Mozilla Firefox lehnt einen Verbindungsaufbau mit sehr kurzen Primzahlen von 256 Bit und kleiner ab, Verbindungen mit 512 und 768 Bit waren jedoch möglich. Auch das ist aus heutiger Sicht sehr unsicher. Ähnlich verhält sich auch Chromium, wenn ein inzwischen verfügbarer Patch verwendet wird, der den Absturz verhindert. Beide Browser nutzen die NSS-Bibliothek, die Verbindungen mit sehr kurzen Primzahlen abblockt.

Internet Explorer: mangelhafter Support für Diffie-Hellman

Im Internet Explorer gestaltete sich ein Test etwas schwieriger, denn unter normalen Umständen unterstützt der Microsoft-Browser keinen Diffie-Hellman-Schlüsselaustausch. Er ermöglicht diesen nur, wenn ein Serverzertifikat mit einem DSA-Schlüssel eingesetzt wird, und dieser darf auch lediglich eine Länge von 1.024 Bit haben. DSA-Schlüssel für TLS-Verbindungen sind extrem ungewöhnlich, viele gängige Zertifizierungsstellen stellen nur für RSA-Schlüssel Zertifikate aus, für 1.024 Bit Länge heutzutage eigentlich generell nicht mehr. Wir stießen bei unserem Test aber darauf, dass man bei CAcert, einer freien Zertifizierungsstelle, die jedoch in den gängigen Browsern nicht integriert ist, nach wie vor DSA-Zertifikate mit 1.024 Bit ausstellen kann.

Im Internet Explorer wurden ähnlich wie bei Firefox und Chromium Verbindungen erst ab 512 Bit erlaubt. Interessanterweise verweigerte der Microsoft-Browser jedoch auch Verbindungen mit 2.048 und 4.096 Bit. Zu viel Sicherheit darf es bei Microsoft also auch nicht sein. Allerdings: In der Praxis ist das weitgehend irrelevant, da der Internet Explorer mit gängigen RSA-Zertifikaten nur einen Schlüsselaustausch über elliptische Kurven zulässt.

Opera verbindet erst ab 1.024 Bit

Opera zeigte sich deutlich strenger als die anderen Browser, was kurze Primzahlen angeht. Bei Verbindungen unter 1.024 Bit zeigt Opera eine Warnung und fragt den Nutzer, ob er sich wirklich verbinden möchte. Empfehlenswert wäre es, wenn andere Browser hier nachziehen. Legitime Gründe, einen Schlüsselaustausch mit weniger als 1.024 Bit durchzuführen, gibt es keine.

Interessant war das Verhalten von Safari unter Mac OS und von Konqueror unter Linux. Beide Browser akzeptierten praktisch alles an unsinnigen Parametern. Selbst mit extrem kleinen Primzahlen wie 17 akzeptierten die Browser einen Verbindungsaufbau. Sogar mit 15 als "Primzahl" ließ sich eine Verbindung aufbauen.

Kein Browser prüft Primzahlen 
  1. 1
  2. 2
  3.  


Anzeige
Hardware-Angebote
  1. täglich neue Deals bei Alternate.de
  2. 259€ + Versand oder kostenlose Marktabholung
  3. 144,90€ + Versand

hannob (golem.de) 07. Mär 2014

Das stimmt schon, IPsec benutzt auch Encrypt-then-MAC schon seit Ewigkeiten. Auch SSH ist...

linus9000 07. Mär 2014

Alles klar, Kommando zurück! Geht tatsächlich nicht. Offensichtlich habe ich da mit dem 2...

olqs 07. Mär 2014

Das geht ziemlich einfach: telnet 25 ehlo paypal.de mail from: service@paypal.de rcpt...

HanseDavion 07. Mär 2014

Ja, das ergibt Sinn. Dann doch lieber einen klugen Algorithmus erfinden.

ello 07. Mär 2014

Habe die selbe Version und meine stürzt ab, wo liegt der unterschied? Betriebsystem: Win...


Folgen Sie uns
       


iPad OS ausprobiert

Apple hat die erste öffentliche Betaversion vom neuen iPad OS veröffentlicht. Wir haben uns das für die iPads optimierte iOS 13 im Test genauer angeschaut.

iPad OS ausprobiert Video aufrufen
Kickstarter: Scheitern in aller Öffentlichkeit
Kickstarter
Scheitern in aller Öffentlichkeit

Kickstarter ermöglicht es kleinen Indie-Teams, die Entwicklung ihres Spiels zu finanzieren. Doch Geld allein ist nicht genug, um alle Probleme der Spieleentwicklung zu lösen. Und was, wenn das Geld ausgeht?
Ein Bericht von Daniel Ziegener

  1. Killerwhale Games Verdacht auf Betrug beim Kickstarter-Erfolgsspiel Raw
  2. The Farm 51 Chernobylite braucht Geld für akkurates Atomkraftwerk
  3. E-Pad Neues Android-Tablet mit E-Paper-Display und Stift

Ryzen 3900X/3700X im Test: AMDs 7-nm-CPUs lassen Intel hinter sich
Ryzen 3900X/3700X im Test
AMDs 7-nm-CPUs lassen Intel hinter sich

Das beste Prozessor-Design seit dem Athlon 64: Mit den Ryzen 3000 alias Matisse bringt AMD sehr leistungsstarke und Energie-effiziente CPUs zu niedrigen Preisen in den Handel. Obendrein laufen die auch auf zwei Jahre alten sowie günstigen Platinen mit schnellem DDR4-Speicher.
Ein Test von Marc Sauter

  1. Ryzen 3000 BIOS-Updates schalten PCIe Gen4 für ältere Boards frei
  2. Mehr Performance Windows 10 v1903 hat besseren Ryzen-Scheduler
  3. Picasso für Sockel AM4 AMD verlötet Ryzen 3400G für flottere iGPU

Google Maps in Berlin: Wenn aus Aussetzfahrten eine neue U-Bahn-Linie wird
Google Maps in Berlin
Wenn aus Aussetzfahrten eine neue U-Bahn-Linie wird

Kartendienste sind für Touristen wie auch Ortskundige längst eine willkommene Hilfe. Doch manchmal gibt es größere Fehler. In Berlin werden beispielsweise einige Kleinprofil-Linien falsch gerendert. Dabei werden betriebliche Besonderheiten dargestellt.
Von Andreas Sebayang

  1. Kartendienst Qwant startet Tracking-freie Alternative zu Google Maps
  2. Nahverkehr Google verbessert Öffi-Navigation in Maps
  3. Google Maps-Nutzer können öffentliche Veranstaltungen erstellen

    •  /