Abo
  • Services:
Anzeige
American Fuzzy Lop kann Bugs wie Heartbleed finden.
American Fuzzy Lop kann Bugs wie Heartbleed finden. (Bild: Screenshot)

Fuzzing: Wie man Heartbleed hätte finden können

American Fuzzy Lop kann Bugs wie Heartbleed finden.
American Fuzzy Lop kann Bugs wie Heartbleed finden. (Bild: Screenshot)

Vor einem Jahr machte der Heartbleed-Bug in OpenSSL Schlagzeilen - doch solche Bugs lassen sich mit Hilfe von Fuzzing-Technologien aufspüren. Wir haben das mit den Tools American Fuzzy Lop und Address Sanitizer nachvollzogen und den Heartbleed-Bug neu entdeckt.
Von Hanno Böck

Vor einem Jahr, am siebten April 2014, veröffentlichten die Entwickler von OpenSSL Details zu einem Fehler in ihrer Software. Der Bug, der den Namen Heartbleed erhielt, führte zu einer intensiven Debatte über die Sicherheit wichtiger freier Softwareprojekte. Vielfach wurde dabei die Frage gestellt, warum dieser Fehler nicht früher gefunden wurde - über zwei Jahre befand sich Heartbleed im OpenSSL-Code.

Anzeige

Hätte Fuzzing Heartbleed gefunden?

Eine relativ simple Möglichkeit, Fehler in Software zu finden, ist das sogenannte Fuzzing. Die Idee dabei: Eine Software wird immer wieder mit Eingabedaten aufgerufen, die kleine Fehler enthalten. Stürzt das Programm ab, ist oft ein Fehler gefunden - in vielen Fällen deuten Abstürze auf fehlerhafte Speicherzugriffe hin, die zu Sicherheitslücken führen. Der IT-Sicherheitsspezialist David A. Wheeler hat sich nach Heartbleed ausführlich damit beschäftigt, ob und wie Fuzzing Heartbleed hätte finden können. Der Autor dieses Artikels konnte diese Frage nun in der Praxis beantworten.

Selbstverständlich ist es einfach, einen Fehler zu finden, wenn klar ist, wonach gesucht werden muss. Deshalb war bei diesem Experiment wichtig, dass keine spezifischen Informationen über Heartbleed genutzt werden sollten. So handelte es sich um einen Fehler in der TLS-Erweiterung Heartbeat - die kannte zum damaligen Zeitpunkt aber kaum jemand.

Fehlerhafter Lesezugriff im Speicher

Bei Heartbleed handelt es sich um einen Buffer Overflow beim Lesezugriff auf den Speicher. Solche Pufferüberläufe sind sehr häufig und auch schon seit Jahrzehnten bekannt. Als der Chaos Computer Club vor 30 Jahren das BTX-System der damaligen Deutschen Post hackte, nutzten die CCC-Mitglieder einen Bug, der Heartbleed erstaunlich ähnlich ist - zumindest wenn man ihrer Version der Geschichte glaubt.

Ein einfaches Beispiel für einen Buffer Overflow: Ein Programm nutzt einen Speicherbereich, der zehn Bytes lang ist. Versucht das Programm nun, aus diesem Speicherbereich 20 Bytes zu lesen, greift die Software auf den Speicher zu, der sich daneben befindet. Was dort gerade liegt, ist nicht genau vorhersehbar und hängt von vielen Details ab.

Um ein Programm erfolgreich fuzzen zu können, müssen die entsprechenden Fehler natürlich erkennbar sein, etwa durch einen Programmabsturz. Doch während schreibende Buffer Overflows meistens ein Programm zum Absturz bringen, läuft Software bei lesenden Buffer Overflows oft einfach weiter.

Es gibt eine Reihe von Tools, die eine bessere Erkennung von ungültigen Speicherzugriffen ermöglichen. Ein bekanntes Tool dieser Art ist Valgrind. Allerdings hat es einen Nachteil: Es ist extrem langsam, und die Ausführung eines Programms mit Hilfe von Valgrind dauert etwa zwanzigmal so lang wie sonst. Da man beim Fuzzing ein Programm millionenfach aufruft, ist Valgrind hier impraktikabel.

