Abo
  • Services:
Anzeige
Zufallszahlen, die sich wiederholen - ein katastrophaler Fehler
Zufallszahlen, die sich wiederholen - ein katastrophaler Fehler (Bild: Screenshot Hanno Böck)

Fork: LibreSSL hat Zufallsprobleme unter Linux

Unter bestimmten Umständen lieferte LibreSSL unter Linux dieselben Zufallszahlen mehrfach. Das Problem wurde in einem neuen Release behoben, die OpenBSD-Entwickler sehen aber das eigentliche Problem beim Linux-Kernel.

Anzeige

Der OpenSSL-Fork LibreSSL hat wenige Tage nach seiner Veröffentlichung die erste größere Sicherheitslücke zu vermelden. Der Zufallszahlengenerator liefert unter bestimmten Umständen mehrmals dieselben Werte. Das Problem tritt im Zusammenhang mit der Funktion fork() auf und wurde von Andrew Ayer entdeckt. LibreSSL hat nun die Version 2.0.2 veröffentlicht, die einen Workaround für das Problem enthält. Doch die OpenBSD-Entwickler machen deutlich, dass sie das eigentliche Problem im Linux-Kernel sehen.

Die Funktion fork() erstellt eine nahezu identische Kopie des aktuellen Prozesses. Auch der interne Status des Zufallszahlengenerators wird so dupliziert. LibreSSL versucht, den Aufruf von fork() anhand der Prozess-ID (PID) zu erkennen und initialisiert im Fall einer neuen PID den Zufallszahlengenerator erneut. Das Problem dabei: Die Prozess-IDs unter Linux sind lediglich 16 Bit lang und werden zufällig vergeben. Manchmal kann es daher vorkommen, dass ein Unterprozess dieselbe PID erhält. Zwei Aufrufe des Zufallszahlengenerators können daher in unterschiedlichen Prozessen dasselbe Ergebnis produzieren. Die korrekte Funktion des Zufallszahlengenerators ist für kryptographische Software essenziell. Wiederholte Zufallswerte können bei manchen Algorithmen - etwa bei DSA und ECDSA - sogar dazu führen, dass sich der private Schlüssel trivial berechnen lässt.

OpenSSL enthielt eine ganze Reihe von Funktionen und Workarounds, die sichere Zufallszahlen garantieren sollten. Dabei wird teilweise auf äußerst obskure Lösungen zurückgegriffen, so unterstützt OpenSSL beispielsweise die Einbindung eines Tools namens Entropy Gathering Daemon - ein Perl-Skript, das unter Systemen ohne zuverlässige Zufallszahlen mögliche Entropiequellen aus dem System anzapft.

Die Entwickler von LibreSSL halten die meisten dieser Ansätze für verfehlt und vertreten die Haltung, dass es Aufgabe des Betriebssystems sei, einen sicheren Zufallszahlengenerator bereitzustellen. Doch genau hier liegt das Problem: Während unter OpenBSD eine Kernel-Funktion zum Zugriff auf den Zufallszahlengenerator existiert, kommt Linux ohne eine solche aus. Hier existiert lediglich die virtuelle Datei /dev/urandom, auf die man mittels Dateioperationen zugreifen kann. Die Frage, ob der direkte Zugriff auf /dev/urandom eine mögliche Alternative darstellt, wird bereits mit zahlreichen Pro- und Contra-Argumenten auf Hacker News diskutiert. Ein Problem könnte sein, dass in bestimmten Umgebungen das dev-Dateisystem nicht zur Verfügung steht oder dass ein Dateisystemzugriff aufgrund einer Systemüberlastung fehlschlägt.

OpenBSD-Entwickler Miod Vallat kommentiert sarkastisch auf Twitter, Leute, die sich über LibreSSLs Zufallszahlengenerator beschwerten, sollten lieber ihr Betriebssystem reparieren und eine vernünftige Zufallszahlenfunktion einbauen. Trotz des rauen Tons zwischen Linux- und OpenBSD-Entwicklern schreibt Linux-Entwickler Theodore Ts'o in einer Diskussion auf einer Mailingliste der Internet Engineering Task Force (IETF), dass er sich die Implementierung eines Syscalls für den Zufallszahlengenerator durchaus vorstellen könnte. Er sei allerdings nicht sicher, ob es dafür unter den Kernel-Entwicklern einen Konsens gebe.

Die Version 2.0.2 von LibreSSL hat nun zunächst einen Workaround für das Problem eingebaut. Mittels eines Callbacks, der beim Aufruf der fork()-Funktion aufgerufen wird, wird der Zufallszahlengenerator neu initialisiert. Andrew Ayer, der das Problem ursprünglich entdeckt hat, sieht darin zwar eine Verbesserung, ganz glücklich ist er mit der Lösung jedoch nicht. Denn ein Programm, das den Fork nicht über die entsprechende libc-Funktion auslöst, sondern stattdessen direkt den Kernel-Systemaufruf clone nutzt, wäre weiterhin von dem Problem betroffen. Trotz dieser verbleibenden Probleme ist natürlich allen LibreSSL-Nutzern unter Linux zu empfehlen, ein Update auf Version 2.0.2 durchzuführen.


