Kryptographie: Der Debian-Bug im OpenSSL-Zufallszahlengenerator

Einer der schwerwiegendsten Fehler in der Geschichte der Kryptographie beschäftigte vor zehn Jahren Nutzer der Debian-Distribution. Wenn man danach sucht, findet man noch heute vereinzelt verwundbare Schlüssel.

Artikel von Hanno Böck veröffentlicht am
An einigen Stellen findet man immer noch alte kryptographische Schlüssel, die sich dank eines zehn Jahre alten Debian-Bugs knacken lassen.
An einigen Stellen findet man immer noch alte kryptographische Schlüssel, die sich dank eines zehn Jahre alten Debian-Bugs knacken lassen. (Bild: Bubo/Wikimedia Commons/CC-BY-SA 3.0)

Es war ein GAU in Sachen Verschlüsselung: 2008 entdeckte der Debian-Entwickler Luciano Bello einen Bug, der für einen Zeitraum von zwei Jahren dazu führte, dass der Zufallszahlengenerator von OpenSSL praktisch unbrauchbar wurde. Bis heute finden sich vereinzelt verwundbare private Schlüssel im praktischen Einsatz.

Stellenmarkt
  1. IT Coordinator - 1st und 2nd Level Support (m/w/d)
    Engelbert Strauss GmbH & Co. KG, Biebergemünd
  2. IT-System Engineer (m/w/d) - Endpoint Management
    Universitätsklinikum Frankfurt, Frankfurt am Main
Detailsuche

Grund für den Fehler war ein Patch, mit dem eigentlich ein Problem behoben werden sollte. Der originale OpenSSL-Code nutzte für den Zufallszahlengenerator uninitialisierten Speicher. Die Debian-Entwickler störten sich daran, dass das Debugging-Tool Valgrind hierzu eine Warnung ausgab und wollten dieses Problem ausschalten.

Zufallszahlengenerator hatte nur noch 32.768 Möglichkeiten

An sich sprach auch nichts dagegen, doch der Patch enthielt einen gravierenden Fehler. Dieser führte dazu, dass fortan nur noch wenige Daten in den internen Status des Zufallszahlengenerators gelangten. Die einzige Quelle von zufälligen Daten war fortan die Prozess-ID der jeweils laufenden Softwareinstanz. Unter Linux kann die Prozess-ID Werte zwischen 1 und 32.768 annehmen - es gibt also nur eine relativ begrenzte Zahl an Möglichkeiten.

Die größten Auswirkungen hatte der Fehler auf die Erzeugung von kryptographischen Schlüsseln. Er unterschied sich je nach Architektur, Version und Konfiguration des jeweiligen Systems, doch insgesamt gab es für jede Schlüsselgröße nun nur noch einige Hunderttausend mögliche Varianten. Die Folge: Wer mit OpenSSL einen privaten Schlüssel für ein Serverzertifikat erzeugte, musste damit rechnen, dass ein Angreifer schlicht alle möglichen Schlüsselvarianten erzeugte und somit ebenso in den Besitz des privaten Schlüssels kam.

Golem Akademie
  1. Informationssicherheit in der Automobilindustrie nach VDA-ISA und TISAX® mit Zertifikat: Zwei-Tage-Workshop
    22.–23. März 2022, Virtuell
  2. Kotlin für Java-Entwickler: virtueller Zwei-Tage-Workshop
    03.–04. Februar 2022, Virtuell
Weitere IT-Trainings

Nicht nur OpenSSL war davon betroffen, auch andere kryptographische Software, die OpenSSL nutzt, erzeugte knackbare Schlüssel, darunter OpenSSH und OpenVPN.

Die Schlüsselerzeugung war dabei nur das offensichtlichste Problem, auch Software, die kryptographische Verbindungen herstellt - etwa ein Webserver -, konnte durch den Bug angegriffen werden. Allerdings gestalteten sich solche Angriffe etwas komplizierter, da der genaue Status des Zufallszahlengenerators nur schwer vorhersehbar ist, wie eine damals veröffentlichte wissenschaftliche Abhandlung erläutert.

Immer noch verwundbare Keys im Einsatz

