Abo
  • IT-Karriere:

Address Sanitizer und American Fuzzy Lop

Ein für diesen Zweck besser geeignetes Tool ist Address Sanitizer. Dabei handelt es sich um eine Erweiterung des Compilers. Address Sanitizer ist seit einigen Jahren in den beiden wichtigsten freien C-Compilern GCC und LLVM integriert. Um es zu aktivieren, muss man ein Programm mit dem Parameter -fsanitize=address kompilieren. Auch Address Sanitizer macht ein Programm langsamer, allerdings im Durchschnitt nur um den Faktor 1,8 und ist damit für Fuzzing gut geeignet.

Stellenmarkt
  1. eXXcellent solutions GmbH, Ulm, München, Stuttgart, Darmstadt, Berlin
  2. Apollo-Optik Holding GmbH & Co. KG, Schwabach / Metropolregion Nürnberg

Ein Fuzzing-Tool, das in letzter Zeit Furore machte, ist American Fuzzy Lop. Entwickelt wurde es von Michal Zalewski vom Google-Sicherheitsteam, der auch unter seinem Nickname Lcamtuf bekannt ist. Mit Hilfe von American Fuzzy Lop wurden schon unzählige Sicherheitslücken in diversen Programmen gefunden.

Das Tool fügt dem zu testenden Programm spezielle Instruktionen hinzu, die es erlauben, Codepfade zu erkennen. Wenn American Fuzzy Lop bei einer bestimmten Eingabe einen neuen Codepfad erkennt, wird diese Eingabedatei als Startpunkt für das weitere Fuzzing genutzt.

Das Tool ist allerdings bisher nicht in der Lage, direkt Netzwerkeingaben zu fuzzen; es arbeitet lediglich auf Dateibasis. OpenSSL besitzt ein Kommandozeilentool, mit dem es etwa möglich ist, den Parser für Zertifikate und einige andere Dinge zu fuzzen, aber Heartbleed ist ein Fehler beim TLS-Handshake. Um hier mit einem Fuzzer anzugreifen, ist etwas mehr Arbeit nötig.

OpenSSL mit sich selbst reden lassen

Der Autor dieses Artikels hat hierfür ein kleines Tool erstellt, das zwei Instanzen von OpenSSL miteinander einen Handshake durchführen lässt. Dabei findet keine echte Netzwerkkommunikation statt, die Handshake-Pakete werden lediglich über den Arbeitsspeicher hin- und hergereicht. Das Tool speichert dabei alle Handshake-Pakete als Dateien ab, ein normaler Handshake führt zu vier Datenpaketen. Zusätzlich besteht die Möglichkeit, auf der Kommandozeile Dateien zu übergeben und dadurch jeweils einen Teil des Handshakes zu ersetzen. Damit ist es möglich, den Handshake zu fuzzen.

Will man American Fuzzy Lop und Address Sanitizer in Kombination benutzen, gibt es ein paar Hürden. Address Sanitizer nutzt für seine Funktionalität einen mehrere Terabytes großen, virtuellen Speicherbereich. Da es sich nur um virtuellen Speicher handelt, ist dies kein direktes Problem. American Fuzzy Lop limitiert jedoch den virtuellen Speicher, den ein Programm nutzen darf. Es gibt verschiedene Ansätze, wie sich dieses Problem angehen lässt, sie haben aber alle Nachteile. In unserem Fall haben wir eine sehr einfache Lösung gewählt: Wir haben das Speicherlimit von American Fuzzy Lop deaktiviert (Parameter -m -1).

Das ist nicht ganz ungefährlich: In seltenen Fällen kann es dazu kommen, dass ein Fuzzing-Input dazu führt, dass ein Programm den gesamten Speicher eines Systems aufbraucht. Das kann auf dem System zu Programmabstürzen führen; in der Praxis kommt dies allerdings selten vor. Es sollten auf dem entsprechenden System nicht gleichzeitig wichtige Arbeiten durchgeführt werden.

 Fuzzing: Wie man Heartbleed hätte finden könnenFuzzing des TLS-Handshakes 
  1.  
  2. 1
  3. 2
  4. 3
  5.  


Anzeige
Spiele-Angebote
  1. 4,16€
  2. 4,99€
  3. (-77%) 3,45€

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


Folgen Sie uns
       


Raspberry Pi 4B - Test

Der Raspberry Pi kann endlich zur Konkurrenz aufschließen, aber richtig glücklich werden wir mit dem neuem Pi-Modell trotz bemerkenswerter Merkmale nicht.

Raspberry Pi 4B - Test Video aufrufen
Faire IT: Die grüne Challenge
Faire IT
Die grüne Challenge

Kann man IT-Produkte nachhaltig gestalten? Drei Startups zeigen, dass es nicht so einfach ist, die grüne Maus oder das faire Smartphone auf den Markt zu bringen.
Von Christiane Schulzki-Haddouti

  1. Smartphones Samsung und Xiaomi profitieren in Europa von Huawei-Boykott
  2. Smartphones Xiaomi ist kurz davor, Apple zu überholen
  3. Niederlande Notrufnummer fällt für mehrere Stunden aus

Schienenverkehr: Die Bahn hat wieder eine Vision
Schienenverkehr
Die Bahn hat wieder eine Vision

Alle halbe Stunde von einer Stadt in die andere, keine langen Umsteigezeiten zur Regionalbahn mehr: Das verspricht der Deutschlandtakt der Deutschen Bahn. Zu schön, um wahr zu werden?
Eine Analyse von Caspar Schwietering

  1. DB Navigator Deutsche Bahn lädt iOS-Nutzer in Betaphase ein
  2. One Fiber EWE will Bahn mit bundesweitem Glasfasernetz ausstatten
  3. VVS S-Bahn-Netz der Region Stuttgart bietet vollständig WLAN

Noise Cancelling Headphones 700 im Test: Boses bester ANC-Kopfhörer sticht Sony vielfach aus
Noise Cancelling Headphones 700 im Test
Boses bester ANC-Kopfhörer sticht Sony vielfach aus

Bose schafft mit seinen neuen Noise Cancelling Headphones 700 eine fast so gute Geräuschreduzierung wie Sony und ist in manchen Punkten sogar besser. Die Kopfhörer haben uns beim Testen aber auch mal genervt.
Ein Test von Ingo Pakalski

  1. Bose Frames im Test Sonnenbrille mit Musik
  2. Noise Cancelling Headphones 700 ANC-Kopfhörer von Bose versprechen tollen Klang
  3. Frames Boses Audio-Sonnenbrille kommt für 230 Euro nach Deutschland

    •  /