dc.description.abstract
Malware (Computerviren, Trojaner, etc.) stellen heutzutage eines der größten Sicherheitsprobleme im Internet dar. Antiviren-Firmen bekommen typischerweise zehntausende neue Malware Dateien pro Tag. Um mit diesen großen Datenmengen zurecht zukommen, haben Forschung und Industrie gleichermaßen an der Entwicklung von automatisierten, dynamischen Malware-Analyse- Systemen gearbeitet. Solche Systeme führen ein zu untersuchendes Programm in einer speziell präparierten Umgebung aus und erstellen einen Bericht, der das Verhalten des Programms wiedergibt. Anubis, ein Programm, das größtenteils vom Autor entwickelt wurde, ist ein Beispiel solch eines automatisierten, dynamischen Analyse-Systems.<br />Um eine Analyse durchzuführen, überwacht Anubis den Aufruf von wichtigen Windows-API Funktionen und System-Calls, zeichnet Netzwerkverkehr auf, und verfolgt Datenströme. Für jede zu untersuchende Datei wird ein Bericht erstellt, der die Aktivitäten (u.a. welche Dateien, Windows-Registry- Keys, Windows-Services erzeugt worden sind) des Programms beinhaltet.<br />Anubis erhält Dateien durch ein öffentliches Web-Interface. Da die Dateien von einer Vielzahl an Benutzern stammen, stellen die von Anubis gesammelten Dateien eine umfassende und repräsentative Auswahl der gängigen Viren dar.<br />In dieser Dissertation stellen wir neuartige Techniken vor, um die Anwendung von automatisierter, dynamischer Analyse im großen Stil zu verbessern:<br />Wir versuchen typisches Malware-Verhalten zu ergründen. Dafür werten wir die Anubis-Analyse-Resultate von fast einer Million Dateien aus, untersuchen Trends und Evolutionen von bösartigem Verhalten über einen Zeitraum von ungefähr zwei Jahren und untersuchen den Einfluss von Polymorphismus auf Malware-Statistiken.<br />Automatisierte, dynamische Analyse-Systeme erlauben die Analyse tausender bösartiger Programme pro Tag. Jedes Analyseresultat liegt in der Form eines Anubis-Reports vor, der die Aktionen eines Programms zusammenfasst.<br />Jetzt ist man allerdings mit dem Problem konfrontiert, tausende Analyseresultate manuell bearbeiten zu müssen. Vor kurzem haben Forscher mit der Entwicklung von automatisierten Clustering-Systemen zur Identifizierung von Dateien mit ähnlichem Verhalten begonnen. Dadurch hat ein Analyst einer A/V-Firma die Möglichkeit, sich auf interessante, neue Bedrohungen zu konzentrieren, während er Reporte von bereits bekannten Malware-Programmen ignorieren kann. Leider skalieren bisherige Clustering-Systeme schlecht und haben noch Probleme damit, beobachtetes Verhalten gut genug zu generalisieren, um wirklich Malware-Familien zu erkennen.<br />Wir präsentieren in dieser Dissertation ein skalierbares Clustering-System zur Identifizierung und Gruppierung von Malware-Programmen mit ähnlichem Verhalten. Zu diesem Zweck führen wir zuerst eine dynamische Analyse durch, um eine Aufzeichnung der Funktionsaufrufe zu erhalten. Danach generalisieren wir diese Aufzeichnungen zu sogenannten Verhaltensprofilen.<br />Ein Verhaltensprofil charakterisiert das Verhalten eines Malware-Programms auf einer höheren Abstraktionsebene. Diese Verhaltensprofile dienen als Eingabe für unseren effizienten Clustering-Algorithmus, der es uns erlaubt Malware- Programme um eine Größenordnung schneller zu clustern als bisherige Techniken.<br />Weiters haben wir unser System mit Malware-Sammlungen aus der realen Welt getestet. Die Resultate demonstrieren, dass unsere Technik in der Lage ist Ähnlichkeiten zwischen Malware-Programmen zu erkennen und entsprechende Gruppen zu bilden. Dabei erzielen wir genauere Resultate als bisherige Techniken. Um die Skalierbarkeit des Systems zu zeigen, haben wir für eine Menge von fünfundsiebzigtausend Malware-Programmen in weniger als drei Stunden erfolgreich ein Clustering erstellt.<br />Innerhalb der letzten drei Jahre stieg die Anzahl an Malware-Programmen, die sich im Umlauf befinden, um den Faktor 10. Leider ist anzunehmen, dass die Anzahl an neuen Malware-Dateien in Zukunft noch weiter zunehmen wird. Damit die automatisierte, dynamische Analyse mit dieser Entwicklung Schritt halten kann - ohne weitere Kosten für neue Hardware zu verursachen - haben wir eine Technik entwickelt, die die Zeit für die Analyse einer bestimmten Menge von Programmen drastisch reduziert. Unsere Lösung basiert auf der Erkenntnis, dass die große Anzahl an neuen Malware-Programmen vor allem durch einfache, teilweise automatisierte Mutationen einiger weniger Malware Programme entsteht. Um Analysezeit zu sparen, schlagen wir eine Technik vor, die eine mehrmalige, vollständige Analyse von polymorphen Programmen vermeidet. In einem Experiment mit unserem Prototypen gelang es uns, bei einer Auswahl von 10.922 Dateien in 25,25 Prozent der Fälle eine vollständige Analyse zu vermeiden.<br />
de