PDF-Vergleich unter Windows und MacOS soll Malware finden

Das selbe PDF-Dokument in Windows und MacOS zu öffnen, sollte das selbe Ergebnis zeitigen. Wenn nicht, ist wahrscheinlich Malware drin. Diesen Ansatz verfolgen Forscher des Georgia Institute of Technology.

In Pocket speichern vorlesen Druckansicht 59 Kommentare lesen
T-Shirt mit Aufschrift "All you need is love, all you find is 0day"

Ein Teilnehmer der 26. Usenix Security in Vancouver

(Bild: Daniel AJ Sokolov)

Lesezeit: 4 Min.
Inhaltsverzeichnis

Im Kampf gegen Malware in PDF-Dokumenten könnte bald ein neuer Pfeil im Köcher helfen. Meng Xu und Taesoo Kim, Sicherheitsforscher am Georgia Institute of Technology, setzen auf das parallele Öffnen von PDF-Dokumenten in einem virtuellen Windows-System und einem virtuellen MacOS-System. Dabei beobachten sie ausgewählte interne Systemabläufe. Saubere PDF zeigen dabei stets idente Ergebnisse.

Adobes Firmenzentrale in San Jose, Kalifornien

(Bild: Coolcaesar CC BY-SA 3.0)

Xu und Kim haben ihr Analysesystem "PlatPal" getauft und im August auf der 26. Usenix Security in Vancouver vorgestellt. Es setzt auf zwei Tracer: Einen internen Tracer, der als Plugin im Adobe Acrobat Reader installiert ist, und einen externen Tracer (NtTrace in Windows, Dtrace in MacOS). Letzterer observiert das System, nachdem das zu untersuchende Dokument vom Acrobat Reader geladen wurde.

Die Verarbeitung einer sauberen PDF-Datei im Adobe Acrobat Reader folgt vorhersehbaren Mustern, bei denen zumindest die Callbacks unter Windows und MacOS gleich sind. PlatPals Tracer-Plugin beobachtet und vergleicht COS object parsing, die Erstellung des PD-Baums, die (nur schrittweise ausgeführten) Scripts, Callbacks während des Renderings und Callbacks bei bestimmten anderen Funktionen.

Der externe Tracer steht vor der Herausforderung, dass Systemaufrufe zwischen Windows und MacOS grundsätzlich sehr unterschiedlich sind. Daher konzentriert sich PlatPal auf drei Aspekte:

  • Vorgänge im Dateisystem (welche Dateien werden geöffnet, erstellt, gelöscht, umbenannt, verlinkt, etc.)
  • Netzwerkverkehr (welche Domains und IP-Adressen werden über welche Ports aufrufen)
  • Ausführung anderer ausführbarer Dateien

Außerdem werden etwaige Programmabstürze registriert. Nähere Details sind im Paper "PlatPal: Detecting Malicious Documents with Platform Diversity" nachzulesen. Die Forscher möchten ein Online-Service auf die Beine stellen, der das hochgeladene PDF scannt. Außerdem haben sie angekündigt, PlatPal als Open Source zu veröffentlichen. Damit könnten beispielsweise Clouddienste gespeicherte PDF-Dokumente durchscannen.

Den Angaben zu Folge erzeugt PlatPal keine Fehlalarme: In einem Test mit 1.030 unterschiedlichen, sauberen PDF-Dateien fand PlatPal keine Diskrepanzen. 1.000 dieser Dateien hatten Xu und Kim über Google gefunden, 30 waren gezielt ausgewählte Beispiele neuerer PDF-Features.

Bei 77 der 320 von Virustotal bezogenen PDF schlug PatPal nicht Alarm. Das Diagramm zeigt die Verteilung dieser 77 PDF.

(Bild: Xu et Kim)

Umgekehrt holten sie sich von Virustotal 320 als verseucht markierte Dateien, die allesamt nach 2013 bekannt gewordene Sicherheitslücken ausnutzten. Zur Dateiöffnung nutzte PlatPal jeweils jene Version des Adobe Acrobat Reader, die zum Zeitpunkt der Veröffentlichung der Sicherheitslücke (CVE) aktuell war.

Zwei Drittel dieser 320 Dateien zeigten auffällige Unterschiede bei der Verarbeitung, weitere elf Prozent führten überhaupt zu einem Absturz. PlatPal löste also in drei Viertel der Fälle Alarm aus. Vom restlichen Viertel wollte die Hälfte Sicherheitslücken in schon damals veralteten Versionen des Acrobat Readers ausnutzen, ein weiteres Viertel enthielt entgegen der Angaben wenigstens eines Antiviren-Herstellers offenbar gar keine Malware. In zwei Dateien wurde die Malware nicht aktiv, im Rest wurde sie nicht erkannt.

PlatPal ist kein Allheilmittel. Es soll etablierte Verfahren wie externe Parser, die Suche nach Signaturen bekannter Viren oder Verfahren mit Künstlicher Intelligenz nicht ersetzen, sondern ergänzen. Angriffe, die in beiden Betriebssystem-Welten ähnlich ablaufen, sind möglich, aber deutlich schwieriger durchzuführen.

Naturgemäß keinen Schutz bietet PlatPal gegen nutzergesteuerte Attacken oder Angriffe mit Social Engineering. Mit Linux haben sich Xu und Kim nicht auseinandergesetzt, da Adobe in diesem Bereich das Handtuch geworfen hat. Zwar gibt es eine Reihe von PDF-Programmen für Linux, aber keinen Adobe Acrobat Reader 10.x. (ds)