TY - THES A1 - Prasse, Paul T1 - Pattern recognition for computer security T1 - Mustererkennung für Computersicherheit BT - discriminative models for email spam campaign and malware detection BT - diskriminative Modelle zur Erkennung von Email Spam-Kampagnen und Malware N2 - Computer Security deals with the detection and mitigation of threats to computer networks, data, and computing hardware. This thesis addresses the following two computer security problems: email spam campaign and malware detection. Email spam campaigns can easily be generated using popular dissemination tools by specifying simple grammars that serve as message templates. A grammar is disseminated to nodes of a bot net, the nodes create messages by instantiating the grammar at random. Email spam campaigns can encompass huge data volumes and therefore pose a threat to the stability of the infrastructure of email service providers that have to store them. Malware -software that serves a malicious purpose- is affecting web servers, client computers via active content, and client computers through executable files. Without the help of malware detection systems it would be easy for malware creators to collect sensitive information or to infiltrate computers. The detection of threats -such as email-spam messages, phishing messages, or malware- is an adversarial and therefore intrinsically difficult problem. Threats vary greatly and evolve over time. The detection of threats based on manually-designed rules is therefore difficult and requires a constant engineering effort. Machine-learning is a research area that revolves around the analysis of data and the discovery of patterns that describe aspects of the data. Discriminative learning methods extract prediction models from data that are optimized to predict a target attribute as accurately as possible. Machine-learning methods hold the promise of automatically identifying patterns that robustly and accurately detect threats. This thesis focuses on the design and analysis of discriminative learning methods for the two computer-security problems under investigation: email-campaign and malware detection. The first part of this thesis addresses email-campaign detection. We focus on regular expressions as a syntactic framework, because regular expressions are intuitively comprehensible by security engineers and administrators, and they can be applied as a detection mechanism in an extremely efficient manner. In this setting, a prediction model is provided with exemplary messages from an email-spam campaign. The prediction model has to generate a regular expression that reveals the syntactic pattern that underlies the entire campaign, and that a security engineers finds comprehensible and feels confident enough to use the expression to blacklist further messages at the email server. We model this problem as two-stage learning problem with structured input and output spaces which can be solved using standard cutting plane methods. Therefore we develop an appropriate loss function, and derive a decoder for the resulting optimization problem. The second part of this thesis deals with the problem of predicting whether a given JavaScript or PHP file is malicious or benign. Recent malware analysis techniques use static or dynamic features, or both. In fully dynamic analysis, the software or script is executed and observed for malicious behavior in a sandbox environment. By contrast, static analysis is based on features that can be extracted directly from the program file. In order to bypass static detection mechanisms, code obfuscation techniques are used to spread a malicious program file in many different syntactic variants. Deobfuscating the code before applying a static classifier can be subjected to mostly static code analysis and can overcome the problem of obfuscated malicious code, but on the other hand increases the computational costs of malware detection by an order of magnitude. In this thesis we present a cascaded architecture in which a classifier first performs a static analysis of the original code and -based on the outcome of this first classification step- the code may be deobfuscated and classified again. We explore several types of features including token $n$-grams, orthogonal sparse bigrams, subroutine-hashings, and syntax-tree features and study the robustness of detection methods and feature types against the evolution of malware over time. The developed tool scans very large file collections quickly and accurately. Each model is evaluated on real-world data and compared to reference methods. Our approach of inferring regular expressions to filter emails belonging to an email spam campaigns leads to models with a high true-positive rate at a very low false-positive rate that is an order of magnitude lower than that of a commercial content-based filter. Our presented system -REx-SVMshort- is being used by a commercial email service provider and complements content-based and IP-address based filtering. Our cascaded malware detection system is evaluated on a high-quality data set of almost 400,000 conspicuous PHP files and a collection of more than 1,00,000 JavaScript files. From our case study we can conclude that our system can quickly and accurately process large data collections at a low false-positive rate. N2 - Computer-Sicherheit beschäftigt sich mit der Erkennung und der Abwehr von Bedrohungen für Computer-Netze, Daten und Computer-Hardware. In dieser Dissertation wird die Leistungsfähigkeit von Modellen des maschinellen Lernens zur Erkennung von Bedrohungen anhand von zwei konkreten Fallstudien analysiert. Im ersten Szenario wird die Leistungsfähigkeit von Modellen zur Erkennung von Email Spam-Kampagnen untersucht. E-Mail Spam-Kampagnen werden häufig von leicht zu bedienenden Tools erzeugt. Diese Tools erlauben es dem Benutzer, mit Hilfe eines Templates (z.B. einer regulären Grammatik) eine Emailvorlage zu definieren. Ein solches Template kann z.B. auf die Knoten eines Botnetzes verteilt werden. Dort werden Nachrichten mit diesem Template generiert und an verschiedene Absender verschickt. Die damit entstandenen E-Mail Spam-Kampagnen können riesige Datenmengen produzieren und somit zu einer Gefahr für die Stabilität der Infrastruktur von E-Mail-Service-Providern werden. Im zweiten Szenario wird die Leistungsfähigkeit von Modellen zur Erkennung von Malware untersucht. Malware bzw. Software, die schadhaften Programmcode enthält, kann Web-Server und Client-Computer über aktive Inhalte und Client-Computer über ausführbare Dateien beeinflussen. Somit kann die die reguläre und legitime Nutzung von Diensten verhindert werden. Des Weiteren kann Malware genutzt werden, um sensible Informationen zu sammeln oder Computer zu infiltrieren. Die Erkennung von Bedrohungen, die von E-Mail-Spam-Mails, Phishing-E-Mails oder Malware ausgehen, gestaltet sich schwierig. Zum einen verändern sich Bedrohungen von Zeit zu Zeit, zum anderen werden E-Mail-Spam-Mails oder Malware so modifiziert, dass sie von aktuellen Erkennungssystemen nicht oder nur schwer zu erkennen sind. Erkennungssysteme, die auf manuell erstellten Regeln basieren, sind deshalb wenig effektiv, da sie ständig administriert werden müssen. Sie müssen kontinuierlich gewartet werden, um neue Regeln (für veränderte oder neu auftretende Bedrohungen) zu erstellen und alte Regeln anzupassen bzw. zu löschen. Maschinelles Lernen ist ein Forschungsgebiet, das sich mit der Analyse von Daten und der Erkennung von Mustern beschäftigt, um bestimmte Aspekte in Daten, wie beispielsweise die Charakteristika von Malware, zu beschreiben. Mit Hilfe der Methoden des Maschinellen Lernens ist es möglich, automatisiert Muster in Daten zu erkennen. Diese Muster können genutzt werden, um Bedrohung gezielt und genau zu erkennen. Im ersten Teil wird ein Modell zur automatischen Erkennung von E-Mail-Spam-Kampag\-nen vorgestellt. Wir verwenden reguläre Ausdrücke als syntaktischen Rahmen, um E-Mail-Spam-Kampagnen zu beschreiben und E-Mails die zu einer E-Mail-Spam-Kampagne gehören zu identifizieren. Reguläre Ausdrücke sind intuitiv verständlich und können einfach von Administratoren genutzt werden, um E-Mail-Spam-Kampagnen zu beschreiben. Diese Arbeit stellt ein Modell vor, das für eine gegebene E-Mail-Spam-Kampagne einen regulären Ausdruck vorhersagt. In dieser Arbeit stellen wir ein Verfahren vor, um ein Modell zu bestimmen, das reguläre Ausdrücke vorhersagt, die zum Einen die Gesamtheit aller E-Mails in einer Spam-Kampagne abbilden und zum Anderen so verständlich aufgebaut sind, dass ein Systemadministrator eines E-Mail Servers diesen verwendet. Diese Problemstellung wird als ein zweistufiges Lernproblem mit strukturierten Ein- und Ausgaberäumen modelliert, welches mit Standardmethoden des Maschinellen Lernens gelöst werden kann. Hierzu werden eine geeignete Verlustfunktion, sowie ein Dekodierer für das resultierende Optimierungsproblem hergeleitet. Der zweite Teil behandelt die Analyse von Modellen zur Erkennung von Java-Script oder PHP-Dateien mit schadhaften Code. Viele neu entwickelte Malwareanalyse-Tools nutzen statische, dynamische oder eine Mischung beider Merkmalsarten als Eingabe, um Modelle zur Erkennung von Malware zu bilden. Um dynamische Merkmale zu extrahieren, wird eine Software oder ein Teil des Programmcodes in einer gesicherten Umgebung ausgeführt und das Verhalten (z.B. Speicherzugriffe oder Funktionsaufrufe) analysiert. Bei der statischen Analyse von Skripten und Software werden Merkmale direkt aus dem Programcode extrahiert. Um Erkennungsmechanismen, die nur auf statischen Merkmalen basieren, zu umgehen, wird der Programmcode oft maskiert. Die Maskierung von Programmcode wird genutzt, um einen bestimmten schadhaften Programmcode in vielen syntaktisch unterschiedlichen Varianten zu erzeugen. Der originale schadhafte Programmcode wird dabei erst zur Laufzeit generiert. Wird der Programmcode vor dem Anwenden eines Vorhersagemodells demaskiert, spricht man von einer vorwiegend statischen Programmcodeanalyse. Diese hat den Vorteil, dass enthaltener Schadcode einfacher zu erkennen ist. Großer Nachteil dieses Ansatzes ist die erhöhte Laufzeit durch das Demaskieren der einzelnen Dateien vor der Anwendung des Vorhersagemodells. In dieser Arbeit wird eine mehrstufige Architektur präsentiert, in der ein Klassifikator zunächst eine Vorhersage auf Grundlage einer statischen Analyse auf dem originalen Programmcode trifft. Basierend auf dieser Vorhersage wird der Programcode in einem zweiten Schritt demaskiert und erneut ein Vorhersagemodell angewendet. Wir betrachten dabei eine Vielzahl von möglichen Merkmalstypen, wie $n$-gram Merkmale, orthogonal sparse bigrams, Funktions-Hashes und Syntaxbaum Merkmale. Zudem wird in dieser Dissertation untersucht, wie robust die entwickelten Erkennungsmodelle gegenüber Veränderungen von Malware über die Zeit sind. Das vorgestellte Verfahren ermöglicht es, große Datenmengen mit hoher Treffergenauigkeit nach Malware zu durchsuchen. Alle in dieser Dissertation vorgestellten Modelle wurden auf echten Daten evaluiert und mit Referenzmethoden verglichen. Das vorgestellte Modell zur Erkennung von E-Mail-Spam-Kampagnen hat eine hohe richtig-positive Rate und eine sehr kleine falsch-positiv Rate die niedriger ist, als die eines kommerziellen E-Mail-Filters. Das Modell wird von einem kommerziellen E-Mail Service Provider während des operativen Geschäfts genutzt, um eingehende und ausgehende E-Mails eines E-Mails-Servers zu überprüfen. Der Ansatz zur Malwareerkennung wurde auf einem Datensatz mit rund 400.000 verdächtigen PHP Dateien und einer Sammlung von mehr als 1.000.000 Java-Script Dateien evaluiert. Die Fallstudie auf diesen Daten zeigt, dass das vorgestellte System schnell und mit hoher Genauigkeit riesige Datenmengen mit wenigen Falsch-Alarmen nach Malware durchsuchen kann. KW - malware detection KW - structured output prediction KW - pattern recognition KW - computer security KW - email spam detection KW - maschninelles Lernen KW - Computersicherheit KW - strukturierte Vorhersage KW - Klassifikation KW - Vorhersage KW - Spam KW - Malware Y1 - 2016 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus4-100251 ER - TY - THES A1 - Haider, Peter T1 - Prediction with Mixture Models T1 - Vorhersage mit Mischmodellen N2 - Learning a model for the relationship between the attributes and the annotated labels of data examples serves two purposes. Firstly, it enables the prediction of the label for examples without annotation. Secondly, the parameters of the model can provide useful insights into the structure of the data. If the data has an inherent partitioned structure, it is natural to mirror this structure in the model. Such mixture models predict by combining the individual predictions generated by the mixture components which correspond to the partitions in the data. Often the partitioned structure is latent, and has to be inferred when learning the mixture model. Directly evaluating the accuracy of the inferred partition structure is, in many cases, impossible because the ground truth cannot be obtained for comparison. However it can be assessed indirectly by measuring the prediction accuracy of the mixture model that arises from it. This thesis addresses the interplay between the improvement of predictive accuracy by uncovering latent cluster structure in data, and further addresses the validation of the estimated structure by measuring the accuracy of the resulting predictive model. In the application of filtering unsolicited emails, the emails in the training set are latently clustered into advertisement campaigns. Uncovering this latent structure allows filtering of future emails with very low false positive rates. In order to model the cluster structure, a Bayesian clustering model for dependent binary features is developed in this thesis. Knowing the clustering of emails into campaigns can also aid in uncovering which emails have been sent on behalf of the same network of captured hosts, so-called botnets. This association of emails to networks is another layer of latent clustering. Uncovering this latent structure allows service providers to further increase the accuracy of email filtering and to effectively defend against distributed denial-of-service attacks. To this end, a discriminative clustering model is derived in this thesis that is based on the graph of observed emails. The partitionings inferred using this model are evaluated through their capacity to predict the campaigns of new emails. Furthermore, when classifying the content of emails, statistical information about the sending server can be valuable. Learning a model that is able to make use of it requires training data that includes server statistics. In order to also use training data where the server statistics are missing, a model that is a mixture over potentially all substitutions thereof is developed. Another application is to predict the navigation behavior of the users of a website. Here, there is no a priori partitioning of the users into clusters, but to understand different usage scenarios and design different layouts for them, imposing a partitioning is necessary. The presented approach simultaneously optimizes the discriminative as well as the predictive power of the clusters. Each model is evaluated on real-world data and compared to baseline methods. The results show that explicitly modeling the assumptions about the latent cluster structure leads to improved predictions compared to the baselines. It is beneficial to incorporate a small number of hyperparameters that can be tuned to yield the best predictions in cases where the prediction accuracy can not be optimized directly. N2 - Das Lernen eines Modells für den Zusammenhang zwischen den Eingabeattributen und annotierten Zielattributen von Dateninstanzen dient zwei Zwecken. Einerseits ermöglicht es die Vorhersage des Zielattributs für Instanzen ohne Annotation. Andererseits können die Parameter des Modells nützliche Einsichten in die Struktur der Daten liefern. Wenn die Daten eine inhärente Partitionsstruktur besitzen, ist es natürlich, diese Struktur im Modell widerzuspiegeln. Solche Mischmodelle generieren Vorhersagen, indem sie die individuellen Vorhersagen der Mischkomponenten, welche mit den Partitionen der Daten korrespondieren, kombinieren. Oft ist die Partitionsstruktur latent und muss beim Lernen des Mischmodells mitinferiert werden. Eine direkte Evaluierung der Genauigkeit der inferierten Partitionsstruktur ist in vielen Fällen unmöglich, weil keine wahren Referenzdaten zum Vergleich herangezogen werden können. Jedoch kann man sie indirekt einschätzen, indem man die Vorhersagegenauigkeit des darauf basierenden Mischmodells misst. Diese Arbeit beschäftigt sich mit dem Zusammenspiel zwischen der Verbesserung der Vorhersagegenauigkeit durch das Aufdecken latenter Partitionierungen in Daten, und der Bewertung der geschätzen Struktur durch das Messen der Genauigkeit des resultierenden Vorhersagemodells. Bei der Anwendung des Filterns unerwünschter E-Mails sind die E-Mails in der Trainingsmende latent in Werbekampagnen partitioniert. Das Aufdecken dieser latenten Struktur erlaubt das Filtern zukünftiger E-Mails mit sehr niedrigen Falsch-Positiv-Raten. In dieser Arbeit wird ein Bayes'sches Partitionierunsmodell entwickelt, um diese Partitionierungsstruktur zu modellieren. Das Wissen über die Partitionierung von E-Mails in Kampagnen hilft auch dabei herauszufinden, welche E-Mails auf Veranlassen des selben Netzes von infiltrierten Rechnern, sogenannten Botnetzen, verschickt wurden. Dies ist eine weitere Schicht latenter Partitionierung. Diese latente Struktur aufzudecken erlaubt es, die Genauigkeit von E-Mail-Filtern zu erhöhen und sich effektiv gegen verteilte Denial-of-Service-Angriffe zu verteidigen. Zu diesem Zweck wird in dieser Arbeit ein diskriminatives Partitionierungsmodell hergeleitet, welches auf dem Graphen der beobachteten E-Mails basiert. Die mit diesem Modell inferierten Partitionierungen werden via ihrer Leistungsfähigkeit bei der Vorhersage der Kampagnen neuer E-Mails evaluiert. Weiterhin kann bei der Klassifikation des Inhalts einer E-Mail statistische Information über den sendenden Server wertvoll sein. Ein Modell zu lernen das diese Informationen nutzen kann erfordert Trainingsdaten, die Serverstatistiken enthalten. Um zusätzlich Trainingsdaten benutzen zu können, bei denen die Serverstatistiken fehlen, wird ein Modell entwickelt, das eine Mischung über potentiell alle Einsetzungen davon ist. Eine weitere Anwendung ist die Vorhersage des Navigationsverhaltens von Benutzern einer Webseite. Hier gibt es nicht a priori eine Partitionierung der Benutzer. Jedoch ist es notwendig, eine Partitionierung zu erzeugen, um verschiedene Nutzungsszenarien zu verstehen und verschiedene Layouts dafür zu entwerfen. Der vorgestellte Ansatz optimiert gleichzeitig die Fähigkeiten des Modells, sowohl die beste Partition zu bestimmen als auch mittels dieser Partition Vorhersagen über das Verhalten zu generieren. Jedes Modell wird auf realen Daten evaluiert und mit Referenzmethoden verglichen. Die Ergebnisse zeigen, dass das explizite Modellieren der Annahmen über die latente Partitionierungsstruktur zu verbesserten Vorhersagen führt. In den Fällen bei denen die Vorhersagegenauigkeit nicht direkt optimiert werden kann, erweist sich die Hinzunahme einer kleinen Anzahl von übergeordneten, direkt einstellbaren Parametern als nützlich. KW - maschinelles Lernen KW - Vorhersage KW - Clusteranalyse KW - Mischmodelle KW - machine learning KW - prediction KW - clustering KW - mixture models Y1 - 2013 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:kobv:517-opus-69617 ER -