Artikel kostenlos lesen

Maschinelles Lernen und Cybersicherheit : Eine Evolutionsgeschichte

Die Evolution maschinellen Lernens (ML)hat sich in den letzten Jahren beschleunigt– auch für Anwendungen innerhalb der IT-Sicherheit. Dieser Artikel liefert einen Blick darauf, wie maschinelles Lernen sich entwickelt hat, welche grundlegenden Lernkonzepte es gibt und welche Modelle man daraus ableiten und für die Informationssicherheit nutzen kann.

Lesezeit 14 Min.

Von Sascha Dubbel, Schlangen (DE)

Die US-amerikanische „Defense Advanced Research Projects Agency“ (DARPA) hat vergangenes Jahr unter dem Titel „Three Waves of AI“ [1] drei grundlegende Entwicklungsstufen von künstlicher Intelligenz definiert (vgl. Abb. 1). Die Anfänge sind dabei – wenn man so will – noch menschlich: In der ersten Stufe definieren Programmierer Regeln, wie bestimmte Funktionen und Aufgaben auszuführen sind – Computer lernen dann automatisch, wie man diese Regeln anwendet, um logisches Denken zu erzeugen.

Anwendungsbeispiele aus der Cybersicherheit lieferte beispielsweise die „Cyber Grand Challenge“ der DARPA [2,3]: In einer Art autonomen Hackings haben Computer im Rahmen dieses Wettbewerbs Sicherheitsschwachstellen eigenständig geschlossen, während sie gleichzeitig versuchten, bei der Konkurrenz ausgemachte Schwächen für sich auszunutzen – das war auf der Defcon 2016.

In der zweiten Welle kommt das statistische Lernen dazu: Dieser Entwicklungsbaustein der künstlichen Intelligenz wird vielfach bei selbstfahrenden Automobilen eingesetzt, aber auch in Smartphones und zur Gesichtserkennung. Hier nutzt die künstliche Intelligenz Wahrscheinlichkeitsrechnungen zur Entscheidungsfindung. Die Systeme sind damit zwar lernfähig geworden und können Daten vorausschauend klassifizieren, aber den Kontext der Daten verstehen sie (noch) nicht.

Der nächste Schritt ergänzt dann mit der Fähigkeit zur Anpassung im Sinnzusammenhang (Contextual Adaptation) ein entscheidendes Moment: Damit sind KI-Systeme fähig, selbst Erklärungsmuster für die reale Welt zu konstruieren. Auf dieser Grundlage sollten sie ganz genau beschreiben können, warum eine bestimmte Charakterisierung auf eine bestimmte Weise vorgenommen wurde – so, wie es ein Mensch auch tun würde.

Die IT-Sicherheit hat maschinelles Lernen als Ausprägung künstlicher Intelligenz (KI) schnell für sich entdeckt. Das gilt bevorzugt für Anti-Malware-Lösungen der nächsten Generation (Next-Generation Antivirus, NGAV). Ein KI-basierter Ansatz hat gegenüber traditionellen Ansätzen dabei einige Vorteile: So ist es wahrscheinlicher, damit neuartige Angriffsformen, Zero-Day Attacken und zielgerichtet arbeitende Schadsoftware aufzudecken.

Abbildung 1

Abbildung 1: Die drei Stufen künstlicher Intelligenz (Artificial Intelligence, AI) der DARPA – beschreiben, kategorisieren, erklären – und ihre Grundlagen

Konzepte

Um besser zu verstehen, wie die Konzepte maschinellen Lernens auf die IT-Sicherheit anwendbar sind, hilft es, sich die Unterscheidungskriterien zwischen den verschiedenen Modellen maschinellen Lernens genauer anzusehen.

Die Laufzeit(-umgebung)

Die dem maschinellen Lernen zugrunde liegenden Algorithmen durchlaufen traditionell zwei Stufen:

  • das Training, in dem ein Modell anhand von bereits bekannten Datensätzen lernt, und
  • die Prognose, bei der das bereits trainierte Modell anhand des Gelernten eine Prognose für einen neuen, unbekannten Datensatz trifft.

