4/11/2020

Künstliche Intelligenz

Was haben intelligente Maschinen eigentlich von uns Menschen gelernt?
Von
Robin Kuller
Trainee IT-Security Consultant
und
Christian Hock
Manager Business Intelligence

Was ist künstliche Intelligenz und wie nutzen wir sie?

Kurzer Exkurs zu meiner Person

Ich bin Robin Kuller und seit Anfang Juni Werkstudent bei der suresecure. Bei der Anmeldung für das Deutschlandstipendium, welches von der Hochschule Niederrhein stark gefördert wird, habe ich mir die verschiedenen Partner der Hochschule angeschaut und bin so zum ersten Mal auf die suresecure gestoßen. In der Zeit, in der ich hier angestellt bin, habe ich bereits eine Menge gelernt. In erster Linie habe ich mich mit Splunk und der Mitre Att&ck-Matrix auseinandergesetzt. Bei Fragen wurde mir immer sofort weitergeholfen und so konnte ich mich schnell an die neue Arbeitsumgebung gewöhnen und Teil des Teams werden. Aber kommen wir nun zum eigentlichen Thema dieses Blogeintrags: der künstlichen Intelligenz.

Siri, Alexa & Co ist allen ein Begriff

Künstliche Intelligenz (KI) ist längst in nahezu jedermanns Alltag angekommen: sei es Siri, Alexa oder der tägliche Wetterbericht. Künstliche Intelligenz wird heutzutage in vielen Bereichen eingesetzt. Trotzdem ist vielen nicht klar, was KI eigentlich bedeutet, geschweige denn, wie sie funktioniert. In diesem Blogeintrag werde ich grob die wichtigsten Begriffe erklären und darauf eingehen, wie wir KI nutzen, um für mehr Sicherheit zu sorgen.

Was bedeutet künstliche Intelligenz eigentlich?

Um diese Frage zu beantworten, muss man sich zunächst einmal bewusst machen, was der Begriff „Intelligenz“ überhaupt bedeutet. Wenn man einmal darüber nachdenkt, stellt man schnell fest, dass eine klare und einfache Definition kaum möglich ist. Das liegt unter anderem daran, dass der Mensch die Funktionsweise des Gehirns noch nicht vollständig ergründet hat. Zunächst sollte man sich die Frage stellen, welche Eigenschaften den Menschen überhaupt intelligent machen.

Der Mensch gilt als intelligent, weil er im Gegensatz zu Maschinen einige Talente und Fähigkeiten hat, die er mit der Zeit erlernt hat. Das Lernen an sich ist der erste große Stützpfeiler, der Intelligenz ausmacht. Mithilfe dieser Fähigkeit konnte der Mensch erlernen zu planen, zu beweisen, zu schlussfolgern und neue Situationen zu erfassen und zu beurteilen - um nur ein paar Beispiele zu nennen.

Daraus kann man folgende Definition für KI ableiten:

„Der Forschungsbereich der künstlichen Intelligenz untersucht Berechnungsverfahren, die etwas wahrnehmen, daraus etwas schlussfolgern und danach handeln können.“

Heutige Ansätze in diesem Forschungsbereich sind zum einen die Idee der „Synthese vor Analyse“. Man versucht, durch die Entwicklung und Verbesserung von KI-Systemen die menschliche Intelligenz besser zu verstehen. Zum anderen orientiert man sich an der Biologie. Man nimmt sich das menschliche Gehirn als Vorbild, wobei man davon ausgeht, dass Intelligenz durch das Zusammenspiel von vielen einfachen Prozessen entsteht. Diese Prozesse sollen auf die Milliarden von Neuronen im Hirn anspielen. Verbindet man viele dieser einfachen Prozesse schichtweise miteinander, so erhält man ein sogenanntes neuronales Netz. Mit diesem Begriff begibt man sich in den Bereich des Machine Learnings.

Wie funktioniert Machine Learning?

Wie schafft man es einem Computer, also einer Maschine, beizubringen etwas zu lernen? Beim Machine Learning wird einem IT-System mittels eines Datensatzes beigebracht, darin enthaltende Gesetzmäßigkeiten oder Muster zu erkennen und mit den gewonnenen Erkenntnissen neue Daten für das System auszuwerten.

