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.

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.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed
Kein Browser prüft Primzahlen 
  1. 1
  2. 2
  3.  


hab (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.



Aktuell auf der Startseite von Golem.de
Schneller als SSDs
Eine RAM-Festplatte bricht Geschwindigkeitsrekorde

Schneller als SSDs und unendlich oft beschreibbar: Das verspricht ein Speichermedium, das RAM-Chips nutzt, aber über NVMe angesprochen wird.

Schneller als SSDs: Eine RAM-Festplatte bricht Geschwindigkeitsrekorde
Artikel
  1. Entlassungen: Amazon wirft weitere 9.000 Mitarbeiter raus
    Entlassungen
    Amazon wirft weitere 9.000 Mitarbeiter raus

    Mit der neuen Entlassungswelle hat Amazon nun 27.000 Mitarbeiter weniger.

  2. Altersdiskriminierung in der IT: Schluss mit Projekten, Sie kochen hier nur noch Kaffee
    Altersdiskriminierung in der IT
    Schluss mit Projekten, Sie kochen hier nur noch Kaffee

    Altersdiskriminierung betrifft in der IT nicht nur ältere, sondern auch junge Mitarbeiter. Ob bei Stellenausschreibung oder im Job - wann es lohnt, dafür vor Gericht zu ziehen.
    Von Harald Büring

  3. Solarstrom: Greenakku bietet Balkonkraftwerk mit Speicherakku an
    Solarstrom
    Greenakku bietet Balkonkraftwerk mit Speicherakku an

    Die Balkonkraftwerke von Greenakku sind ab sofort auch in Sets mit einem Akku verfügbar. So wird überschüssige Energie gespeichert.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    • Daily Deals • Amazon Coupon-Party • MindStar: MSI RTX 4080 -100€ • Neue RAM-Tiefstpreise • Sandisk MicroSDXC 256GB -69% • Neue Wochendeals bei Media Markt • Bosch Professional-Rabatte • Otto Oster-Angebote • 38-GB-Allnet-Flat 12,99€/Monat • Meta Quest Pro 1.199€ • [Werbung]
    •  /