Die Trainingsphase ist die bei Weitem aufwendigere: Neuronale Netze brauchen unter Umständen Monate, um ein Modell in großen Clustern – etwa von Cloud-Servern – zu trainieren, bis sie einen gewissen Durchdringungsgrad erreicht haben. Hat ein Modell die Trainingsphase abgeschlossen, ist der nachfolgende Schritt, eine Prognose zu treffen, vergleichsweise unkompliziert. Allerdings braucht man auch dazu erhebliche Speicher- und CPU-Ressourcen. Damit das Modell lernt, Datensätze zu klassifizieren, müssen sie entsprechend gekennzeichnet sein – im Fall von AV-Lösungen etwa als „schädlich“ oder „harmlos“.

Die „Runtime“ bezieht sich dann auf die Umgebung, in der die Trainings- und Prognosephase ablaufen und die Datensätze auftauchen – etwa lokal, auf einem Endpunkt, oder remote, wie in der Cloud. Die Laufzeitumgebung, die jeder Algorithmus für sein maschinelles Lernen braucht, entscheidet darüber, wie schnell das Modell mit neuen Samples aktualisiert werden kann, welche Auswirkungen eine getroffene Entscheidung hat und über die Abhängigkeit von anderen Ressourcen wie CPU, Speicherverbrauch und Ein-/Ausgabeoperationen (I/O).

In der Praxis finden Trainings meist (noch) in einem Cluster von innerhalb der Cloud verteilten Servern statt. Bisherige Anwendungen der Prognosephase laufen zwar ebenfalls üblicher in der Cloud, kommen aber zunehmend auch lokal zum Einsatz. Und (verteilte) Trainings auf lokalen Endpunkten oder Geräten sind ein rasch wachsendes Einsatzgebiet. Diese Verfahrensweise hat zwar deutliche Vorteile (u. a. weniger I/O und besseren Schutz heikler Daten), bringt aber auch etliche Herausforderungen mit sich: Dazu gehören heterogene Ressourcen, unzuverlässige Verfügbarkeit und langsamere Iterationsprozesse.

Die Eigenschaften

Das sogenannte Feature-Set (Feature Space) legt exakt fest, welche Eigenschaften eines Samples vom jeweiligen Modell in Betracht gezogen werden. Für die Betrachtung von Portable-Executable-(PE)-Dateien, also ausführbaren Programme, gehören zu diesen Eigenschaften grundlegende statistische Daten wie die Dateigröße und die Entropie (der mittlere Informationsgehalt), aber auch Funktionsmerkmale, die sich auf bestimmte Abschnitte der PE-Datei beziehen – beispielsweise die Namen jedes Headers für den jeweiligen Bereich. Man kann auch den binären Logarithmus der Dateigröße als weiteres Merkmal ableiten und mit einbeziehen.

Einige der extrahierten Features hängen von anderen Merkmalen ab, andere sind Kombinationen. Grundsätzlich ist der Raum, aus dem man eine Menge von Eigenschaften zusammenstellen kann, so gut wie unbegrenzt. Das Feature-Set ist für jedes Modell maschinellen Lernens entscheidend, denn es legt fest, welche Informationen den Entscheidungsprozessen zugrunde gelegt und wie sie genutzt werden. Zusätzlich spielt es eine Rolle, wie diese Informationen kodiert werden. Den Prozess, in dem die Eigenschaften zusammengeführt werden, nennt man Feature-Engineering. Einige Modelle reagieren dabei empfindlicher als andere darauf, wie genau die betreffenden Funktionsmerkmale kodiert werden.

Es ist durchaus verführerisch, so viele Merkmale wie irgend möglich zu integrieren – das hat allerdings eine Reihe von Nachteilen. So steigt etwa das Risiko des sogenannten Daten-Overfittings: Man hat dann zwar sehr viele Daten; sie haben nur praktisch keinerlei Aussagekraft mehr. Zudem verbrauchen mehr Daten mehr Ressourcen und man vergrößert ungewollt die Angriffsfläche für Sicherheitsschwachstellen. Wie effizient ein Modell letztlich ist, welchen Interpretationsgehalt es zur Verfügung stellt und wie robust es ist, all das hängt nicht zuletzt von der Qualität des ausgewählten Feature-Sets ab.

Die Datensätze