Obwohl das Ganze schon zehn Jahre her ist, sind vereinzelt immer noch verwundbare private Schlüssel zu finden. 2015 fand der Softwareentwickler Ben Cox bei Github zahlreiche öffentliche SSH-Schlüssel von Entwicklern mit dem alten Debian-Bug. Damit hätte man einige prominente Code-Repositories manipulieren können, etwa das von Python.

Bei TLS-Zertifikaten für Webseiten sollte es theoretisch unmöglich sein, solche verwundbaren Schlüssel zu verwenden. Alle Zertifikate, die damals gültig waren, sind längst abgelaufen. Die Baseline Requirements, ein Regelwerk, auf das sich Zertifizierungsstellen und Browserhersteller geeinigt haben, sieht vor, dass bei der Zertifikatsausstellung geprüft wird, ob ein bekannter kompromittierter Schlüssel verwendet wird. Der Debian-OpenSSL-Bug wird dabei explizit als Beispiel erwähnt.

Trotzdem tauchen immer noch Zertifikate auf, die von dem Bug betroffen sind. Im vergangenen Jahr gelang es dem Autor dieses Artikels, ein Testzertifikat mit verwundbarem Schlüssel bei Let's Encrypt zu erstellen. Let's Encrypt hat inzwischen einen Check eingebaut, der eine solche Zertifikatsausstellung verhindert.

Auch fanden sich in den Daten der Certificate-Transparency-Logs zwei von der Zertifizierungsstelle Certum ausgestellte Zertifikate, deren Schlüssel mit einem verwundbaren Debian-System erzeugt wurden, ebenso Zertifikate der inzwischen nicht mehr von Browsern akzeptierten Zertifizierungsstellen Startcom und Wosign. Bei der Recherche zu diesem Artikel fand sich zudem ein weiteres Zertifikat, ausgestellt von der Zertifizierungsstelle Quo Vadis.

Der Debian-OpenSSL-Bug ist wohl eine der gravierendsten Sicherheitslücken in der Geschichte der Kryptographie. Entscheidend für die Langlebigkeit ist vor allem, dass nicht nur die Verschlüsselung, sondern die erzeugten privaten Schlüssel von der Lücke betroffen waren. Sucht man nach vergleichbaren Bugs, dann fällt einem am ehesten die ROCA-Sicherheitslücke in Infineon-Chips ein. Die führte im vergangenen Jahr dazu, dass unzählige Personalausweise, Krypto-Chipkarten und Produkte wie Yubikeys knackbare Schlüssel erzeugten.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
Raumfahrt
SpaceX-Rakete stürzt voraussichtlich im März auf den Mond

Ob sich Elon Musk so die erste Ankunft einer SpaceX-Rakete auf dem Mond vorgestellt hat?

Raumfahrt: SpaceX-Rakete stürzt voraussichtlich im März auf den Mond
Artikel
  1. G413 SE, G413 TKL SE: Logitech bringt zwei mechanische Tastaturen für weniger Geld
    G413 SE, G413 TKL SE
    Logitech bringt zwei mechanische Tastaturen für weniger Geld

    Normalerweise sind mechanische Tastaturen von Logitech sehr teuer - nicht so die G413 SE und TKL SE. Die verzichten dafür auf RGB.

  2. Deutschland: E-Commerce wird immer mehr zum Normalfall
    Deutschland
    E-Commerce wird immer mehr zum Normalfall

    E-Commerce wird immer mehr als das Normale und Übliche empfunden, meint der Bundesverband E-Commerce und Versandhandel.

  3. Letzte Meile: Telekom will Preise für VDSL-Vermietung stark erhöhen
    Letzte Meile
    Telekom will Preise für VDSL-Vermietung stark erhöhen

    Die Telekom will von 1&1, Vodafone und Telefónica künftig erheblich mehr für die Anmietung der letzten Meile.

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 • RTX 3090 24GB 2.349€ • RTX 3070 Ti 8GB 1.039€ • 1TB SSD PCIe 4.0 127,67€ • RX 6900XT 16 GB 1.495€ • Razer Gaming-Tastatur 155€ • LG OLED 65 Zoll 1.599€ • Razer Gaming-Maus 39,99€ • RX 6800XT 16GB 1.229€ • GOG New Year Sale: bis zu 90% Rabatt • Razer Gaming-Stuhl 179,99€ [Werbung]
    •  /