• Keine Ergebnisse gefunden

Ein weiterer Ansatz zum Generieren von Wissen aus bereits analysierten und klassifi-zierten Malware Samples ist dabei der „SEEM: A Scalable Visualization for Comparing Multiple Large Sets of Attributes for Malware Analysis“ [Gov+14]. In diesem Paper steht ein Programm im Fokus, welches vom Nutzer auf verschiedene Wege genutzt werden kann. Der Nutzer soll damit neues Wissen über verschiedene Malware Samp-les erlangen und so Malware Familien besser und schneller erkennen können. Hierbei können auch Hinweise darauf gefunden werden, ob es sich bei zwei Malware Samp-les um eine ältere und eine neuere Version der gleichen Malware handelt. Da auch Text-Variablen und vorhandene Kommentare in den jeweiligen Malware Samples an-gezeigt werden, kann es so durch das auffinden von einem Typfehler in dem einen und Verbesserung des Typfehlers in dem anderen Sample sich um eine neuere Version han-deln. Außerdem können so gleiche Funktionen beziehungsweise Code in verschiedenen Malware Samples gefunden werden und dadurch Möglichkeiten entdeckt werden, un-terschiedliche Malware mittels den gleichen Charakteristika zu identifizieren und diese Malware zu entfernen.

Der Unterschied zwischen dieser „SEEM: A Scalable Visualization for Comparing Mul-tiple Large Sets of Attributes for Malware Analysis“ und dieser Arbeit besteht darin, dass sich „SEEM: A Scalable Visualization for Comparing Multiple Large Sets of

Attri-2.4 Visual Analytics 9 butes for Malware Analysis“ auf schon analysierte und klassifizierte Malware Samples festlegt, wobei „Interaktive Unterstützung für Malware Klassifikation“ den Nutzer, dessen Interaktion und dessen Klassifikation in den Vordergrund stellt und durch ver-schiedene Features die Malware Samples besser zu klassifizieren.

Ein Weg Klassifikation anhand von Visualisierungen insbesondere auch von Tree-maps zu betrachten bietet „Visualizing Validation of Protein Surface Classifiers“[Sar+14].

Dabei wird aufgezeigt wie ein Klassifikator bestimmte Moleküle und ihre Rückstän-de anhand ihrer Oberfläche und Struktur klassifiziert. Es wird auch eine „Confusion Matrix Treemaps“ Glyph-Darstellung vorgestellt. Diese sollen eine raumfüllende Dar-stellung sein, welche eine Hilfe darstellen soll um die Verteilung von richtig und falsch klassifizierten Rückständen an den Molekülen zu analysieren.

Die Confusion Matrix Treemaps werden jedoch nur als „small multiples“ betrachtet und stehen nicht im Vordergrund. In dieser Arbeit aber spielt die erweiterte Confusion Matrix eine wichtige Rolle und soll dem Nutzer helfen.

Mit „EnsembleMatrix: Interactive Visualization to Support Machine Learning with Multiple Classifiers“[Tal+09] soll gezeigt werden wie ein Nutzer mit einfachen Metho-den ein Multiklassenproblem mit Klassifikatoren Ensembles lösen kann. Dabei wird auch eine Confusion Matrix als Hilfe herangezogen, vgl. Abb. 2.2. Jedoch steht dabei die Kombination von Klassifikatoren zu Ensembles im Vordergrund und die Confu-sion Matrix wird nur hervorgehoben um den Nutzer zu zeigen welche Klassifkatoren besser abschneiden. Dem Nutzer soll es möglich sein durch Interaktion Vorteile und Nachteile von verschiedenen Klassifikatoren zu erkennen und so die Eigenschaften der Klassifikatoren zu erlernen. Dabei kann der Nutzer selbst verschiedene Gewichtungen für einzelne Klassifikatoren so anpassen, dass das Ensemble wie von ihm gewünscht lernt und die weiteren Daten klassifiziert.

Hierbei unterscheidet es sich von dieser Arbeit, da die Confusion Matrix in „Ensem-bleMatrix: Interactive Visualization to Support Machine Learning with Multiple Clas-sifiers“ nicht weiter mit Informationen zu den verschiedenen Klassen gefüllt wird und so weitere Informationen auf andere Weise oder gar nicht dargestellt werden. Darüber hinaus steht der Fokus dieser Arbeit mehr auf die Feature Selection. Der Nutzer kann dabei kein eigenes Klassifikatoren Ensemble erstellen.

Abbildung 2.2: Die Hauptansicht von „EnsembleMatrix: Interactive Visualization to Support Machine Learning with Multiple Classifiers“[Tal+09].

„Visual Classification: An Interactive Approach to Decision Tree Construction“[Ank+99]

beschreibt eine Möglichkeit den Nutzer weiter in die Konstruktion eines Decision Trees einzubinden und es ihm so zu erlauben selbst Features auszuwählen, die für die Klas-sifikation wichtig sind. Dabei soll ihm geholfen werden mithilfe einer Circle Segments Technik. Diese ordnet die verschiedenen Features in einer Kreisdarstellung an und soll so Cluster aufzeigen. Der Nutzer kann daran ablesen, an welcher Stelle ein Split in dem Feature für den Decision Tree Sinn macht.

Hierbei unterscheidet es sich in dem Sinne von dieser Arbeit, als das der Nutzer hier nicht direkt in den Konstruktionsprozess eines Decision Trees eingreifen kann, sondern über die Feature Selection die Möglichkeit hat diesen zu beeinflussen.