Die Daten, die man innerhalb der Trainingsphase nutzt, sind grundlegend für das Modell als solches; sie bestimmen mit, wie sich das Modell im späteren praktischen Einsatz bewährt – dazu müssen sie ausreichend repräsentativ sein. Für das Training eines Modells gegen Schadcode benötigt man sowohl gutartige Dateien als auch unerwünschte und bösartige Dateien. Jedes einzelne der genutzten Samples muss entsprechend gekennzeichnet werden – diese Klassifizierung ist für das Training unabdingbar. Dabei heißt es sorgsam vorzugehen, denn jeder noch so kleine Fehler führt potenziell zu Störgrößen, im Fachjargon als „Label-Noise“ bezeichnet. Solche Störfaktoren verzerren unter Umständen die kompletten Trainingsergebnisse.

Sammeln sich mehr und mehr Daten, kommt man nicht umhin, die Datensätze kontinuierlich zu überwachen – das gewährleistet die nötige Datenhygiene und Konsistenz der Datensätze. In der Praxis kommen die Daten aus unterschiedlichen Quellen. Dabei gilt es zu evaluieren, ob und in welchem Maß diese Daten vertrauenswürdig und verlässlich sind. Ein Problem, mit dem viele Sicherheitsanwendungen gegenwärtig kämpfen, ist das einer asymmetrischen Datenbasis: Dieser Fall tritt beispielsweise ein, wenn ein Label (gutartig) sehr viel häufiger auftritt als ein anderes (bösartig). Diesem Phänomen kann man mit verschiedenen Modellbildungsstrategien entgegenwirken – im Idealfall verfügt man jedoch über eine repräsentative Zahl von Samples beider Kategorien.

Eigenschaftsgruppen und Datensätze sind im Übrigen eng miteinander verbunden, denn es gibt viele Eigenschaftsgruppen, die auf Basis der Trainingsdatensätze überhaupt erst generiert werden. Außerdem beeinflussen die Datensätze entscheidende Faktoren der Vorverarbeitung von Eigenschaften (Feature Pre-Processing). Dazu zählen die Normalisierung oder Schemata zur Gewichtung, wie die inverse Dokumentenhäufigkeit (Term Frequency – Inverse Document Frequency, TF-IDF).

Will man ein wirklich ausgereiftes Modell erstellen, braucht man dazu große Datenmengen. Es ist allerdings eine Denkfalle, anzunehmen, dass eine große Datenmenge allein automatisch ein leistungsfähiges Modell nach sich zieht: Eine große Zahl repräsentativ ausgewählter Datensätze ist zwar notwendig, aber eben nicht ausreichend. In jedem Fall sollten die ausgewählten Datensätze eine breite Palette umfassen und die Samples so ausgewählt sein, dass sie Beispiele enthalten, mit denen das Modell aller Wahrscheinlichkeit nach auch tatsächlich in der Praxis konfrontiert wird. Die gewünschte Bandbreite lässt sich quantitativ als Rohbilanz der Feature-Werte unter den gelabelten Samples ansehen.

Menschliche Interaktion

Zumeist stellt man sich Modelle als Black-Box vor – das muss jedoch nicht zwingend so sein. Modelle, die eine menschliche Interaktion ermöglichen, haben in der Praxis durchaus Vorteile: Das Feedback von Experten zu integrieren, verbessert zum Beispiel die Qualität der Eigenschaftssets und der Kennzeichnung – was sonst nur schwer zu erreichen ist.

Wenn man über Methoden verfügt, Modelle zu erkunden, hilft das, die Daten zu validieren, denn nicht alles, was statistisch „gleich“ wirkt, ist sich auch wirklich ähnlich. Abbildung 2 zeigt das nach dem englischen Statistiker Francis Anscombe benannte Quartett von Mengen aus Datenpunkten: Es besteht aus vier unterschiedlichen Datensätzen, die exakt zu demselben linear regressiven Modell führen – alle haben nahezu identische, einfache statistische Eigenschaften [4]. Was die zusammenfassenden Statistiken und die Modellparameter anbelangt, sind die vier Fälle also praktisch ununterscheidbar. Im Ausdruck ist aber sofort ersichtlich, dass nur die Menge I dem statistisch ausgewählten Datensatz gut entspricht.

