Konzeptionelle Weiterentwicklung des Network and Security Manager in Bezug auf False Positives Erkennung und Vermeidung.
Windows 10, ELK Stack, PowerShell, GitLab CI/CD, JavaSkript
Das Ziel dieser Arbeit ist es den Netzwerk and Security Manager näher an den produktiven Betrieb zu Bringen. Dazu gehört das automatsche paketieren vom NeSeM Quellcode mit einer CI/CD Pipeline. Zudem ist das Evaluieren von Goodware Anwendungen die ein unerwünschtes Verhalten, sogenannte False Positives, zeigen bei dem NeSeM sehr schwierig. Ein weiteres Ziel der Arbeit ist es, ein Konzept zu entwickeln, wie die False Positives effizient entdeckt werden können. Auch die Erstellung von Ausnahmen um verdächtiges Verhalten von Goodware Anwendungen ist eine grosse Aufgabe. Diese Arbeit zeigt, wie der Prozess für die Erstellung der Ausnahmen teilautomatisiert werden kann.
Dieses Projekt ist ein Teil des Projekts Network and Security Manager NeSeM, welches eine Anti Malware Anwendung für das Sichern von Firmennetzwerken ist. NeSeM ist ein Hostbasiertes Intrusion Detection System (IDS) für die Identifikation von verdächtigem und verbotenem Verhalten auf Windows 10 Computern. Solche IDS Systeme überprüfen das Verhalten von Anwendungen auf dem Host Computer. Sie entdecken unerwünschtes oder verdächtiges Verhalten dieser Anwendungen mit Hilfe der systematisch erhobenen Prozeduren der MITRE ATT&CK Plattform. Malware sowie Goodware Anwendungen können ein solches Verhalten an den Tag legen. Eine grosse Schwierigkeit dieser Plattformen ist das Entdecken von False Positives von Goodware Anwendungen und die Erstellung von Ausnahmen, die dieses Verhalten zulassen.
Im ersten Teil wurde eine CI/CD Pipeline implementiert. Mit dieser Pipeline können die NeSeM Komponenten automatisch kompiliert und paketiert werden. Als Ergebnis wurde der Prozess vom Sourcecode zur ausführbaren Datei automatisiert.
Im zweiten Teil wurden gängige Applikationen getestet, ob sie in Bezug auf den NeSeM ver-dächtiges Verhalten zeigen und False Positives erzeugen. Dafür wurden vier Arbeitsumgebun-gen aufgesetzt. Diese Arbeitsumgebungen simulieren Computer,
die in einem Unternehmen im Einsatz sind. Diese Umgebungen bilden ein typisches Sekretariat, eine Administration, einen Software-Engineer und einen Elektro-Engineer ab. Auf den Umgebungen wurden insgesamt 27 Applikationen installiert, wobei
keine doppelt installiert wurde. Von diesen Applikationen zeigten 16 ein verdächtiges Verhalten und verursachten ein oder mehrere False Positives. Zudem wur-den über alle Arbeitsumgebungen hinweg 26 Windows Applikationen identifiziert, die ein
oder mehrere False Positives erzeugten. Insgesamt wurden 53 Applikationen erkannt, die nach den definieren Kriterien vom NeSeM einen False Positive generieren. Dies sind Unterprogramme von den installieren Applikationen oder Windows internen Diensten.
Im dritten Teil wurde ein Konzept für die Erstellung von Ausnahmen entworfen und als Proof of Concept implementiert. Eine Ausnahme unterdrückt einen Alarm für eine Prozedur, die durch die NeSeM Roule Engines erkannt wird. Unser PoC ist in der Lage,
aufgrund des False Positives Tests, Ausnahmen automatisch zu erstellen. Dank diesen Ausnahmen konnten schliesslich die Anzahl an False Positives stark minimiert werden.
Abbildung 1: Teilautomatisierungskonzept
Fachhochschule Nordwestschweiz
Institut für Mobile und Verteilte Systeme (IMVS)
Bahnhofstrasse 6, 5210 Windisch
Malte Gerboth
Stefan Gruber
Peter Gysel, peter.gysel@fhnw.ch