Data Mining and Intrusion Detection


Published on

Published in: Business, Technology
  • nice one i wish to get it
    Are you sure you want to  Yes  No
    Your message goes here
  • Very true about data mining.

    Darren Mack
    Are you sure you want to  Yes  No
    Your message goes here
  • Great presentation about the need to innovate company models; how you can represent them succinctly; as well as the need to make advancement initiatives actionable. Superb use of photographs as well as obvious to see illustrative examples.
    Are you sure you want to  Yes  No
    Your message goes here
  • Very interesting ppt. The research indicated PPT only contains 30% of information; therefore the 70% valuable information comes from the presenter himself/herself. provides you a chance to record your voice with your PowerPoint presentation and upload to the website. It can share with more readers and also promote your presentation more effectively on
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Data Mining and Intrusion Detection

  1. 1. Data Mining: Concepts and Techniques — Chapter 11 — — Data Mining and Intrusion Detection — <ul><li>Jiawei Han and Micheline Kamber </li></ul><ul><li>Department of Computer Science </li></ul><ul><li>University of Illinois at Urbana-Champaign </li></ul><ul><li> </li></ul><ul><li>©2006 Jiawei Han and Micheline Kamber. All rights reserved. </li></ul><ul><li>Acknowledgements: Jian Pei and Huiping Chen (Spring 2004) </li></ul>
  2. 3. Outline <ul><li>Intrusion detection and computer security </li></ul><ul><li>Current intrusion detection approaches </li></ul><ul><li>Data Mining Approaches for Intrusion Detection </li></ul><ul><li>Summary </li></ul>
  3. 4. Intrusion Detection and Computer Security <ul><li>Computer security goals: </li></ul><ul><ul><li>Confidentiality, integrity, and availability </li></ul></ul><ul><li>Intrusion is a set of actions aimed to compromise these security goals </li></ul><ul><li>Intrusion prevention (authentication, encryption, etc.) alone is not sufficient </li></ul><ul><li>Intrusion detection is needed </li></ul>
  4. 5. Intrusion Examples <ul><li>Intrusions : Any set of actions that threaten the integrity, availability, or confidentiality of a network resource </li></ul><ul><li>Examples </li></ul><ul><ul><li>Denial of service (DoS): attempts to starve a host of resources needed to function correctly </li></ul></ul><ul><ul><li>Scan: reconnaissance on the network or a particular host </li></ul></ul><ul><ul><li>Worms and viruses: replicating on other hosts </li></ul></ul><ul><ul><li>Compromises: obtain privileged access to a host by known vulnerabilities </li></ul></ul>
  5. 6. Intrusion Detection <ul><li>Intrusion detection: The process of monitoring and analyzing the events occurring in a computer and/or network system in order to detect signs of security problems </li></ul><ul><li>Primary assumption : User and program activities can be monitored and modeled </li></ul><ul><li>Steps </li></ul><ul><ul><li>Monitoring and analyzing traffic </li></ul></ul><ul><ul><li>Identifying abnormal activities </li></ul></ul><ul><ul><li>Assessing severity and raising alarm </li></ul></ul>
  6. 7. Monitoring and Analyzing Traffic <ul><li>TCPdump and Windump </li></ul><ul><ul><li>Provide insight into the traffic activity on a network </li></ul></ul><ul><ul><ul><li>ftp:// </li></ul></ul></ul><ul><ul><ul><li>http:// </li></ul></ul></ul><ul><li>Ethereal </li></ul><ul><ul><li>GUI to interpret all layers of the packet </li></ul></ul>
  7. 8. Goals of Intrusion Detection System (IDS) <ul><li>Detect wide variety of intrusions </li></ul><ul><ul><li>Previously known and unknown attacks </li></ul></ul><ul><ul><li>Suggests need to learn/adapt to new attacks or changes in behavior </li></ul></ul><ul><li>Detect intrusions in timely fashion </li></ul><ul><ul><li>May need to be real-time, especially when system responds to intrusion </li></ul></ul><ul><ul><ul><li>Problem: analyzing commands may impact response time of system </li></ul></ul></ul><ul><ul><li>May suffice to report intrusion occurred a few minutes or hours ago </li></ul></ul>
  8. 9. Goals of Intrusion Detect. System (IDS) (2) <ul><li>Present analysis in simple, easy-to-understand format </li></ul><ul><li>Be accurate </li></ul><ul><ul><li>Minimize false positives, false negatives </li></ul></ul><ul><ul><ul><li>False positive : An event, incorrectly identified by the IDS as being an intrusion when none has occurred </li></ul></ul></ul><ul><ul><ul><li>False negative : An event that the IDS fails to identify as an intrusion when one has in fact occurred </li></ul></ul></ul><ul><ul><li>Minimize time spent verifying attacks, looking for them </li></ul></ul>
  9. 10. IDS Architecture <ul><li>Sensors (agent) </li></ul><ul><ul><li>to collect data and forward info to the analyzer </li></ul></ul><ul><ul><ul><li>network packets </li></ul></ul></ul><ul><ul><ul><li>log files </li></ul></ul></ul><ul><ul><ul><li>system call traces </li></ul></ul></ul><ul><li>Analyzers (detector) </li></ul><ul><ul><li>To receive input from one or more sensors or from other analyzers </li></ul></ul><ul><ul><li>To determine if an intrusion has occurred </li></ul></ul><ul><li>User interface </li></ul><ul><ul><li>To enable a user to view output from the system or control the behavior of the system </li></ul></ul>
  10. 11. IDS Architecture
  11. 12. Signature-Based Intrusion Detection <ul><li>Human analysts investigate suspicious traffic </li></ul><ul><li>Extract signatures </li></ul><ul><ul><li>Features of known intrusions </li></ul></ul><ul><li>Use pre-defined signatures to discover malicious packets </li></ul><ul><li>Examples </li></ul><ul><ul><li>LaBrea Tarpit by Tom Liston </li></ul></ul><ul><ul><li>Snort and Snort rules Marty Roesch </li></ul></ul>
  12. 13. Snort by Marty Roesch <ul><li>An open source free network intrusion detection system </li></ul><ul><ul><li>Signature-based, use a combination of rules and preprocessors </li></ul></ul><ul><ul><li>On many platforms, including UNIX and Windows </li></ul></ul><ul><ul><li> </li></ul></ul><ul><li>Preprocessors </li></ul><ul><ul><li>IP defragmentation, port-scan detection, web traffic normalization, TCP stream reassembly, … </li></ul></ul><ul><ul><li>Can analyze streams, not only a single packet at a time </li></ul></ul>
  13. 14. Snort—Overview <ul><li>Typical run from the command line </li></ul><ul><ul><li>GUI available by IDScenter/Demarc/Puresecure </li></ul></ul><ul><li>Modes </li></ul><ul><ul><li>Sniff: dump sniffed traffic to the screen </li></ul></ul><ul><ul><li>Packet log: log the packets to the disk </li></ul></ul><ul><ul><li>NIDS: compare the network traffic with a preconfigured set of signatures </li></ul></ul><ul><li>Output can be stored into spool files or a database </li></ul>
  14. 15. Snort Rules <ul><li>Two parts </li></ul><ul><ul><li>Rule header: define who must be involved </li></ul></ul><ul><ul><li>Rule options: define what must be involved (action) </li></ul></ul><ul><li>The rule triggers when an outsider attempt to make an internal TCP connection </li></ul><ul><li>If both SYN and FIN are set, a message of “SYN-FIN scan” is reported with the alert </li></ul>(flags: SF; msg:”SYN-FIN scan;) alert tcp ! any -> any Rule options Rule header
  15. 16. Application of Snort Rules <ul><li>A packet triggers the first rule that matches and does not examine the remainder </li></ul><ul><ul><li>The ordering of rules is critical </li></ul></ul><ul><li>Each Snort rule inspects only one packet </li></ul><ul><li>Use preprocessors such as IP defragmentation or TCP stream reassembly to handle a series of packets </li></ul>
  16. 17. Snort Rule Sets <ul><li>Snort comes with a very large set of rules </li></ul><ul><ul><li>Not recommended that all rules used on installation </li></ul></ul><ul><li>New Snort rules are released as soon as hours after a new exploit is discovered </li></ul><ul><ul><li>A new rule may not be a good rule </li></ul></ul><ul><ul><li>The attackers may change the signatures easily </li></ul></ul>
  17. 18. Snort and Event Viewer on Snort and Event Viewer on NT
  18. 19. Problems in Signature-Based Intrusion Detection Systems <ul><li>Many false positives: prone to generating alerts when there is no problem in fact </li></ul><ul><ul><li>Signatures are not specific enough </li></ul></ul><ul><ul><li>A packet is not examined in context with those that precede it or those that follow </li></ul></ul><ul><li>Cannot detect unknown intrusions </li></ul><ul><ul><li>Rely on signatures extracted by human experts </li></ul></ul>
  19. 20. Misuse vs. Anomaly Detection <ul><li>Misuse detection : use patterns of well-known attacks to identify intrusions </li></ul><ul><ul><li>Classification based on known intrusions </li></ul></ul><ul><ul><li>E.g., three consecutive login failures: password guessing. </li></ul></ul><ul><li>Anomaly detection : use deviation from normal usage patterns to identify intrusions </li></ul><ul><ul><li>Any significant deviations from the expected behavior are reported as possible attacks </li></ul></ul>
  20. 21. Misuse vs. Anomaly Detection STAT [HLMS90] <ul><li>Has to hand-coded known pattern. </li></ul><ul><li>Unable to detect any future intrusion </li></ul>matching the sequence of “signature actions” of known intrusion scenarios Misuse Detection Example Shortcoming Definition IDES [LTG+92] <ul><li>Rely upon in selecting the system features. </li></ul><ul><li>Has to study sequential interrelation between transactions </li></ul>using statistical measure on system features Anomaly Detection
  21. 22. Host-based vs. Network-based <ul><li>According to data sources </li></ul><ul><li>Host-based detection : the data is collected from an individual host </li></ul><ul><ul><li>Directly monitor the host data files and OS processes </li></ul></ul><ul><ul><li>Can determine exactly which host resources are the targets of a particular attack </li></ul></ul><ul><li>Network-based detection : the data is traffic across the network </li></ul><ul><ul><li>A set of traffic sensors within the network </li></ul></ul><ul><ul><li>Can easily harder against attacks and hide from the attackers </li></ul></ul>
  22. 23. OUTLINE <ul><li>Intrusion detection and computer security </li></ul><ul><li>Current intrusion detection approaches </li></ul><ul><li>Data Mining Approaches for Intrusion Detection </li></ul><ul><li>Summary </li></ul>
  23. 24. Current Intrusion Detection Approaches—Misuse Detection <ul><li>Misuse detection : </li></ul><ul><ul><li>Record the specific patterns of intrusions </li></ul></ul><ul><ul><li>Monitor current audit trails (event sequences) and pattern matching </li></ul></ul><ul><ul><li>Report the matched events as intrusions </li></ul></ul><ul><ul><li>Representation models: expert rules, Colored Petri Net, and state transition diagrams, etc. </li></ul></ul>
  24. 25. Misuse Detection Example <ul><li>Expert systems: use a set of rules to describe attacks </li></ul><ul><ul><li>IDES, ComputerWatch, NIDX, P-BEST, ISOA </li></ul></ul><ul><li>Signature analysis: capture features of attacks in audit trail </li></ul><ul><ul><li>Haystack, NetRanger, RealSecure, MuSig </li></ul></ul><ul><li>State-transition analysis: use state-transition diagrams </li></ul><ul><ul><li>STAT,USTAT and NetSTAT </li></ul></ul><ul><li>Other approaches </li></ul><ul><ul><li>Colored petri nets, e.g., IDIOT </li></ul></ul><ul><ul><li>Case-based reasoning, e.g., AUTOGUARD </li></ul></ul>
  25. 26. Current Intrusion Detection Approaches—Anomaly Detection <ul><li>Anomaly detection: </li></ul><ul><ul><li>Establishing the normal behavior profiles </li></ul></ul><ul><ul><li>Observing and comparing current activities with the (normal) profiles </li></ul></ul><ul><ul><li>Reporting significant deviations as intrusions </li></ul></ul><ul><ul><li>Statistical measures as behavior profiles: ordinal and categorical (binary and linear) </li></ul></ul>
  26. 27. Anomaly Detection Example <ul><li>Statistical methods: multivariate, temporal analysis </li></ul><ul><ul><li>IDES, NIDES, EMERALD </li></ul></ul><ul><li>Expert systems </li></ul><ul><ul><li>ComputerWatch, Wisdom & Sense </li></ul></ul>
  27. 28. Problems of Current Intrusion Detection Approaches <ul><li>Main problems: manual and ad-hoc </li></ul><ul><ul><li>Misuse detection: </li></ul></ul><ul><ul><ul><li>Known intrusion patterns have to be hand-coded </li></ul></ul></ul><ul><ul><ul><li>Unable to detect any new intrusions (that have no matched patterns recorded in the system) </li></ul></ul></ul><ul><ul><li>Anomaly detection: </li></ul></ul><ul><ul><ul><li>Selecting the right set of system features to be measured is ad hoc and based on experience </li></ul></ul></ul><ul><ul><ul><li>Unable to capture sequential interrelation between events </li></ul></ul></ul>
  28. 29. OUTLINE <ul><li>Intrusion detection and computer security </li></ul><ul><li>Current intrusion detection approaches </li></ul><ul><li>Data Mining Approaches for Intrusion Detection </li></ul><ul><li>Summary </li></ul>
  29. 30. Data Mining Approaches for Intrusion Detection <ul><li>A systematic framework </li></ul><ul><li>Why Can Data Mining Help? </li></ul><ul><li>Relevant data mining techniques </li></ul><ul><li>Building Classifiers for Intrusion Detection </li></ul><ul><li>Mining Patterns from Audit Data </li></ul>
  30. 31. A Systematic Framework—J.Stolfo et al. <ul><li>Build good models: </li></ul><ul><ul><li>select appropriate features of audit data to build intrusion detection models </li></ul></ul><ul><li>Build better models: </li></ul><ul><ul><li>architect a hierarchical detector system that combines multiple detection models </li></ul></ul><ul><li>Build updated models: </li></ul><ul><ul><li>dynamically update and deploy new detection system as needed </li></ul></ul>
  31. 32. A Systematic Framework <ul><li>Support for the feature selection and model construction: </li></ul><ul><ul><li>Apply data mining algorithms to find consistent inter- and intra- audit record (event) patterns </li></ul></ul><ul><ul><li>Use the features and time windows in the discovered patterns to build detection models </li></ul></ul><ul><ul><li>A support environment to semi-automate this process </li></ul></ul>
  32. 33. A Systematic Framework <ul><li>Combining multiple detection models: </li></ul><ul><ul><li>Each (base) detector model monitors one aspect of the system </li></ul></ul><ul><ul><li>They can employ different techniques and be independent of each other </li></ul></ul><ul><ul><li>The learned (meta) detector combines evidence from a number of base detectors </li></ul></ul><ul><li>An intelligent agent-based architecture : </li></ul><ul><ul><li>learning agents: continuously compute (learn) the detection models </li></ul></ul><ul><ul><li>detection agents: use the (updated) models to detect intrusions </li></ul></ul>
  33. 34. A Systematic Framework
  34. 35. Data Mining Approaches for Intrusion Detection <ul><li>A systematic framework </li></ul><ul><li>Why Can Data Mining Help? </li></ul><ul><li>Relevant data mining techniques </li></ul><ul><li>Building Classifiers for Intrusion Detection </li></ul><ul><li>Mining Patterns from Audit Data </li></ul>
  35. 36. Why Can Data Mining Help? <ul><li>Data mining: applying specific algorithms to extract patterns from data </li></ul><ul><li>Normal and intrusive activities leave evidence in audit data </li></ul><ul><li>From the data-centric point view, intrusion detection is a data analysis process </li></ul>
  36. 37. Why Can Data Mining Help? <ul><li>Successful applications in related domains, e.g., fraud detection, fault/alarm management </li></ul><ul><li>Learn from traffic data </li></ul><ul><ul><li>Supervised learning: learn precise models from past intrusions </li></ul></ul><ul><ul><li>Unsupervised learning: identify suspicious activities </li></ul></ul><ul><li>Maintain or update models on dynamic data </li></ul>
  37. 38. Data Mining Approaches for Intrusion Detection <ul><li>A systematic framework </li></ul><ul><li>Why Can Data Mining Help? </li></ul><ul><li>Relevant data mining techniques </li></ul><ul><li>Building Classifiers for Intrusion Detection </li></ul><ul><li>Mining Patterns from Audit Data </li></ul>
  38. 39. Frequent Patterns <ul><li>Patterns that occur frequently in a database </li></ul><ul><li>Mining Frequent patterns – finding regularities </li></ul><ul><li>Process of Mining Frequent patterns for intrusion detection </li></ul><ul><ul><li>Phase I: mine a repository of normal frequent itemsets for attack-free data </li></ul></ul><ul><ul><li>Phase II: find frequent itemsets in the last n connections and compare the patterns to the normal profile </li></ul></ul>
  39. 40. Frequent Pattern Mining in MINDS <ul><li>MINDS: a IDS using data mining techniques </li></ul><ul><ul><li>University of Minnesota </li></ul></ul><ul><li>Summarizing attacks using association rules </li></ul><ul><ul><li>{Src IP=, Dest Port=139, Bytes  [150, 200)}  {ATTACK} </li></ul></ul>
  40. 41. Patterns About Alerts <ul><li>Ning et al. CCS’02 </li></ul><ul><li>Find correlated alerts – the frequent patterns of alerts </li></ul><ul><ul><li>Attack scenarios – the logical connections between alerts </li></ul></ul><ul><ul><li>A hyper-alerts correlation graph approach </li></ul></ul><ul><li>Use the correlation of intrusion alerts to identify high level attacks </li></ul>
  41. 42. Associate rules <ul><li>Used for link analysis </li></ul><ul><li>E.g.: </li></ul><ul><ul><li>If the number of failed login attempts ( num_failed_login_attempts ) and the network service on the destination ( service ) are features, an example of rule is: </li></ul></ul><ul><ul><li>num_failed_login_attempts = 6, service = FTP => attack = DoS [1, 0.28 ] </li></ul></ul>
  42. 43. Sequential Pattern Analysis <ul><li>Models sequence patterns </li></ul><ul><li>(Temporal) order is important in many situations </li></ul><ul><ul><li>Time-series databases and sequence databases </li></ul></ul><ul><ul><li>Frequent patterns  (frequent) sequential patterns </li></ul></ul><ul><li>Sequential patterns for intrusion detection </li></ul><ul><ul><li>Capture the signatures for attacks in a series of packets </li></ul></ul>
  43. 44. Classification: A Two-Step Process <ul><li>Model construction: describe a set of predetermined classes </li></ul><ul><ul><li>Training dataset: tuples for model construction </li></ul></ul><ul><ul><ul><li>Each tuple/sample belongs to a predefined class </li></ul></ul></ul><ul><ul><li>Classification rules, decision trees, or math formulae </li></ul></ul><ul><li>Model application: classify unseen objects </li></ul><ul><ul><li>Estimate accuracy of the model using an independent test set </li></ul></ul><ul><ul><li>Acceptable accuracy  apply the model to classify data tuples with unknown class labels </li></ul></ul>
  44. 45. Classification Methods <ul><li>Basic Algorithm ID3 </li></ul><ul><li>Neural networks </li></ul><ul><li>Bayesian classification </li></ul><ul><ul><li>Naïve Bayesian classification </li></ul></ul><ul><ul><li>Bayesian belief network </li></ul></ul><ul><li>Support vector machines </li></ul>
  45. 46. Classification for Intrusion Detection <ul><li>Misuse detection </li></ul><ul><ul><li>Classification based on known intrusions </li></ul></ul><ul><li>Example: Sinclair et al. “An application of machine learning to network intrusion detection” </li></ul><ul><ul><li>Use decision trees and ID3 on host session data </li></ul></ul><ul><ul><li>Use genetic algorithms to generate rules </li></ul></ul><ul><ul><ul><li>If <pattern> then <alert> </li></ul></ul></ul>
  46. 47. HIDE <ul><li>“ A hierarchical network intrusion detection system using statistical processing and neural network classification” by Zheng et al. </li></ul><ul><li>Five major components </li></ul><ul><ul><li>Probes collect traffic data </li></ul></ul><ul><ul><li>Event preprocessor preprocesses traffic data and feeds the statistical model </li></ul></ul><ul><ul><li>Statistical processor maintains a model for normal activities and generates vectors for new events </li></ul></ul><ul><ul><li>Neural network classifies the vectors of new events </li></ul></ul><ul><ul><li>Post processor generates reports </li></ul></ul>
  47. 48. Intrusion Detection by NN and SVM <ul><li>S. Mukkamala et al., IEEE IJCNN May 2002 </li></ul><ul><li>Discover useful patterns or features that describe user behavior on a system </li></ul><ul><li>Use the set of relevant features to build classifiers </li></ul><ul><li>SVMs have great potential to be used in place of NNs due to its scalability and faster training and running time </li></ul><ul><li>NNs are especially suited for multi-category classification </li></ul>
  48. 49. Clustering <ul><li>Group data into clusters </li></ul><ul><li>What is a good clustering </li></ul><ul><ul><li>High intra-class similarity and low inter-class similarity </li></ul></ul><ul><ul><ul><li>Depending on the similarity measure </li></ul></ul></ul><ul><ul><li>The ability to discover some or all of the hidden patterns </li></ul></ul><ul><li>Clustering Approaches </li></ul><ul><ul><li>K-means </li></ul></ul><ul><ul><li>Hierarchical Clustering </li></ul></ul><ul><ul><li>Density-based methods </li></ul></ul><ul><ul><li>Grid-based methods </li></ul></ul><ul><ul><li>Model-based </li></ul></ul>
  49. 50. Clustering for Intrusion Detection <ul><li>Anomaly detection </li></ul><ul><ul><li>Any significant deviations from the expected behavior are reported as possible attacks </li></ul></ul><ul><li>Build clusters as models for normal activities </li></ul><ul><li>“ A scalable clustering for intrusion signature recognition” by Ye and Li </li></ul><ul><ul><li>Use description of clusters as signatures of intrusions </li></ul></ul>
  50. 51. Alert Correlation <ul><li>F. Cuppens and A. Miege, in IEEE S&P’02 </li></ul><ul><li>Use clustering and merging functions to recognize alerts that correspond to the same occurrence of an attack </li></ul><ul><ul><li>Create a new alert that merge data contained in these various alerts </li></ul></ul><ul><li>Generate global and synthetic alerts to reduce the number of alerts further </li></ul>
  51. 52. Mining Data Streams <ul><li>Continuous arrival data in multiple, rapid, time-varying, possibly unpredictable and unbounded streams </li></ul><ul><li>Many applications </li></ul><ul><ul><li>Financial applications, network monitoring, security, telecommunications data management, web application, manufacturing, sensor networks, etc. </li></ul></ul>
  52. 53. Mining Data Streams for Intrusion Detection <ul><li>Maintaining profiles of normal activities </li></ul><ul><ul><li>The profiles of normal activities may drift </li></ul></ul><ul><li>Identifying novel attacks </li></ul><ul><ul><li>Identifying clusters and outliers in traffic data streams </li></ul></ul>
  53. 54. Data Mining Approaches for Intrusion Detection <ul><li>A systematic framework </li></ul><ul><li>Why Can Data Mining Help? </li></ul><ul><li>Relevant data mining techniques </li></ul><ul><li>Building Classifiers for Intrusion Detection </li></ul><ul><li>Mining Patterns from Audit Data </li></ul>
  54. 55. Building Classifiers for Intrusion Detection— J.Stolfo et al. <ul><li>Experiments in constructing classification models for anomaly detection </li></ul><ul><li>Two experiments: </li></ul><ul><ul><li>sendmail system call data </li></ul></ul><ul><ul><li>network tcpdump data </li></ul></ul><ul><li>Use meta classifier to combine multiple classification models </li></ul>
  55. 56. Classification Models on sendmail <ul><li>The data: sequence of system calls made by sendmail . </li></ul><ul><li>Classification models (rules): describe the “normal” patterns of the system call sequences. </li></ul><ul><li>The rule set is the normal profile of sendmail </li></ul><ul><li>Detection: calculate the deviation from the profile </li></ul><ul><ul><li>large number/high scores of “violations” to the rules in a new trace suggests an exploit </li></ul></ul>
  56. 57. Classification Models on sendmail <ul><li>The sendmail data: </li></ul><ul><ul><li>Each trace has two columns: the process ids and the system call numbers </li></ul></ul><ul><ul><li>Normal traces: sendmail and sendmail daemon </li></ul></ul><ul><ul><li>Abnormal traces: sunsendmailcap, syslog-remote, syslog-remote, decode, sm5x and sm56a attacks </li></ul></ul>
  57. 58. Classification Models on sendmail <ul><li>Lessons learned: </li></ul><ul><ul><li>Normal behavior can be established and used to detect anomalous usage </li></ul></ul><ul><ul><li>Need to collect near “complete” normal data in order to build the “normal” model </li></ul></ul><ul><ul><li>But how do we know when to stop collecting? </li></ul></ul><ul><ul><li>Need tools to guide the audit data gathering process </li></ul></ul>
  58. 59. Classification Models on tcpdump <ul><li>The tcpdump data (part of a public data visualization contest): </li></ul><ul><ul><li>Packets of incoming, out-going, and internal broadcast traffic </li></ul></ul><ul><ul><li>One trace of normal network traffic </li></ul></ul><ul><ul><li>Three traces of network intrusions </li></ul></ul>
  59. 60. Data Preprocessing <ul><li>Extract the “connection” level features: </li></ul><ul><ul><li>Record connection attempts </li></ul></ul><ul><ul><li>Watch how connection is terminated </li></ul></ul><ul><li>Each record has: </li></ul><ul><ul><li>start time and duration </li></ul></ul><ul><ul><li>participating hosts and ports (applications) </li></ul></ul><ul><ul><li>statistics (e.g., # of bytes) </li></ul></ul><ul><ul><li>flag: normal or a connection/termination error </li></ul></ul><ul><ul><li>protocol: TCP or UDP </li></ul></ul><ul><li>Divide connections into 3 types: incoming, out-going, and inter-lan </li></ul>
  60. 61. Building Classifier for Each Type of Connections <ul><li>Use the destination service (port) as the class label </li></ul><ul><li>Training data: 80% of the normal connections </li></ul><ul><li>Testing data: 20% of the normal connections and connections in the 3 intrusion traces </li></ul><ul><li>Apply RIPPER to learn rules </li></ul>
  61. 62. Lessons Learned <ul><li>Data preprocessing requires extensive domain knowledge </li></ul><ul><li>Adding temporal features improves classification accuracy </li></ul><ul><li>Need tools to guide (temporal) feature selection </li></ul>
  62. 63. Meta Classifier that Combines Evidence from Multiple Detection Models <ul><li>Build base classifiers that each model one aspect of the system </li></ul><ul><li>The meta learning task: </li></ul><ul><ul><li>each record has a collection of evidence from base classifiers, and a class label “normal”or “abnormal” on the state of the system </li></ul></ul><ul><li>Apply a learning algorithm to produce the meta classifier </li></ul>
  63. 64. Data Mining Approaches for Intrusion Detection <ul><li>A systematic framework </li></ul><ul><li>Why Can Data Mining Help? </li></ul><ul><li>Relevant data mining techniques </li></ul><ul><li>Building Classifiers for Intrusion Detection </li></ul><ul><li>Mining Patterns from Audit Data </li></ul>
  64. 67. Associate rules <ul><li>Motivations </li></ul><ul><ul><li>Audit data can be easily formatted into a database table </li></ul></ul><ul><ul><li>Program executions and user activities have frequent correlation among system features </li></ul></ul><ul><ul><li>Incremental updating of the rule set is easy </li></ul></ul>
  65. 68. Frequent Episodes <ul><li>frequent events occurring within a time window </li></ul><ul><li>X => Y, confidence, support, window: </li></ul><ul><ul><li>X and Y are subsets of the attribute values in a record </li></ul></ul><ul><ul><li>support is the percentage of (sliding) windows that contain X and Y </li></ul></ul>
  66. 69. Frequent Episodes <ul><li>Motivation: </li></ul><ul><ul><li>Sequence information needs to be included in a detection model </li></ul></ul><ul><li>An example from a department’s web log: </li></ul><ul><ul><li>home, research => theory, [0.2, 0.05], [30] </li></ul></ul><ul><ul><li>Meaning: 20% of the time, after home and research pages are visited (in that order), the theory is then visited within 30 seconds from when home is visited; and visiting these three pages constitutes 5% of all visits to the web site </li></ul></ul>
  67. 70. Algorithm <ul><li>Using the Axis Attribute(s):a form of item constraints, the essentialattribute(s) of a record (transaction). </li></ul><ul><li>Level-wise Approximate Mining </li></ul>
  68. 72. Using the Mined Patterns <ul><li>Guide the audit data gathering process </li></ul><ul><ul><li>Run a program under different settings </li></ul></ul><ul><ul><li>For each run, calculate the association rules and frequent episodes from its audit data </li></ul></ul><ul><ul><li>Merge them into an aggregate rule set </li></ul></ul><ul><ul><li>Stop gathering audit data when no rules can be added from a new run </li></ul></ul><ul><li>Support the feature selection process </li></ul><ul><ul><li>System features in the association rules and frequent episodes should be included in the classification models </li></ul></ul><ul><ul><li>Time window and features in the frequent episodes suggest additional temporal features should be considered </li></ul></ul>
  69. 73. Adaptive Intrusion Detection System <ul><li>Intrusion detection model based on data mining and fuzzy logic </li></ul><ul><li>Integration of fuzzy logic with data mining </li></ul><ul><li>Similarity function </li></ul><ul><li>Optimization of fuzzy membership function parameters </li></ul>
  70. 74. The framework of the Adaptive Intrusion Detection System
  71. 75. References <ul><li>W. Lee et al. A data mining framework for building intrusion detection models. In Information and System Security, Vol. 3, No. 4, 2000. </li></ul><ul><li>C. Kruegel and G. Vigna. Anomaly detection of web-based attacks, in ACM CCS’03 </li></ul><ul><li>S. Mukkamala et al., Intrusion detection using neural networks and support vector machines, in IEEE IJCNN (May 2002). </li></ul><ul><li>Bertrand Portier, Data Mining Techniques for Intrusion Detection </li></ul><ul><li>S. Axelsson, Intrusion Detection Systems: A Survey and Taxonomy </li></ul><ul><li>J. Allen et al., State of the Practice of Intrusion Detection Technologies </li></ul><ul><li>Susan M. Bridges et al. DATA MINING AND GENETIC ALGORITHMS APPLIED TO INTRUSION DETECTION </li></ul><ul><li>S. Mukkamala et al. Intrusion detection using neural networks and support vector machines, IEEE IJCNN (May 2002) </li></ul>