Ein neuronales Netz (NN) kann als eine „Black Box“ betrachtet werden, die Inputdaten (z.B. Sensordaten eines Autos) erhält, bestimmte Berechnungen durchführt und am Ende Ergebnisse ausgibt (z.B. die richtige Steuerung des Autos). Im Detail besteht es, wie bereits erwähnt, aus meist mehreren Schichten von Neuronen. Ein Neuron beschreibt in der IT einen simplen Prozess, der Eingaben erhält, aus diesen ein neues Ergebnis berechnet und dieses wiederum ausgibt. Dabei sind immer nur Neuronen zweier benachbarter Schichten miteinander verbunden. Diese Verbindungen haben je eine Gewichtung, die sich im Laufe des Lernprozesses verändert, um am Ende die bestmöglichen Ergebnisse auszuwerfen. Bei NN gibt noch sehr viele weitere Anpassungsmöglichkeiten, auf die an dieser Stelle nicht näher eingegangen wird, da das den Rahmen sprengen würde.

Hat man also ein neuronales Netz aufgebaut, geht man beim Machine Learning wie folgt vor: Man erzeugt oder hat bereits eine zugrunde liegende Datenmenge, die beispielsweise aus Bildern, numerischen Parameterlisten oder Sprachaufnahmen besteht. Die Gewinnung passender Datenmengen stellt meist das größte Problem des Machine Learnings dar. Oft sind die Daten nicht in ausreichender Anzahl vorhanden und manchmal ist die Qualität der Daten nicht gut genug für das Verfahren (z.B. stark verpixelte Bilder). Hat man einen qualitativ und quantitativ ausreichenden Datensatz, so teilt man ihn in Trainings- und Testdaten auf.

Mithilfe der Trainingsdaten wird dann, wie der Name schon verrät, das neuronale Netz trainiert. Das Training kann auf verschiedene Arten geschehen. Die einfachste Art des Trainings ist das überwachte Training. Hierbei gibt es für den Datensatz einen dazu passenden Lösungsdatensatz, auch „Ground Truth“ genannt, in dem die korrekten Ergebnisse eingetragen sind. Nachdem alle Trainingsdaten durchlaufen wurden, wird mithilfe der Testdaten überprüft, ob und vor allem wie gut das System die gelernten Eigenschaften auch in bisher fremden Daten feststellen kann. Nach jedem Durchlauf werden die Ausgaben des NN mit der „Ground Truth“ verglichen und auf Grundlage von Unterschieden und Übereinstimmungen die Gewichtung der Verbindungen zwischen den Neuronen im neuronalen Netz angepasst. So versucht das Netz beim nächsten Durchlauf ein besseres Ergebnis zu erzielen.

Nach einer gewissen Zeit hat sich das NN so weit entwickelt, dass es gewisse Eigenschaften in den Daten gut erkennen kann. Sollte es auch gute Ergebnisse erzielen, kann das neuronale Netz nun in dem bestimmten Bereich eingesetzt werden oder in andere Richtungen weiterentwickelt werden.

Ein Beispiel

Um das Beschriebene zu veranschaulichen, wird das ganze an einem Beispiel mit Hunden- und Katzenbilder erläutert. Der Input für das neuronale Netz besteht aus verschiedenen Fotos von Hunden oder Katzen. In der „Ground Truth“ ist zu jedem Foto beschrieben, ob es sich um einen Hund oder um eine Katze handelt. Ein Teil der Fotos wird nun als Trainingsdatensatz genutzt. Das neuronale Netz versucht auf Grundlage von Eigenschaften, die es auf den Fotos erkennt, zu entscheiden, um welches der Tiere es sich handelt. Erkannte Eigenschaften können sehr abstrakt sein – hier beispielsweise Farbe des Fells, Größe der Zähne, Form der Ohren. Wenn die Trainingsdaten durchgearbeitet wurden, wird anschließend anhand der Testdaten überprüft, wie gut das Netz die Fotos einsortieren kann. Je nachdem, wie hoch die Trefferrate ist, werden nach jedem Durchlauf die gewichteten Verbindungen zwischen den Neuronen angepasst. Wenn die Trefferquote über einem gewissen Prozentwert liegt, bricht der Lernprozess ab und man hat ein trainiertes und einsatzfähiges neuronales Netz, welches Fotos von Hunden und Katzen der jeweiligen Kategorie zuordnen kann.