Alle anderen Modelle mit mehr Dimensionen und Parametern sind sehr viel schwieriger zu ergründen und zu verstehen. Wenn die Validierung durch einen Menschen fehlt, bleiben derartige Probleme oft unbemerkt und Modelle erzeugen Fehler. Für solche Fälle sollten diverse Modi manueller Intervention möglich sein – verwendet man Black-Box-Modelle, ist es schwierig, die eigentliche Ursache systematisch auftretender Fehler zu identifizieren. Bei all dem können Tools zur Fehlersuche und -behebung zwar helfen. Diese sollte man aber mit Vorsicht einsetzen und nicht unbeobachtet agieren lassen. In das Endprodukt sollten sie ohnehin nicht integriert werden, da sie sowohl geistiges Eigentum „durchsickern“ lassen als auch Angreifern Schwachstellen offenbaren können.

Abbildung 2

Abbildung 2: Das sogenannte Anscombe-Quartett [4] besteht aus vier Mengen von Datenpunkten, die nahezu identische statistische Eigenschaften haben, aber aufgetragen sehr verschieden aussehen.

Die Anpassungsgüte

Einige Modelle repräsentieren die Realität besser als andere. Wenn ein Modell beispielsweise zu stark vereinfacht, büßt es zwar an Wirksamkeit ein, funktioniert aber gut, was das Generalisieren neuer Daten anbelangt. Solche Modelle bezeichnet man als „Underfitting“: Damit ist gemeint, dass dem Modell mehr Informationen zur Verfügung stehen als aktuell berücksichtigt werden.

Im Gegensatz dazu steht die Überanpassung eines Modells – das sogenannte „Overfitting“. Dabei hat das Modell zu viel über die einzelnen Datensätze gelernt – beispielsweise durch ein zu ausgiebiges Training. Zunächst nimmt dabei die Erkennungsrate mit fortschreitendem Lernen immer weiter zu. Nach einer Sättigungsphase nimmt die Genauigkeit aber wieder ab. Dann passt sich die Datenrepräsentation des Rechners den Trainingsdaten an und nicht dem eigentlichen Lerngegenstand – neue Daten werden dann nicht mehr ausreichend gut repräsentiert.

Die gestrichelte graue Linie in Abbildung 3 stellt die Entscheidungsgrenze einer überangepassten Sortierung (Abgrenzung/Klassifizierung) von grünen gegenüber grauen Punkte dar – die durchgezogene grüne Linie steht hingegen für die Grenze einer angemessenen Entscheidung. Die sinnvolle (grüne) Klassifizierung ist folglich nicht optimal für den vorliegenden Trainingsdatensatz, hat aber den Vorteil, bei neu hinzukommenden Daten besser zu funktionieren.

Ein gut angepasstes Modell muss seine Leistungsfähigkeit auch behalten, wenn es schlussendlich zum Einsatz kommt. Abweichungen vom Referenzkonzept (Concept Drift) treten auf, wenn die in der Praxis zu prüfenden Daten nichtstationären Veränderungen unterliegen – ein häufig zu beobachtender Vorgang. So ändern sich beispielsweise bei der Malware-Abwehr die beobachteten ausführbaren Dateien (PE-Datensatz) auf den Endpunkten sukzessive von Jahr zu Jahr – das KI-Modell sollte sich dem in wünschenswerter Weise anpassen.

Abbildung 3

Abbildung 3: Die gestrichelte graue (Overfitting) und durchgängig grüne Linie zeigen die Entscheidungsgrenzen einer hypothetischen Klassifizierung zwischen grünen und grauen Datenpunkten.

ML-Generationen

Die verschiedenen in der IT-Sicherheit genutzten Generationen maschinellen Lernens unterscheidet man vorrangig anhand von fünf Faktoren:

  • Die Laufzeitumgebung: Wo genau sind Training und Prognose mithilfe des maschinellen Lernens angesiedelt (z. B. in der Cloud, lokal oder auf den Endpunkten)?
  • Die Eigenschaften: Wie viele Eigenschaften werden generiert? Wie genau werden sie vorverarbeitet und evaluiert?
  • Die Datensätze: Wie wird Vertrauen/Vertraulichkeit bei der eigentlichen Datenübernahme gewährleistet? Wie erfolgt die Kennzeichnung der Datensätze, aus welchen Quellen speisen sie sich und wie werden die Daten im Detail validiert?
  • Menschliche Interaktion: Wie können Menschen die Modelle verstehen und darauf einwirken? Wie werden die Modelle hinsichtlich ihrer Funktionsfähigkeit beaufsichtigt und überwacht?
  • Die Anpassungsgüte: Wie gut ist das Modell in der Lage, die verwendeten Datensätze abzubilden? Wie oft sollte man das Modell aktualisieren?

