Abo
  • Services:
Anzeige
Dan Kaminsky sieht das Internet als ganzes bedroht.
Dan Kaminsky sieht das Internet als ganzes bedroht. (Bild: Hanno Böck)

Dan Kaminsky: Sichere Zufallszahlen zum Standard machen

Def Con 22 Dan Kaminsky fordert, dass sichere Zufallszahlengeneratoren zum Standard in allen Programmiersprachen werden müssen. Als weitere große Baustellen in der IT-Sicherheit sieht er Denial-of-Service-Attacken und die Speicherverwaltung von Browsern.

Anzeige

Dan Kaminsky hat auf der Def Con 22 Vorschläge gemacht, wie man das Problem unsicherer Zufallszahlen ein für allemal lösen könnte. Immer wieder führten in der Vergangenheit mangelhafte Zufallszahlengeneratoren zu Sicherheitsproblemen. Zuletzt war davon beispielsweise LibreSSL betroffen. Kaminsky verweist auch auf Forschungsarbeiten, die gezeigt haben, dass etwa 50.000 RSA-Schlüssen von Routern und anderen Embedded-Geräten wegen schlechter Zufallsgeneratoren gebrochen werden konnten. Gerade erst hatte Dominique Bongard ein Problem mit Zufallszahlengeneratoren in Routern mit dem WPS-Protokoll gezeigt.

Kaminsky sagte, dass er es Leid sei, immer wieder die gleichen Probleme zu beheben. Deshalb sollte das Problem unsicherer Zufallszahlen ein für allemal gelöst werden. Dabei werde oft über die falschen Probleme diskutiert. Es sei eigentlich nicht schwer, einen sicheren Zufallszahlengenerator zu programmieren und es sei dabei auch weitgehend egal, welche Algorithmen verwendet werden. Grundsätzlich gebe es vor allem zwei Probleme: Zufallszahlen ohne Entropie und Zufallszahlengeneratoren, die überhaupt nicht auf Sicherheit ausgelegt sind.

Unsichere Algorithmen Standard

In fast allen Programmiersprachen basiert die Standardfunktion für Zufallszahlen auf unsicheren Algorithmen. Meistens handelt es sich entweder um einen LFSR-Algorithmus (Linear feedback shift register) oder um einen Mersenne Twister. Beide Algorithmen haben das Problem, dass ein Angreifer, der einige Zufallszahlen beobachten kann, dadurch in der Lage ist, frühere und zukünftige Zufallszahlen zu berechnen.

Das Problem sei laut Kaminsky, dass die unsicheren Standard-Zufallszahlengeneratoren oft einfacher zu benutzen sind. Unsicherheit "per Default" habe noch nie gut funktioniert, so Kaminsky, deshalb sollten idealerweise alle Standardfunktionen für Zufallszahlen sichere Zufallsgeneratoren des Betriebssystems aufrufen. Kaminsky arbeitet an einer Bibliothek namens Liburandy, die für alle gängigen Programmiersprachen eine solche Änderung implementiert.

Sichere Zufallszahlen sind langsamer

Es gebe zwei Gründe warum bisher die meisten Programmiersprachen standardmäßig keine starken Zufallszahlen implementieren. Der eine sei, dass manche Programme einen deterministischen Zufallszahlengenerator nutzen wollen. Wenn der Programmierer den Seed für einen Zufallszahlengenerator auf einen festen Wert setzt, liefert der Zufallszahlengenerator immer die selben Zahlen. Das andere Problem sei die Geschwindigkeit: Systemweite Zufallszahlengeneratoren wie beispielsweise /dev/urandom unter Linux sind oft deutlich langsamer.

Für die allermeisten Anwendungen spielt die Geschwindigkeit des Zufallszahlengenerators zwar kaum eine Rolle, es sei aber mittels schneller Hashfunktionen wie SipHash möglich, im Userspace auch sichere Zufallszahlengeneratoren sehr schnell zu implementieren, so Kaminsky. Um Probleme beim Forken von Prozessen zu umgehen, könne hier die Systemzeit millisekundengenau in den Zufallsgenerator mit einfließen. Es sei dann zwar theoretisch nicht mehr absolut auszuschließen, dass zweimal der selbe Zufallswert auftaucht, aber praktisch ist es laut Kaminsky nahezu ausgeschlossen, dass zwei Prozesse genau im selben Augenblick ausgeführt werden.

Kaminsky selbst bevorzugt die Lösung, immer auf dem systemweiten Zufallszahlengenerator zurückzugreifen. Aber bei Verfechtern beider Lösungen sei klar, dass der traditionelle und unsichere LSFR-Algorithmus abgeschafft werden muss.