Address Sanitizer und American Fuzzy Lop 

eye home zur Startseite
Manga 27. Apr 2015

Ja stimmt... Du hast vollkommen recht... Es ist in der Größenordnung wie Native code...

olleIcke 16. Apr 2015

btw: bei xkcd wurde es auch schön anschaulich erklärt wie ich finde: xkcd.com/1354...

EvilSheep 09. Apr 2015

dem wunsch schliese ich mich an!

estev 09. Apr 2015

Made my day.

heftig 09. Apr 2015

Verdammt... zu spät :D



Anzeige

Stellenmarkt
  1. TAMPOPRINT® AG, Korntal-Münchingen
  2. Stadtwerke München GmbH, München
  3. über JobLeads GmbH, Hamburg
  4. European XFEL GmbH, Schenefeld


Anzeige
Blu-ray-Angebote
  1. (u. a. Space Jam 11,97€, Ex Machina 9,97€, Game of Thrones 3. Staffel 24,97€)
  2. (u.a. The Big Bang Theory, True Detective, The 100)
  3. 2,99€ (ohne Prime bzw. unter 29€ Einkauf zzgl. 3€ Versand)

Folgen Sie uns
       

Anzeige
Whitepaper
  1. Globale SAP-Anwendungsunterstützung durch Outsourcing


  1. Nokia 3, 5 und 6

    HMD Global bringt drei Nokia-Smartphones mit Android

  2. Moto G5 und Moto G5 Plus im Hands on

    Lenovos kompakte Mittelklasse ist zurück

  3. Handy-Klassiker

    HMD Global bringt das Nokia 3310 zurück

  4. Galaxy Tab S3 im Hands on

    Samsung präsentiert Oberklasse-Tablet mit Eingabestift

  5. Galaxy Book im Hands on

    Samsung bringt neuen 2-in-1-Computer

  6. Mobilfunk

    "5G muss weit mehr als LTE bieten"

  7. UHS-III

    Neuer (Micro-)SD-Karten-Standard schafft über 600 MByte/s

  8. Watch 2 im Hands on

    Huaweis neue Smartwatch soll bis zu 21 Tage lang durchhalten

  9. LG G6 im Hands on

    Schlankes Smartphone hat zwei Kameralinsen

  10. P10 und P10 Plus im Hands on

    Huaweis neues P10 kostet 600 Euro



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Trappist-1: Der Zwerg und die sieben Planeten
Trappist-1
Der Zwerg und die sieben Planeten
  1. Weltraumteleskop Erosita soll Hinweise auf Dunkle Energie finden
  2. Astrophysik Ferne Galaxie schickt grelle Blitze zur Erde
  3. Astronomie Vera Rubin, die dunkle Materie und der Nobelpreis

Limux: Die tragische Geschichte eines Leuchtturm-Projekts
Limux
Die tragische Geschichte eines Leuchtturm-Projekts
  1. Limux München prüft Rückkehr zu Windows
  2. Limux-Projekt Windows könnte München mehr als sechs Millionen Euro kosten
  3. Limux Münchner Stadtrat ignoriert selbst beauftragte Studie

Wacoms Intuos Pro Paper im Test: Weg mit digital, her mit Stift und Papier!
Wacoms Intuos Pro Paper im Test
Weg mit digital, her mit Stift und Papier!
  1. Wacom Brainwave Ein Graph sagt mehr als tausend Worte
  2. Canvas Dells Stift-Tablet bedient sich bei Microsoft und Wacom
  3. Intuos Pro Wacom verbindet Zeichentablet mit echtem Papier

  1. Re: Was ist denn das bitte?

    User_x | 22:23

  2. Re: Datenrate und Latenz sind für den Nutzer eher...

    ChMu | 22:22

  3. Festival Handy

    ArcherV | 22:22

  4. Re: Anscheinend gibt es keine gesetzlichen Vorgaben.

    plutoniumsulfat | 22:19

  5. Ist halt ein Mobiltelefon

    Reci | 22:16


  1. 21:13

  2. 20:32

  3. 20:15

  4. 19:00

  5. 19:00

  6. 18:45

  7. 18:10

  8. 17:48


  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