Diese Faktoren liefern fünf Klassen (Generationen) maschinellen Lernens für Cybersicherheitsverfahren – dabei wird jede Generation anhand ihrer Fortschritte in den unterschiedlichen Kategorien definiert. Tabelle 1 fasst die Charakteristika der unterschiedlichen Generationen hinsichtlich der genannten Faktoren zusammen.

Ein Modell, das bereits in ein fertiges Produkt gegossen wurde, benötigt typischerweise zwei bis drei Jahre für einen Generationensprung. Die meisten Lösungen, die maschinelles Lernen einsetzen, sind allerdings nicht über die erste oder zweite Generation hinausgekommen. Nur wenige haben den Sprung in die dritte Generation geschafft – ein steiniger Weg angesichts der mühsam im Feld zu gewinnenden Erkenntnisse. Will man tatsächlich die vierte und fünfte Generation erreichen, bedarf es deutlich mehr Forschung und Entwicklung. Schnelle Fortschritte hin zum „State of the Art“ der ML-Forschung sind beim kontradiktorischen, aktiven und kollaborativen maschinellen Lernen zu erwarten – ebenso bei der Interpretierbarkeit der Modelle.

Qualitative Auswirkungen der einzelnen Generationen

Wie in Tabelle 1 ersichtlich, baut jede einzelne Generation auf der jeweils vorangegangenen auf, wobei die Zahl der zugrunde gelegten Datensätze und Eigenschaften mit jedem Schritt wächst – bleiben noch die qualitativen Unterschiede zwischen den einzelnen Modellen zu beleuchten:

  • Erste Generation: Hierbei handelt es sich um Standardlösungen, die maschinelles Lernen in Form von Toolkits, basierend auf Standardmodellen nutzen – wie etwa Scikit-Learn, der ML-Bausatz in Python. Alle Kennzeichnungen in „gut“ beziehungsweise „schädlich“/„bösartig“ übernehmen Menschen qua eigener Analyse. Das Eigenschaftsset ist überschaubar, fix und ausschließlich von Menschen ausgewählt und zugeordnet. Diese Modelle sind für den Einsatz auf Endpunkten nicht geeignet und haben eine Reihe von Nachteilen: Sie sind nur begrenzt effizient, liefern viele Fehlalarme (hohe False-Positive-Rate, FPR) und sind sicherheitstechnisch vergleichsweise einfach zu umgehen.
  • Zweite Generation: Auch hier geben noch menschliche Akteure die überwiegende Zahl der vorzunehmenden Kennzeichnungen vor, nun allerdings unterstützt von Heuristiken. Was die Prognosefähigkeit anbelangt, ist es bei dieser Generation bereits möglich, lokale Vorhersagen zu treffen – ohne cloudbasiertes Training kommen die Modelle jedoch nicht aus. Das lokale Modell ist vielmehr ein Klon des Cloud-Modells. Die Beschreibungen liefert ein menschlicher Deskriptor post-hoc anhand der ihm zur Verfügung stehenden Methoden. Tatsächlich ist diese Verfahrensweise aber nicht mit den Kriterien verbunden, nach denen das Modell seine Entscheidungen trifft. Üblicherweise handelt es sich um Modelle, die aufgrund von zu viel Training überangepasst sind (Overfitting, s. o.). Die Modelle dieser Generation bringen schon einiges an Leistungsfähigkeit bei der Prognosequalität mit, brauchen aber periodische Aktualisierungen, um Abweichungen vom Referenzkonzept auszugleichen.
  • Dritte Generation: Das cloudbasierte Modell ist weiter fortgeschritten, ergänzt und schützt das lokale Modell. Das Modell ist jetzt außerdem in der Lage darzulegen, in welcher Weise es seine Entscheidungen getroffen hat – es reflektiert also den eigenen Entscheidungsprozess. Diese Modelle sind so konzipiert und entwickelt, dass sie gegen Attacken entsprechend gehärtet sind. Die Ergebnisse haben eine hohe Verallgemeinerbarkeit und verhindern so Abweichungen vom Referenzkonzept.
  • Vierte Generation: Solche Modelle lernen allein von lokalen Daten und müssen keine zusätzlich beobachteten Ergebnisse hochladen. Die zugrunde liegenden Eigenschaften sind das Ergebnis der Interaktion zwischen menschlichen Entscheidern und dem Modell selbst. Neu hinzukommende Eigenschaften und Modelle werden kontinuierlich experimentell untersucht – Menschen korrigieren und leiten das Modell mit ihren Rückmeldungen. Die meisten dieser Modelle sind gegenüber bekannten Angriffen gegen maschinelles Lernen ziemlich robust.
  • Fünfte Generation: Supervision wird mit dieser Generation optional. Die Modelle lernen in einer verteilten, semi-überwachten Umgebung. Die menschliche Analyse wird geleitet durch die seitens des Modells übermittelten Erkenntnisse. Die Modelle lassen sich überwachen und auditieren, um etwa Verfälschungen und Datenpfusch zu vermeiden. Zudem verbessert man so die Fähigkeit, ML-Angriffe aufzudecken.
