Presentation is loading. Please wait.

Presentation is loading. Please wait.

CISC 879 - Machine Learning for Solving Systems Problems John Cavazos Dept of Computer & Information Sciences University of Delaware www.cis.udel.edu/~cavazos/cisc879.

Similar presentations


Presentation on theme: "CISC 879 - Machine Learning for Solving Systems Problems John Cavazos Dept of Computer & Information Sciences University of Delaware www.cis.udel.edu/~cavazos/cisc879."— Presentation transcript:

1 CISC 879 - Machine Learning for Solving Systems Problems John Cavazos Dept of Computer & Information Sciences University of Delaware www.cis.udel.edu/~cavazos/cisc879 Applying Support Vector Machines for Intrusion Detection on Virtual Machines Lecture 6

2 CISC 879 - Machine Learning for Solving Systems Problems Outline Background and Motivation Intrusion Detection Systems Support Vector Machines (SVMs) Dataset Results Conclusions Slides adapted from presentation by Fatemeh Azmandian (http://www.ece.neu.edu/~fazmandi)

3 CISC 879 - Machine Learning for Solving Systems Problems Background Virtual Machine: A software implementation of a machine (computer) that executes programs like a real machine Virtual Machine Monitor (VMM) or hypervisor: The software layer providing the virtualization Allows the multiplexing of the underlying physical machine between different virtual machines, each running its own operating system

4 CISC 879 - Machine Learning for Solving Systems Problems Background (contd) Intrusion Detection: The process of monitoring the events occurring in a computer system or network and analyzing them for signs of intrusions Intrusion: An attempt to compromise: Confidentiality Integrity Availability An attempt to bypass the security mechanisms of a computer or network [1]

5 CISC 879 - Machine Learning for Solving Systems Problems Background (contd) Intrusion Detection System (IDS): Software or hardware system that automates the process of monitoring the events occurring in a computer system or network, analyzing them for signs of security problems Why is it important? Every year, billions of dollars are lost due to virus attacks

6 CISC 879 - Machine Learning for Solving Systems Problems Financial Impact of Virus Attacks

7 CISC 879 - Machine Learning for Solving Systems Problems Intrusion Detection Approaches Misuse Detection Identifies intrusions based on known patterns for the malicious activity Known patterns are referred to as signatures Anomaly Detection Identifies intrusions based on deviations from established normal behavior Capable of identifying new (previously unseen) attacks New normal behavior may be misclassified as abnormal, producing false positives

8 CISC 879 - Machine Learning for Solving Systems Problems Intrusion Detection Systems Host IDS (HIDS): Performs intrusion detection from within host it is monitoring Advantages: Good visibility of the internal state of the host machine Difficult for malicious code (malware) to evade the HIDS Disadvantage: Susceptible to attacks by malware

9 CISC 879 - Machine Learning for Solving Systems Problems Intrusion Detection Systems Network IDS (NIDS) Performs intrusion detection through network connections and outside the host machine Advantage: More resistant to attacks by malware Disadvantages: Poor visibility of the internal state of the host machine Easier for malware to evade the NIDS

10 CISC 879 - Machine Learning for Solving Systems Problems Intrusion Detection Systems VMM-based IDS: Performs intrusion detection for a virtual machine through the Virtual Machine Monitor (VMM) Advantages: Better visibility of the internal state of the host machine, compared to an NIDS Harder for malware to evade the IDS Less susceptible to attacks by malware Our goal is to create a VMM-based IDS using machine learning techniques Support Vector Machines (SVMs)

11 CISC 879 - Machine Learning for Solving Systems Problems VMM-IDS Overview

12 CISC 879 - Machine Learning for Solving Systems Problems Support Vector Machines (SVMs) Machine learning to classify data points into one of two classes Two-Class SVMs Training is done on data from two classes One-Class SVMs Training is done on data from only one class During the testing phase, the origin and data points close to it are considered part of the second class

13 CISC 879 - Machine Learning for Solving Systems Problems Linear Classifiers Slide Source: Andrew W. Moore f x y est denotes +1 denotes -1 f(x,w,b) = sign(w. x - b) How would you classify this data?

14 CISC 879 - Machine Learning for Solving Systems Problems f x y est denotes +1 denotes -1 f(x,w,b) = sign(w. x - b) How would you classify this data? Slide Source: Andrew W. Moore Linear Classifiers

15 CISC 879 - Machine Learning for Solving Systems Problems f x y est denotes +1 denotes -1 f(x,w,b) = sign(w. x - b) How would you classify this data? Slide Source: Andrew W. Moore Linear Classifiers

16 CISC 879 - Machine Learning for Solving Systems Problems f x y est denotes +1 denotes -1 f(x,w,b) = sign(w. x - b) How would you classify this data? Slide Source: Andrew W. Moore Linear Classifiers

17 CISC 879 - Machine Learning for Solving Systems Problems f x y est denotes +1 denotes -1 f(x,w,b) = sign(w. x - b) How would you classify this data? Slide Source: Andrew W. Moore Linear Classifiers

18 CISC 879 - Machine Learning for Solving Systems Problems f x y est denotes +1 denotes -1 f(x,w,b) = sign(w. x - b) Slide Source: Andrew W. Moore Classifier Margin Define the margin of a linear classifier as the width that the boundary could be increased by before hitting a datapoint

19 CISC 879 - Machine Learning for Solving Systems Problems x y est denotes +1 denotes -1 f(x,w,b) = sign(w. x - b) Slide Source: Andrew W. Moore Maximum Margin The maximum margin linear classifier is the linear classifier with the maximum margin. This is the simplest kind of SVM (Called an LSVM) Linear SVM f

20 CISC 879 - Machine Learning for Solving Systems Problems x y est denotes +1 denotes -1 f(x,w,b) = sign(w. x - b) Slide Source: Andrew W. Moore Maximum Margin The maximum margin linear classifier is the linear classifier with the maximum margin. This is the simplest kind of SVM (Called an LSVM) Linear SVM f Support Vectors are those datapoints that the margin pushes up against

21 CISC 879 - Machine Learning for Solving Systems Problems Suppose 1-dimension What would SVMs do with this data? x=0

22 CISC 879 - Machine Learning for Solving Systems Problems Suppose 1-dimension Not a big surprise Positive plane Negative plane x=0

23 CISC 879 - Machine Learning for Solving Systems Problems What can be done about this? x=0 Harder 1-dimensional dataset

24 CISC 879 - Machine Learning for Solving Systems Problems Harder 1-dimensional dataset Use a kernel function to project the data onto higher dimensional space x=0

25 CISC 879 - Machine Learning for Solving Systems Problems Harder 1-dimensional dataset x=0 Use a kernel function to project the data onto higher dimensional space

26 CISC 879 - Machine Learning for Solving Systems Problems Non-linear SVMs: Feature spaces Φ: x φ(x) Input spaceFeature space

27 CISC 879 - Machine Learning for Solving Systems Problems Non-linear SVMs: Feature spaces Kernel functions are used to transform data into a different, linearly separable feature space (.) ( ) Feature spaceInput space

28 CISC 879 - Machine Learning for Solving Systems Problems Non-linear SVMs:Kernel Functions Popular Kernel Functions: Linear kernel Polynomial Kernel Gaussian Radial Basis Function (RBF) kernel Sigmoid kernel

29 CISC 879 - Machine Learning for Solving Systems Problems Dataset Synthetic dataset based on SQL and AsteriskNow workload Process-level features Rate-based features Correlation-based features Time-based windows of execution Current window size: 50 interrupt timers Three normal datasets per workload Two abnormal datasets per workload Consists of both normal and abnormal data points

30 CISC 879 - Machine Learning for Solving Systems Problems Constructing Features

31 CISC 879 - Machine Learning for Solving Systems Problems Features

32 CISC 879 - Machine Learning for Solving Systems Problems Two-Class SVM Results Experiment Workload Train on Abn1 Test on Abn2 Train on Abn2 Test on Abn1 Mixed Features SQL 0.900.96 Asterisk 0.81 Rate Features SQL 0.910.95 Asterisk 0.820.76 Correlation Features SQL 0.910.95 Asterisk 0.850.73

33 CISC 879 - Machine Learning for Solving Systems Problems SQL Train on Abn1 and Test on Abn2: Time Series Plot

34 CISC 879 - Machine Learning for Solving Systems Problems SQL Train : Train on Abn1 and Test on Abn2: (ROC Curve)

35 CISC 879 - Machine Learning for Solving Systems Problems SQL Train on Abn2 and Test on Abn1: Time Series Plot

36 CISC 879 - Machine Learning for Solving Systems Problems SQL Train on Abn2 and Test on Abn1: ROC Curve

37 CISC 879 - Machine Learning for Solving Systems Problems Conclusions Two-class SVM can perform well in detecting intrusions in virtual machine environments Goal to develop accurate intrusion detection system for VMs based on machine learning techniques

38 CISC 879 - Machine Learning for Solving Systems Problems References [1]R. Bace and P. Mell. Intrusion Detection Systems. NIST Special Publications SP 800- 31, November, 2001. [2]T. Garfinkel and M. Rosenblum. A Virtual Machine Introspection Based Architecture for Intrusion Detection. Proceedings of the Network and Distributed Systems Security Symposium, 2003. [3]Andrew Moores slides on Support Vector Machines http://www.cs.cmu.edu/~awm/tutorials [4]Prasads slides on Support Vector Machines www.cs.wright.edu/~tkprasad/courses/cs499/L18SVM.ppt [5]2005 Malware Report: Executive Summary http://www.computereconomics.com/article.cfm?id=1090 [6]Virtual Machine http://en.wikipedia.org/wiki/Virtual_machine


Download ppt "CISC 879 - Machine Learning for Solving Systems Problems John Cavazos Dept of Computer & Information Sciences University of Delaware www.cis.udel.edu/~cavazos/cisc879."

Similar presentations


Ads by Google