title: Dynamic log file analysis: an unsupervised cluster evolution approach for anomaly detection
Creators: name: Landauer, Max
Publisher: name: TU Wien
Year: 2018
Subjects: subject: Time series analysis
subject: Outlier detection
subject: Statistical modeling

description: Technologische Fortschritte und die zunehmende Vernetzung von Computersystemen haben zu einer erhöhten Gefahr durch vormals unbekannte Bedrohungen und Eindringungen über komplexe Angriffsvektoren geführt. Im Bereich von Cyber Security werden aus diesem Grund Intrusion Detection Systems zur Echtzeit-Überwachung von kontinuierlich generierten Logzeilen verwendet um Systeme vor Angriffen zu schützen. Solche existierenden Ansätze verwenden Clustering-Methoden die auf String-Metriken basieren um ähnliche Logzeilen ohne die Notwendigkeit von Parsern zu gruppieren. Dabei werden ungewöhnliche Logzeilen unabhängig von der zugrundeliegenden Syntax oder Semantik der Logdatei als Ausreißer erkannt. Diese Ansätze erzeugen jedoch nur eine statische Sicht auf die Daten und berücksichtigen die dynamische Natur von Protokollzeilen nicht ausreichend. Änderungen in der Systemumgebung oder der technologischen Infrastruktur erfordern daher häufig eine Neuformung der bestehenden Gruppen. Darüber hinaus sind solche Ansätze nicht für die Erkennung von Anomalien bezüglich der Frequenz, Änderungen des periodischen Verhaltens oder Abhängigkeiten von Logzeilen geeignet. Um diesen Problemen entgegenzuwirken wird in dieser Arbeit eine Methode zur Erkennung von dynamischen Anomalien in Logdateien vorgestellt. Das Verfahren gruppiert ähnliche Logzeilen innerhalb vordefinierter Zeitfenster unter Verwendung eines inkrementellen Clustering-Algorithmus. Dabei werden durch den neuartigen Clustering-Mechanismus Verbindungen zwischen den ansonsten isolierten Ansammlungen von Gruppen hergestellt. Diese Verbindungen zwischen zwei benachbarten Zeitfenstern werden unter Zuhilfenahme von Cluster-Evolutionstechniken analysiert um Übergänge, wie etwa Teilungen oder Fusionen, zu bestimmen. Ein selbstlernender Algorithmus erkennt anschließend Anomalien im zeitlichen Verhalten dieser evolutionären Gruppen indem Metriken aus deren Entwicklungen abgeleitet und analysiert werden. Ein Prototyp für die oben genannte Methodik wurde im Rahmen dieser Arbeit entwickelt und anhand einer Logdatei mit bekannten Anomalien in einem illustrativen Szenario angewandt. Die Ergebnisse der Evaluierung wurden bezüglich der Einflüsse bestimmter Parameter auf die Anomalieerkennungsfähigkeit sowie die Laufzeit analysiert. Die Evaluierung des Szenarios zeigte, dass die Methodik 61.8% der dynamischen Änderungen der Logzeilen-Cluster korrekt identifizieren konnte, wobei die Fehlalarmrate nur 0.7% betrug. Ein effizientes Erkennen solcher Anomalien und die Fähigkeit der Selbstanpassung bei technologischen Änderungen begründen die Anwendbarkeit des vorgestellten Ansatzes.
description: Technological advances and the increased interconnectivity of computer systems have led to a higher risk of previously unknown threats and intrusions through diverse attack vectors. Cyber security therefore employs Intrusion Detection Systems that monitor continuously generated log lines in real-time in order to protect systems from such attacks. Existing approaches use clustering techniques based on string metrics in order to group similar log lines into clusters without any need for parsers. Thereby, dissimilar lines are detected as outliers independent from the syntax and semantics of the log file. However, such methods only produce a static view on the data and do not sufficiently incorporate the dynamic nature of computer logs. Changes of the system environment or technological infrastructure therefore frequently require cluster reformations. Moreover, such approaches are not suited for detecting anomalies related to frequencies, periodic alterations and interdependencies of log lines. In order to overcome these issues, a dynamic log file anomaly detection methodology is introduced in this thesis. The procedure employs an incremental clustering algorithm that groups