Tabelle 1

Tabelle 1: Charakteristika verschiedener Generationen des maschinellen Lernens

Fazit

Cybersicherheit ist als Anwendungsfeld für maschinelles Lernen eine verhältnismäßig junge Entwicklung – erste Versuche konnte man ab etwa 2013 beobachten. Die Verfahren stehen also eher noch am Anfang und werden vermutlich noch einiges an Weiterentwicklung hinsichtlich Laufzeitumgebung, Eigenschaften, Datensätzen, Mensch-Modell-Interaktion und Anpassungsgüte erleben.

Der momentane Hype um maschinelles Lernen betrifft im Wesentlichen zwei Anwendungsbereiche:

  • Moderne ML-Verfahren, wie sie etwa von Google, Amazon, Facebook und anderen, primär auf den Massenmarkt zielenden Anwendungen eingesetzt werden: Maschinelles Lernen spielt bei der Bild- und Videoverarbeitung mit, bei der natürlichen Sprache, bei Empfehlungssystemen und selbstfahrenden Automobilen.
  • Vergleichsweise einfache ML-Standard-Toolkits, die zur Lösung klassischer IT-Sicherheits- und Cybersicherheits-Probleme eingesetzt werden.

Maschinelles Lernen hat seine Einsatzfähigkeit in unterschiedlichen Feldern bereits unter Beweis gestellt. Für die Anwendung in der IT-Security gilt es vor allem, das Potenzial maschinellen Lernens für bisher noch ungelöste Cybersicherheitsprobleme auszuloten – es geht also nicht nur darum, verhältnismäßig simple Modelle mit Cyberdatensätzen zu trainieren.

Jede einzelne Generation maschinellen Lernens steht für einen qualitativen Sprung. Indem sie sich verbessern, werden die Modelle nicht nur erwachsener, sie sind damit auch zunehmend wertvoll für Anwendungsfelder wie die Cybersicherheit. Denn hier geht es nicht um marginale Effizienzverbesserungen. Vielmehr handelt es sich um die fundamentale Fähigkeit, Angriffe sehr viel besser zu erkennen als zuvor – und diese wirksam zu verhindern. Das volle Potenzial für Anwendungen in der Cybersicherheit werden daher erst die kommenden Generationen maschinellen Lernens entfalten.

Sascha Dubbel ist Senior Sales Engineer DACH bei Cylance.

Literatur

[1] John Launchbury, A DARPA Perspective on Artificial Intelligence, Video und Foliensatz, Februar 2017, www.darpa.mil/about-us/darpa-perspective-on-ai
[2] Dustin Fraze, Cyber Grand Challenge (CGC), Program Information, August 2016, www.darpa.mil/program/cyber-grand-challenge
[3] Defense Advanced Research Projects Agency (DARPA), Cyber Grand Challenge (CGC) – The World’s First AllMachine Hacking Tournament, Archivseite, August 2014, http://archive.darpa.mil/cybergrandchallenge/
[4] F. J. Anscombe, Graphs in Statistical Analysis, The American Statistician, Vol. 27, No. 1 (Feb. 1973), S. 17, verfügbar via https://www.jstor.org/stable/2682899

Diesen Beitrag teilen: