• IT-Karriere:
  • Services:

Darpa Cyber Grand Challenge: Mayhem gewinnt Kampf der IT-Security-Bots

Sieben Programme zum automatischen Erkennen und Patchen von Sicherheitslücken traten im Rahmen der Darpa Cyber Grand Challenge gegeneinander an. Die meisten Teilnehmer nutzten dabei eine Kombination aus Fuzzing und Symbolic Execution.

Artikel veröffentlicht am , Hanno Böck
Die "Teilnehmer" der Cyber Grand Challenge - bei der Def Con traten sie gegeneinander an.
Die "Teilnehmer" der Cyber Grand Challenge - bei der Def Con traten sie gegeneinander an. (Bild: Darpa)

In der von der US-Behörde Darpa ausgerichteten Cyber Grand Challenge traten verschiedene Softwaresysteme gegeneinander an, deren Aufgabe es war, vollautomatisch Sicherheitslücken zu finden, zu patchen und zu exploiten. Gewonnen hat das Programm Mayhem vom Team ForAllSecure. Geleitet wird das Forscherteam von David Brumley von der Carnegie-Mellon-Universität in Pittsburgh.

Sicherheitslücken erkennen, patchen und exploiten

Stellenmarkt
  1. Statistisches Bundesamt, Wiesbaden
  2. AKKA, München

Im Wettbewerb musste die Software der teilnehmenden Teams eine Binary analysieren, die einen Netzwerkservice bereitstellt. Vorab kannten die Teams die Binary nicht. Zunächst sollten funktionierende Exploits erstellt werden. Zwei Varianten von Exploits zählten demnach: Angriffe, die es ermöglichen, ein bestimmtes Register zu überschreiben und den Instruction Pointer zu kontrollieren oder solche, bei denen der Angreifer Teile des Serverspeichers auslesen kann. Neben den Exploits sollte die Binary auch gepatcht werden, um die vorhandenen Sicherheitslücken zu beseitigen.

Punkte gab es sowohl für erfolgreiche Exploits gegen die Original-Binary als auch für Exploits gegen die gepatchten Versionen der Gegner. Auch musste die gepatchte Binary weiterhin den Service bereitstellen, es musste also dafür gesorgt werden, dass die Patches nicht die Funktionalität beeinträchtigen. Für Performanceeinbußen gab es Punktabzug. Während des gesamten Wettbewerbs gab es für die Teams keine Möglichkeit, manuell einzugreifen, die Software musste alles automatisch erledigen.

Bei der Darpa-Challenge kam ein vereinfachtes Betriebssystem zum Einsatz. David Brumley sagte im Gespräch mit Golem.de jedoch, dass die verwendeten Technologien mit wenigen Änderungen auch auf echten Betriebssystemen genutzt werden können. Vor drei Jahren hatte Brumleys Team eine frühe Version der Mayhem-Software genutzt, um zahlreiche Crashes in Debian-Paketen zu finden.

Viele Teams setzen auf American Fuzzy Lop

Der Mayhem-Bot setzte bei der Bugsuche auf eine Kombination des Fuzzing-Tools American Fuzzy Lop (AFL) und einer sogenannten Symbolic-Execution-Engine. AFL ist ein Coverage-basierter Fuzzer, er testet verschiedene Eingaben und erkennt anhand der verwendeten Codepfade interessante Eingaben. Das originale AFL funktioniert nur mit Software, für die man den Quellcode besitzt, da es den Code mit speziellen Instruktionen versieht, die eine Erkennung der Codepfade ermöglichen. Brumleys Team nutzte daher eine eigene Variante der Instrumentierung, die auf eine Binärdatei angewendet werden kann. Andere Teams, die denselben Fuzzer nutzten, machten dabei vom in AFL bereits vorhandenen QEMU-Modus Gebrauch. Dieser ist allerdings vergleichsweise langsam.

Coverage-basiertes Fuzzing, wie es AFL verwendet, ist zwar sehr effektiv, um Bugs zu finden, in einigen Situationen kommt der Fuzzer jedoch nicht von selbst weiter. Das ist etwa dann der Fall, wenn ein bestimmter längerer String in der Eingabe notwendig ist, um eine bestimmte Funktionalität auszulösen. Um solche Fälle abzudecken, setzte der Mayhem-Bot auf Symbolic Execution. Dabei handelt es sich um eine formale Analyse der Software, die entsprechende Eingaben erzeugt, um bestimmte Codepfade zu erreichen. Auf ganze Programme angewendet ist Symbolic Execution oft kaum praktikabel, da es viel zu viele mögliche Codepfade und Eingaben gibt.

