Neue Wege zu mehr Sicherheit
07.09.2017, 10:14 Uhr
Malware-Prävention mit Machine Learning
Mathematisch-statistische Modelle auf Basis von Machine Learning beheben die Schwächen signaturbasierter Virenerkennung. Sie erkennen auch bislang unbekannte Malware.
Dieser Artikel wurde von Detlev Pacholke verfasst, Senior Solution Manager Digital Workforce & Mobility bei NTT Security.
Die Problematik signaturbasierter Erkennung liegt auf der Hand: Auf diese Weise kann nur bereits bekannte und erfasste Malware bekämpft werden. Es kommt daher zu einem ständigen Wettlauf zwischen dem Erfassen und dem Entstehen neuer, noch nicht gesichteter Malware; ein Wettlauf, bei dem naturgemäss die Angreifer immer einen Schritt voraus sind. Oft müssen sie ihre Software nur geringfügig verändern, um unerkannt zu bleiben.
Aus diesem Grund wurden schon etliche alternative und ergänzende Verfahren entwickelt, so etwa Sandboxing, Micro-Virtualisierung oder Exploit Protection. Relativ neu im Markt sind Verfahren, die auf Machine Learning (ML) basieren, bei denen also Malware-Prozesse mit mathematisch-statistischen Modellen erkannt und verhindert werden sollen.
“„Mit Machine Learning kann der Angreifer nicht mehr einfach eine bestehende Malware leicht abwandeln.“„
Der amerikanische Hersteller Cylance war der erste, der eine solche Lösung anbot, mittlerweile gibt es auch andere. Im Unterschied zu signaturbasierten Verfahren kann damit auch unbekannte Malware identifiziert werden. Zudem kommen auch durch Verschlüsselung oder Packing geschützte Schädlinge ans Licht. Das Erkennen von Malware auf Basis von ML und das Verhindern der Ausführung basiert auf vier Phasen: sammeln, extrahieren, lernen und klassifizieren.
Daten sammeln
Auch beim Machine Learning beginnt die Analyse mit dem Sammeln von Daten, konkret von Dateien, die ausführbaren Code enthalten können. Darunter fallen zum Beispiel auch Microsoft-Office-Dokumente. Interessant sind vor allem Dateien mit den Endungen EXE, DLL, COM, PDF, JAVA, A, DOC, XLS und PPT. Diese Dateien erhält das Unternehmen über Feeds von Industriepartnern sowie aus öffentlichen und eigenen Datensammlungen.
Zwei Aspekte sind es vor allem, die bei der Datensammlung wichtig sind:
Grösse: Typischerweise sind die Dateien zwischen 1 und 5 Megabyte gross.
Vielfalt: Die Dateien decken eine grosse Vielfalt von Dateitypen und Dateierstellern ab.
Anschliessend werden die Dateien in die drei Kategorien „bekannt schädlich“, „bekannt unschädlich“ und „unbekannt“ eingeteilt.
Extrahieren
Nun werden aus den Dateien mittels Algorithmen Merkmale extrahiert. Das können simple Merkmale wie die Dateigrösse oder der verwendete Compiler sein oder auch komplexere
Eigenschaften wie die ersten logischen Transaktionen des ausführbaren Codes. Während bei signaturbasierten Verfahren nur ein Merkmal verwendet wird (nämlich der Hash-Wert), werden hier Tausende von Merkmalen erfasst, sodass damit beispielsweise auch die Art der Programmierung identifiziert werden kann.
Eigenschaften wie die ersten logischen Transaktionen des ausführbaren Codes. Während bei signaturbasierten Verfahren nur ein Merkmal verwendet wird (nämlich der Hash-Wert), werden hier Tausende von Merkmalen erfasst, sodass damit beispielsweise auch die Art der Programmierung identifiziert werden kann.
Dadurch, dass so viele Merkmale bekannt sind, kann der Angreifer nicht mehr einfach einen „neuen“ Schadcode erstellen, indem er einen bisherigen leicht abwandelt. Mit einer derartigen Modifikation würde zwar eine neue Variante entstehen, für die keine Signatur bereitsteht – der Hash-Wert ändert sich ja – andere Merkmale haben sich jedoch nicht geändert.
Die Gesamtheit der Merkmale bildet die Basis für die mathematischen Modelle, die in den nächsten Schritten zur Identifizierung und Beurteilung konkreter Daten verwendet werden.