Wie nutzt die suresecure KI, um die Welt sicherer zu machen?

In der IT-Sicherheit handelt es sich meistens nicht um einfache Unterscheidungen wie zwischen Tierbildern. Vielmehr gibt es in der Regel nicht einmal einen vorgegebenen Datensatz, um eine KI zu trainieren.

Unsere Vision: Die digitale Welt sicherer zu machen.

Verdächtiger Datenverkehr, systemweite unentdeckte Installationen und Downloads oder schwer identifizierbare Phishing-Mails. In vielen Fällen bleiben solche Vorfälle trotz Virenschutzprogrammen unentdeckt. Diese Vorfälle deuten stark darauf hin, dass sich jemand unentdeckt Zugriff auf das Netzwerk erschleichen will oder diesen bereits hat! Sollte dies der Fall sein, ist es nur noch eine Frage der Zeit, bis die Systeme ausfallen und die Produktion stillsteht. Doch mit dem Schutz durch von uns eingesetzter KI kann Schlimmeres verhindert werden.

Die genannten Vorfälle und viele weitere können wir mit Hilfe von sogenannter „Outlier Detection“ feststellen und Gegenmaßnahmen ergreifen, bevor der finale Angriff erfolgt. Um Outlier – zu Deutsch: Ausreißer – überhaupt erkennen zu können, muss die künstliche Intelligenz Daten zum Lernen bekommen. Diese liegen, wie bereits erwähnt, nicht als fertiger Datensatz vor. Hier wird eine andere Technik genutzt: Um Daten zur Erkennung von Eigenschaften zu erhalten, wird der Normalbetrieb eines Unternehmens von der KI beobachtet, um beispielsweise den standardmäßigen Datei- und Mailverkehr oder das Login-Verhalten nachvollziehen zu können. Diese Beobachtung des Tagesgeschäftes wird auch „Behaviour Monitoring“ genannt. Mit den daraus gewonnenen Informationen kann die KI Unregelmäßigkeiten erkennen, sollten welche auftreten. In Folge einer Erkennung wird eine Benachrichtigung an uns und das jeweilige Unternehmen gesendet. Mithilfe der Benachrichtigung können so rechtzeitig Maßnahmen abgesprochen und durchgeführt werden.

Um dieses Verfahren noch einmal zu verdeutlichen, ein Beispiel:

Ein Betrieb arbeitet im Rhythmus einer 5-Tage-Woche und die durchschnittliche Anzahl an erhaltenen E-Mails zwischen 7 und 18 Uhr liegt bei 200. Die KI, die das normale Verhalten gelernt hat, würde keine Benachrichtigung schicken, sollten an einem Dienstag 220 E-Mails empfangen werden. Dies würde nämlich in einem gewissen „Spielraum“ liegen, der je nach dem Normalwert durch die KI angepasst wird.

Nun werden an einem Sonntag um 3 Uhr morgens in kurzem Abstand 40 E-Mails mit gleichem Absender an alle Mitarbeiter des Unternehmens gesendet. Die KI erkennt die starke Abweichung zu der üblichen Anzahl an E-Mails und sendet eine Benachrichtigung an die suresecure und an das betroffene Unternehmen. Wie sich nach kurzer Analyse erschließt, verbirgt sich hinter den ominösen E-Mails ein groß angelegter Phishing-Angriff auf das Unternehmen. Durch die KI-Erkennung konnte dies rechtzeitig wahrgenommen und Maßnahmen eingeleitet werden.

Fazit:

Künstliche Intelligenz ist richtig eingesetzt extrem vielseitig, kann viele Arbeitsabläufe vereinfachen und ist vor allem für die Absicherung von IT-Systemen ein wertvolles Instrument.

Fragen Sie uns!

Wir erklären Ihnen die Vorteile der Nutzung künstlicher Intelligenz, um Ihre Systeme abzusichern.
Jetzt Kontakt aufnehmen!