American Fuzzy Lop ist in gewisser Weise ein heimlicher Gewinner der Darpa-Challenge: Die meisten der teilnehmenden Teams setzten laut Brumley auf eine Kombination von AFL und anderen Technologien.

Neben dem Patchen von erkannten Sicherheitslücken nutzte Brumleys Team eine generische Methode, um Control-Flow-Integrity (CFI) nachträglich in die Binaries zu integrieren. Dabei handelt es sich um Mechanismen, die generisch die Ausnutzung bestimmter Bug-Klassen verhindern sollen. Die verwendete CFI-Technologie hat dabei einen Performance-Overhead von etwa fünf Prozent.

Das ForAllSecure-Team will seine Technologie kommerziell vermarkten und ist somit gleichzeitig auch ein Startup. Für andere Forscher und Hacker, die sich die Technologien ansehen wollen, ist das bedauerlich, da die verwendeten Tools nicht öffentlich zugänglich sind. Das drittplazierte Team Shellphish gibt sich da offener: Ein Analysetool namens angr ist unter einer freien Lizenz verfügbar, weitere Tools sollen nach der Def Con veröffentlicht werden.

Zumindest vorläufig müssen sich IT-Security-Experten wohl noch nicht sorgen, dass ihre Jobs bald durch Bots ersetzt werden. David Brumley sieht die Aufgabe derartiger Tools vorerst darin, Sicherheitslücken in schlecht gewarteter Software wie beispielsweise DSL-Routern zu finden. Erst in einigen Jahrzehnten sieht er diese so weit, dass sie mit den besten menschlichen Bug-Suchern mithalten können.

Mayhem chancenlos bei "Capture the Flag"

Der Gewinner-Bot Mayhem durfte im Rahmen der Def Con auch am "Capture the Flag"-Contest teilnehmen, einem Hackerwettbewerb mit menschlichen Teams. Wenig überraschend musste sich der Bot den meisten menschlichen Teams geschlagen geben: Es reichte nur für einen vorletzten Platz.

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


Anzeige
Hardware-Angebote

ApoY2k 09. Aug 2016

Top, danke! Werd mal reinschauen.

brotherelf 08. Aug 2016

der bekommt jetzt ein Jahr lang von den Kollegen zu hören, ob er denn einen...


Folgen Sie uns
       


IBM - von der Lochkarte zum Quantencomputer (Golem Geschichte)

Golem.de erzählt die über 100-jährige Geschichte von Big Blue im Video.

IBM - von der Lochkarte zum Quantencomputer (Golem Geschichte) Video aufrufen
Cyberpunk 2077 angespielt: Zwischen Beamtenbestechung und Gunplay mit Wumms
Cyberpunk 2077 angespielt
Zwischen Beamtenbestechung und Gunplay mit Wumms

Mit dem Auto von der Wüste bis in die große Stadt: Golem.de hat den Anfang von Cyberpunk 2077 angespielt.
Von Peter Steinlechner

  1. CD Projekt Red Cyberpunk 2077 nutzt Raytracing und DLSS 2.0
  2. Cyberpunk 2077 Die Talentbäume von Night City
  3. CD Projekt Red Cyberpunk 2077 rutscht in Richtung Next-Gen-Startfenster

Laravel/Telescope: Die Sicherheitslücke bei einer Bank, die es nicht gibt
Laravel/Telescope
Die Sicherheitslücke bei einer Bank, die es nicht gibt

Ein Leser hat uns auf eine Sicherheitslücke auf der Webseite einer Onlinebank hingewiesen. Die Lücke war echt und betrifft auch andere Seiten - die Bank jedoch scheint es nie gegeben zu haben.
Ein Bericht von Hanno Böck

  1. IT-Sicherheitsgesetz Regierung streicht Passagen zu Darknet und Passwörtern
  2. Callcenter Sicherheitsexperte hackt Microsoft-Betrüger
  3. Sicherheit "E-Mail ist das Fax von morgen"

Außerirdische Intelligenz: Warum haben wir noch keine Aliens gefunden?
Außerirdische Intelligenz
Warum haben wir noch keine Aliens gefunden?

Seit Jahrzehnten gucken wir mit Teleskopen tief ins All. Außerirdische haben wir zwar bisher nicht entdeckt, das ist aber kein Grund, an ihrer Existenz zu zweifeln.
Von Miroslav Stimac


      •  /