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)

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

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
Intel Core i9-14900KS
Intel ist wahnsinnig geworden - zum Glück!

Um den Core i9-14900KS zur schnellsten Allround-CPU zu machen, hat Intel den Weg der Vernunft scheinbar vollständig verlassen. Doch dahinter stecken gute Neuigkeiten für Intel-Kunden.
Ein IMHO von Martin Böckmann

Intel Core i9-14900KS: Intel ist wahnsinnig geworden - zum Glück!
Artikel
  1. Truth Social: Warum Trumps kleines Netzwerk Milliarden wert wurde
    Truth Social
    Warum Trumps kleines Netzwerk Milliarden wert wurde

    Donald Trumps verlustbringender Twitter-X-Klon Truth Social wird nach seinem Börsengang mit 9 Milliarden US-Dollar bewertet. Es ist eine Spekulationsblase - und eine Investition in eine potenzielle Trump-Präsidentschaft.
    Ein Bericht von Achim Sawall

  2. Warzone: Cheech und Chong kämpfen in Call of Duty
    Warzone
    Cheech und Chong kämpfen in Call of Duty

    Hippies als Elitesoldaten: Die dauerbekifften Filmfiguren Cheech und Chong treten demnächst als Extra in Call of Duty auf.

  3. Elektromobilität: Warum der Elektroauto-Hype erst anfängt
    Elektromobilität
    Warum der Elektroauto-Hype erst anfängt

    In den vergangenen Wochen konnte man den Eindruck gewinnen, als sei das Elektroauto schon abgeschrieben. Doch das scheint eine typisch deutsche Debatte zu sein.
    Eine Analyse von Friedhelm Greis

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 • Palit 4070 Super 579,95€ • Xbox-Controller ab 39,99€ • AVM Fritzbox + Repeater -30% • DVDs & Blu-rays -31% • EA -75% • Ubisoft -50% • MindStar: AMD Ryzen 9 7900 339€, MSI RTX 4080 Super Ventus 3X OC 1.099€ • Gratis-Zugaben PS5 Slim & Nintendo Switch OLED beim TV-Kauf [Werbung]
    •  /