eye home zur Startseite
Sarowie 17. Jul 2014

Welche Ironie, dass Mac OS X und iOS sich die unixoide Basis teilen.

pythoneer 17. Jul 2014

Dann ist es leider Unwissen, wenn es ernst ist. Das musst du mir mal erklären, warum...

__destruct() 17. Jul 2014

Hab gedacht, es sei genauso. Den Artikel damals hab ich gelesen, bei diesem hier hab ich...

Rabbit 17. Jul 2014

Nur um es nochmal klarstellen: der RNG wird NICHT mit der PID geseedet. LibreSSL...

Rabbit 17. Jul 2014

Fast jeder Chipsatz hat mitterlweile ein TPM, welches u.a. auch RNG liefert in Hardware...



Anzeige

Stellenmarkt
  1. Daimler AG, Stuttgart-Untertürkheim
  2. Online Verlag GmbH Freiburg, Freiburg
  3. Daimler AG, Germersheim
  4. Der Präsident des Kammergerichts, Berlin


Anzeige
Blu-ray-Angebote
  1. (u. a. The Complete Bourne Collection Blu-ray 14,99€, Harry Potter Complete Blu-ray 44,99€)
  2. (u. a. John Wick, Leon der Profi, Auf der Flucht, Das Schweigen der Lämmer)
  3. (u. a. 96 Hours Taken 3 6,97€, London Has Fallen 9,97€, Homefront 7,49€, Riddick 7,49€)

Folgen Sie uns
       

Anzeige
Whitepaper
  1. Sicherheitsrisiken bei der Dateifreigabe & -Synchronisation
  2. Globale SAP-Anwendungsunterstützung durch Outsourcing
  3. Praxiseinsatz, Nutzen und Grenzen von Hadoop und Data Lakes


  1. Erotik-Abo-Falle

    Verdienen Mobilfunkbetreiber an WAP-Billing-Betrug mit?

  2. Final Fantasy 15

    Square Enix will die Story patchen

  3. TU Dresden

    5G-Forschung der Telekom geht in Entertain und Hybrid ein

  4. Petya-Variante

    Goldeneye-Ransomware verschickt überzeugende Bewerbungen

  5. Sony

    Mehr als 50 Millionen Playstation 4 verkauft

  6. Weltraumroboter

    Ein R2D2 für Satelliten

  7. 300 MBit/s

    Warum Super Vectoring bei der Telekom noch so lange dauert

  8. Verkehrssteuerung

    Audi vernetzt Autos mit Ampeln in Las Vegas

  9. Centriq 2400

    Qualcomm zeigt eigene Server-CPU mit 48 ARM-Kernen

  10. VG Wort Rahmenvertrag

    Unis starten in die Post-Urheberrecht-Ära



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Canon EOS 5D Mark IV im Test: Grundsolides Arbeitstier mit einer Portion Extravaganz
Canon EOS 5D Mark IV im Test
Grundsolides Arbeitstier mit einer Portion Extravaganz
  1. Video Youtube spielt Livestreams in 4K ab
  2. Ausgabegeräte Youtube unterstützt Videos mit High Dynamic Range
  3. Canon EOS M5 Canons neue Systemkamera hat einen integrierten Sucher

Named Data Networking: NDN soll das Internet revolutionieren
Named Data Networking
NDN soll das Internet revolutionieren
  1. Geheime Überwachung Der Kanarienvogel von Riseup singt nicht mehr
  2. Bundesförderung Bundesländer lassen beim Breitbandausbau Milliarden liegen
  3. Internet Protocol Der Adresskollaps von IPv4 kann verzögert werden

Travelers Box: Münzgeld am Flughafen tauschen
Travelers Box
Münzgeld am Flughafen tauschen
  1. Apple Siri überweist Geld per Paypal mit einem Sprachbefehl
  2. Soziales Netzwerk Paypal-Zahlungen bei Facebook und im Messenger möglich
  3. Zahlungsabwickler Paypal Deutschland bietet kostenlose Rücksendungen an

  1. Re: Nicht kooperativ

    watwerbisdudenn | 19:24

  2. Re: In vielen Ländern Europas ist der...

    robinx999 | 19:23

  3. Urheberrecht in jetziger Form ist Schwachsinn

    jeckoBecko | 19:22

  4. Re: In Berlin nicht

    schily | 19:22

  5. Re: Die sollten noch mehr Gebühren nehmen

    subjord | 19:18


  1. 18:47

  2. 17:47

  3. 17:34

  4. 17:04

  5. 16:33

  6. 16:10

  7. 15:54

  8. 15:50


  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