Ein System um eine interaktive Konstruktion und Analyse von Decision Trees zu bie-ten ist „BaobabView: Interactive construction and analysis of decision trees“[EW11].

Dabei soll vor allem Expertenwissen in die Konstruktion fließen. Es wird weiter eine neue Variante der Confusion Matrix vorgestellt, in der die Confusion Matrix durch weitere Visualisierungen ausgebaut wird. So wird diese durch verschiedene Glyph Va-rianten erweitert, dass mehr Informationen dargestellt werden. Der Glyph soll dabei schnell zeigen zu welchen Klassen die miss-klassifizierten Daten laut der Ground Truth gehören.

Es wird hier aber nicht weiter auf die Features in der Confusion Matrix eingegangen sondern erst beim Bau des Decision Trees. Dabei wird jedoch nicht mehr eine

Confu-2.4 Visual Analytics 11 sion Matrix oder Treemaps sondern andere Visualisierungen wie zum Beispiel Stacked Graphs verwendet.

Eine Methode um eine Ordnung in Features zu bringen, bietet „A Rank-by-feature Framework for Interactive Exploration of Multidimensional Data“[SS05]. Dabei wird ein Ranking der verschiedenen Features eingeführt. Diese Ranking kann der Nutzer interaktiv selbst einstellen und die Ergebnisse betrachten. Die Rankingfunktion wird dabei immer auf Paare der Features angewandt um eine Distanzmatrix zu erstellen.

Die Heatmap Distanzmatrix sorgt dann für das genaue Ranking der Features. Ferner kann in einem Histogramm die Verteilung der Werte angeschaut werden.

Der Unterschied hier besteht darin, dass die Arbeit sich hier mehr auf die Feature Selection bezieht und nicht um ein weiteres Ranking der Features.

In „Classifier Hypothesis Generation Using Visual Analysis Methods“[SSG10] geht es um das Problem Dokumente mit mehreren Klassen zu klassifizieren. Dabei soll der Nutzer zuerst über eine Suche Dokumente zur Klassifikation finden, die dann weiter ge-clustert werden. Danach wird der Nutzer wieder eingebunden in dem er die Dokumente und Cluster analysiert und auswählt. Dabei kann er auswählen welche Dokumente den Trainingsdaten hinzugefügt werden können. Mit diesen Dokumenten wird daraufhin eine Klassifikation durchgeführt und der Nutzer beurteilt die Ergebnisse. Danach wird der Klassifikator neu trainiert und für den Nutzer visualisiert. Falls der Nutzer nicht zufrieden ist mit dem Klassifikator werden weitere Dokumente zu den Trainingsdaten hinzugefügt und der Worklfow wird ab dem Clustering nach der Suche wiederholt.

Der größte Unterschied besteht zwischen „Classifier Hypothesis Generation Using Vi-sual Analysis Methods“ und „Interaktive Unterstützung für Malware Klassifikation“

darin, dass die Feature Selection in dem Paper nicht für den Nutzer hineingebracht wird. Der Nutzer kann nicht interaktiv in die Feature Selection eingreifen. Er kann jedoch das Trainingsset erweitern mit erfolgreich klassifizierten Daten.

„FeatureForge: A Novel Tool for Visually Supported Feature Engineering and Cor-pus Revision“[Hei+12] beschreibt Werkzeug, welches zum einen eine Hilfe zur Isolation von Featureproblemen und Definition von neuen Features sein soll und zum anderen es ermöglichen soll, Gruppen von schwierigen zu klassifizierende Daten oder Daten, die ständig falsch klassifiziert wurden, zu finden. Dabei wird auch versucht zu zeigen an welcher Stelle ein Klassifikator einen Split zwischen den Klassen macht. Daraus soll geschlossen werden, welche Features neu hinzugefügt werden können um die

Klassifi-kation zu verbessern. Es können verschiedene Subsets des geladenen Datensatzes näher angeschaut und klassifiziert werden. Es wurden die Stanford Klassifikatoren und eine lineare Support Vector Machine implementiert um den Nutzer selbst klassifizieren zu lassen.

„FeatureForge: A Novel Tool for Visually Supported Feature Engineering and Cor-pus Revision“ und „Interaktive Unterstützung für Malware Klassifikation“ verfolgen zwar das gleiche Ziel, jedoch durch verschiedene Ansätze. Das Ziel hierbei ist die Ver-besserung der Klassifikation und das Verständnis der zugrunde liegenden Daten und Klassen. In „FeatureForge: A Novel Tool for Visually Supported Feature Engineering and Corpus Revision“ soll durch das hinzufügen von Features die Klassifikation ver-bessert werden, wobei bei „Interaktive Unterstützung für Malware Klassifikation“ auf das Entfernen von Features gesetzt wird um die Klassifikation zu verbessern.

13

3 Interactive Support for Malware Classification

3.1 Einleitung

In diesem Kapitel steht der Aufbau des Programmes im Vordergrund. Dies gilt für Design-Entscheidungen als auch für Views und andere Komponenten. Hierbei soll ver-mittelt werden, warum bestimmte Design-Entscheidungen getroffen wurden und welche Views besonders geeignet sind um neue Ideen zu erhalten.

Im Vordergrund steht bei den Views die Möglichkeit für den Nutzer mittels des Programmes einen Malware Datensatz zu erkunden. Er soll durch Wissen über den Nutzen der verschiedenen Views bestimmte Zusammenhänge erkennen und aus ihnen Wissen zu generieren. Ferner, soll dem Nutzer über die Views ermöglicht werden sein generiertes Wissen so umzusetzen, dass er die Malware Familien und Samples besser versteht.