Fehlende Entropie

Die Ursache der schwachen RSA-Schlüssel war fehlende Entropie von Embedded-Geräten beim Systemstart. Linux initialisiert den Zufallszahlengenerator durch verschiedene Systemereignisse, etwa Tastatureingaben, Zugriffszeiten von Festplatten und Mausbewegungen. Ein Embedded-Router hat aber keines dieser Geräte.

Kaminsky sieht eine gute Möglichkeit zur Gewinnung von Entropie darin, die Unterschiede verschiedener Zeitquellen im System zu messen. So gebe es in fast jedem System genauere und weniger genaue Zeitmessungen. Kaminsky hatte hierfür vor einigen Jahren bereits ein Tool namens DakaRand programmiert, das auf einer Idee von Matt Blaze basiert, der ein entsprechendes Programm namens TrueRand bereits 1996 entwickelt hatte. Er wisse zwar nicht, ob diese Methode perfekt sei, aber Kaminsky sei sich sicher, dass ein System wie DakaRand besser sei als vieles, was in heutigen Systemen verwendet wird.

Sichere Passwörter sind schlecht zu merken 

eye home zur Startseite
__destruct() 18. Aug 2014

Ich habe gerade danach gegoolet, wo diese Methode verwendet wird. Dabei habe ich...

Casandro 11. Aug 2014

Der Grund warum es unsicheren und sicheren Zufall auf heutigen Computer gibt ist, weil...



Anzeige

Stellenmarkt
  1. KRÜSS GmbH, Hamburg
  2. Gebr. Heller Maschinenfabrik GmbH, Nürtingen
  3. Daimler AG, Stuttgart
  4. Bundesamt für Verfassungsschutz, Köln


Anzeige
Spiele-Angebote
  1. 1,49€
  2. 1,49€
  3. 4,99€

Folgen Sie uns
       


  1. Bildbearbeitung

    Google-Algorithmus entfernt Wasserzeichen auf Fotos

  2. Ladestationen

    Regierung lehnt Zwangsverkabelung von Tiefgaragen ab

  3. Raspberry Pi

    Raspbian auf Stretch upgedated

  4. Trotz Förderung

    Breitbandausbau kommt nur schleppend voran

  5. Nvidia

    Keine Volta-basierten Geforces in 2017

  6. Grafikkarte

    Sonnets eGFX Breakaway Box kostet 330 Euro

  7. E-Commerce

    Kartellamt will Online-Shops des Einzelhandels schützen

  8. id Software

    Quake Champions startet in den Early Access

  9. Betrug

    Verbraucherzentrale warnt vor gefälschten Youporn-Mahnungen

  10. Lenovo

    Smartphone- und Servergeschäft sorgen für Verlust



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Mercedes S-Klasse im Test: Das selbstfahrende Auto ist schon sehr nahe
Mercedes S-Klasse im Test
Das selbstfahrende Auto ist schon sehr nahe
  1. Autonomes Fahren Fiat Chrysler kooperiert mit BMW und Intel
  2. 3M Verkehrsschilder informieren autonom fahrende Autos
  3. Waymo Autonomes Auto zerstört sich beim Unfall mit Fußgängern

LG 34UC89G im Test: Wenn G-Sync und 166 Hertz nicht genug sind
LG 34UC89G im Test
Wenn G-Sync und 166 Hertz nicht genug sind
  1. LG 43UD79-B LG bringt Monitor mit 42,5-Zoll-Panel für vier Signalquellen
  2. Gaming-Monitor Viewsonic XG 2530 im Test 240 Hertz, an die man sich gewöhnen kann
  3. SW271 Benq bringt HDR-Display mit 10-Bit-Panel

Windows 10 S im Test: Das S steht für schlechtes Marketing
Windows 10 S im Test
Das S steht für schlechtes Marketing
  1. Microsoft Neugierige Nutzer können Windows 10 S ausprobieren
  2. Surface Diagnostic Toolkit Surface-Tool kommt in den Windows Store
  3. Malware Der unvollständige Ransomware-Schutz von Windows 10 S

  1. Re: Sinn

    Seargas | 03:52

  2. Re: Natürlich war das ein "Terroranschlag"

    Ach | 03:33

  3. Re: Das Spiel ist auf dem richtigen Weg!

    bynemesis | 03:05

  4. Re: Wird doch nix

    Mr Miyagi | 02:23

  5. Re: Das ist nicht die Aufgabe des Staates

    Libertybell | 02:15


  1. 14:38

  2. 12:42

  3. 11:59

  4. 11:21

  5. 17:56

  6. 16:20

  7. 15:30

  8. 15:07


  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