Identification of Suspicious Network Traffic by Machine Learning

Master-Studiengang Information Security

Dipl.-Ing. Rainer Kronsteiner, BSc

Betreuer: FH-Prof. Dipl.-Ing. Dr. Paul Tavolato

Ausgangslage

Netzwerkverkehr macht einen immer größer werdenden und stetig wachsenden Teil des Einsatzes von Informationstechnologie aus. In diesem Netzwerkverkehr können sich auch ungewollte Aktivitäten befinden. Dies kann bei einer Infektion von Malware oder bei gezielten Angriffen vorkommen. Firewalls haben unter anderem die Aufgabe diesen verdächtigen Traffic möglichst präzise und effizient zu identifizieren. Eine weitere Herausforderung ist, dass Angreifer ihre Netzwerkaktivitäten verschleiern oder tarnen, um deren Entdeckung zu erschweren. Der größte Teil des Netzwerkverkehrs folgt bestimmten Mustern. Beispielsweise finden periodisch wiederholende Aufgaben, wie etwa Backups oder Serversynchronisierungen, immer etwa zur selben Tageszeiten oder nur an bestimmten Wochentagen statt. Als ein anderes Beispiel tritt der typische Datenverkehr aus dem Internetsurfen meistens zwischen Montag und Freitag während der Bürozeiten auf und hat normalerweise eine interne Quell- und eine externe Zieladresse. Bei jeder Session bzw. dem Versuch eine solche aufzubauen, werden verschiedene Informationen darüber in einem Logfile gespeichert, wie zum Beispiel die Quell- und Ziel-IP, der Quell- und Ziel-Port, die Menge der übertragenen Daten, die Dauer der Verbindung, das verwendete Protokoll und noch etliche andere Merkmale. Diese Informationen dienen als Basis für die Analyse und Klassifizierung.

Ziel

Das Ziel dieser Arbeit ist es zu erforschen, ob es mitverschiedenen Algorithmen aus dem Bereich Machine-Learning möglich ist, auffälligen bzw. gefährlichen Traffic zu identifizieren. 

Ergebnis

In dieser Arbeit konnten wichtige Aspekte für das Erstellen eines solchen Klassifikators identifiziert werden. Wesentliche Bereiche sind das Clustering der Rohdaten sowie die Feature-Generierung und Feature-Selektion für das Trainieren des Klassifizierungs-Modells. Welcher Algorithmus für das Klassifizieren am besten geeignet ist, ist abhängig von den individuellen Anforderungen. Die Arbeit enthält eine Übersicht von etlichen ausgewählten Klassifikatoren. Diese wurden auf Genauigkeit und deren zeitlichen Eigenschaften untersucht.