Windows: Schwachstellen schneller finden mit Diffray

Mit der Python-Software Diffray lassen sich verdächtige Codestellen in DLL-Dateien in Windows 7 schnell aufspüren. Grundlage ist ein Vergleich zwischen Windows 8 und seinem Vorgänger.

Artikel veröffentlicht am ,
Die beiden Security-Forscher Marion Marschalek und Joseph Moti wollen die Suche nach Schwachstellen in Windows automatisieren.
Die beiden Security-Forscher Marion Marschalek und Joseph Moti wollen die Suche nach Schwachstellen in Windows automatisieren. (Bild: Jörg Thoma/Golem.de)

Offenbar hat Microsoft nicht alle Schwachstellen nachträglich in Windows 7 gepatcht, die in Windows 8 bereits behoben sind. Auf der Suche nach verdächtigem Code haben die Entwickler ein automatisiertes Verfahren entwickelt, das mögliche Lücken schneller aufspürt. Mit mehreren Hilfsmitteln haben sie eine Datenbank erstellt, und mit einfachem Diff suchen sie Unterschiede zwischen Windows-Versionen.

  • Die Benutzeroberfläche von Diffray (Bild: Marion Marschalek und Joseph Moti)
  • Verdächtiger Code in einer Windows-Bibliothek (Bild: Marion Marschalek und Joseph Moti)
Die Benutzeroberfläche von Diffray (Bild: Marion Marschalek und Joseph Moti)
Stellenmarkt
  1. IS-H/i.s.h. med-Modulbetreuer*in (m/w/d)
    Universitätsmedizin der Johannes Gutenberg-Universität Mainz, Mainz
  2. Senior Softwareentwickler (m/w/d) in der Anwendungsentwicklung
    Allianz Technology SE, Unterföhring
Detailsuche

Bislang ungepatchte Lücken in Windows zu entdecken, kann ein durchaus lukratives Geschäft sein. Zwischen 60.000 und 120.000 US-Dollar kosten die sogenannten Zero-Day-Lücken in einschlägigen Foren. Dabei geht es darum, sie möglichst schnell zu finden. Die beiden Security-Forscher Marion Marschalek und Joseph Moti wollten für das nicht ganz neue Verfahren, Schwachstellen anhand von Vergleichen zwischen zwei Betriebssystemversionen zu ermitteln, eine möglichst schnelle und effiziente Lösung finden. Sie stellten ihr Projekt auf der Sicherheitskonferenz Troopers 2014 vor.

Suche im Assembler-Code

Die Suche nach Schwachstellen beginnt mit einem Blick in die Patches für Windows 8. Wenn es sie für Windows 7 noch nicht gibt, ist das bereits verdächtig. Die in den Patches enthaltenen DLL-Dateien untersuchten die beiden Forscher dann genauer. Zunächst wandelten sie den Binärcode mit dem Diassembler IDA Pro in Assembler-Quelltext um. In diesem suchten sie nach Funktionsaufrufen, die in den ungepatchten Versionen fehlten.

Marschalek und Moti haben eine Liste als sicher geltender Funktionen erstellt, die sie unter anderem in der Entwicklungsumgebung Visual Studio gefunden haben. Ist ein solcher Funktionsaufruf unter der einen Windows-Version zu finden, in der anderen aber nicht, könnte das ein Hinweis darauf sein, dass es eine Schwachstelle gibt.

Automatisiert mit Diffray

Golem Akademie
  1. Einführung in die Programmierung mit Rust: virtueller Fünf-Halbtage-Workshop
    21.–25. März 2022, Virtuell
  2. Webentwicklung mit React and Typescript: virtueller Fünf-Halbtage-Workshop
Weitere IT-Trainings

Mit ihrer Python-basierten Software Diffray wollen die beiden Security-Forscher die Suche nach Schwachstellen automatisieren. Nachdem die Windows-Bibliotheken disassembliert sind, wird der Code in eine Datenbank eingepflegt, in der bereits die Funktionsaufrufe stehen. Zunächst werden zwei Versionen der Bibliotheksdateien ver- und dann mit den Funktionsaufrufen abgeglichen.

Die Ergebnisse müssen die beiden Forscher aber noch selbst auf mögliche Schwachstellen untersuchen, da sich das nicht automatisieren lässt. Von 100 gefundenen verdächtigen Codeeinträgen ließe sich einer ausnutzen, vermuten die beiden Sicherheitsforscher.

Noch zu viele False Positives

Noch gibt es einige Probleme. Zum einen dauert der Vorgang noch ziemlich lange. Alle Systembibliotheken von Windows 8 einzulesen, würde mehrere Tage dauern. Deshalb untersuchen sie zunächst die Bibliotheksdateien, die in Patches enthalten sind. Außerdem bringt Marschaleks und Motis Verfahren noch zu viele False Postives hervor, durchschnittlich etwa 90 Prozent. An Diffray wird noch entsprechend gefeilt. Aktuell liegt die Beta der Software in Version 0.9 auf Github vor.

Wenn sie mit dem Vergleich der Kernel-Module in Windows 7 und Windows 8 fertig sind, wollen sich die beiden Entwickler dem Vergleich zwischen Windows 8 und Windows 8.1 widmen.

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


Aktuell auf der Startseite von Golem.de
Corona-Warn-App
Jede geteilte Warnung kostete 100 Euro

Die Bundesregierung hat für die Corona-Warn-App bisher mehr als 130 Millionen Euro ausgegeben. Derzeit gibt es besonders viele rote Warnungen.

Corona-Warn-App: Jede geteilte Warnung kostete 100 Euro
Artikel
  1. Activision Blizzard: Was passiert mit Call of Duty, Diablo und Xbox Game Pass?
    Activision Blizzard
    Was passiert mit Call of Duty, Diablo und Xbox Game Pass?

    Playstation als Verlierer und Exklusivspiele für den Xbox Game Pass: Golem.de über die bislang größte Übernahme durch Microsoft.
    Eine Analyse von Peter Steinlechner

  2. Dice: Update-Roadmap für Battlefield 2042 vorgestellt
    Dice
    Update-Roadmap für Battlefield 2042 vorgestellt

    Ob das reicht? Das Entwicklerstudio Dice hat seine Pläne für Battlefield 2042 vorgestellt. Der Shooter hat extrem niedrige Spielerzahlen.

  3. Glasfaser in Freiburg: Telekom kommt wegen wirrer Auflagen nicht weiter
    Glasfaser in Freiburg
    Telekom kommt wegen wirrer Auflagen nicht weiter

    Um Bauwurzeln zu schonen, sollte die Telekom in Freiburg Glasfaser im Zickzack ausbauen. Das dortige Tiefbauamt lehnte den Plan des Gartenbauamtes aber ab.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • LG OLED 55" 120Hz 999€ • MindStar (u.a. NZXT WaKü 129€, GTX 1660 499€) • Seagate Firecuda 530 1TB inkl. Kühlkörper + 20€ PSN-Guthaben 189,90€ • HP Omen Gaming-Stuhl 319€ • Sony Pulse 3D Wireless PS5 Headset 79,99€ • Huawei MateBook 16,1" 16GB 512GB SSD 709€ [Werbung]
    •  /