28
1 Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department, North Carolina State University Outline Intrusion detection: promises and challenges A development process using data mining Cost-sensitive analysis and modeling Anomaly detection

Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

1

Developing Data MiningTechniques for Intrusion Detection:

A Progress Report

Wenke LeeComputer Science Department,North Carolina State University

Outline

• Intrusion detection: promises andchallenges

• A development process using data mining• Cost-sensitive analysis and modeling• Anomaly detection

Page 2: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

2

Building a Secure Network

Vulnerabilities

Intrusion Detection

Response/Tolerance

Prevention

Intrusion Detection

• Primary assumptions:– System activities are observable– Normal and intrusive activities have distinct

evidence• Main techniques:

– Misuse detection: patterns of well-knownattacks

– Anomaly detection: deviation from normalusage

Page 3: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

3

The State of Current ID Techniques• Poor effectiveness:

– Marginal true positive rate:• Signatures not adaptive to new network

environments and attack variations– High false positive rate:

• Especially for anomaly detection

• Poor theoretical foundations anddevelopment methodology– Pure knowledge engineering.– But the networking environment too

complicated.

DM for Building ID Models• Motivation:

– A systematic IDS development toolkit.

• Approach:– Mine activity patterns from audit data;– Identify “intrusion patterns” and construct

features;– Build classifiers as ID models.

• Results:– One of the best performing systems in 1998

DARPA Evaluation.

Page 4: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

4

The DM Process of Building IDModels

raw audit data

packets/events

connection/sessionrecords

models

featurespatterns

10:35:41.5 A > B : . 512:1024(512) ack 1 win 921610:35:42.2 C > D: . ack 1073 win 1638410:35:45.6 E > F: . ack 2650 win 16225...

tcpdump packet data

time dur src dst bytes srv flag … 10:35:39.1 5.2 A B 42 http SF … 10:35:40.4 20.5 C D 22 user REJ … 10:35:41.2 10.2 E F 1036 ftp SF … … … … … … .. . … …

connection records

Page 5: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

5

Data Mining for ID

• Relevant data mining algorithms:– Classification: maps a data item to a category

(e.g., normal or intrusion)• Rule learner

– Link analysis: determines relations betweenattributes (system features)

• Association rules– Sequence analysis: finds sequential patterns

• Frequent episodes

Classifiers As ID Models

• Classification rule learner:• use the most distinguishing and concise

attribute/value tests for each class label.

• Example rule-set:– if (wrong_fragment ≥ 1 AND protocol_type =

icmp) then “pod.”– else if (protocol = icmp_echo_request AND

host_count ≥ 3 AND srv_count ≥ 3) then“smurf.”

– ...– else normal.

Page 6: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

6

Classifiers As EFFECTIVE IDModels

• Need features with high informationgain, i.e., reduction in entropy (ameasure of data “impurity/uncertainty”)– temporal and statistical features for ID

• Our approach:– Mine frequent sequential patterns– Identify “intrusion-only” patterns and construct

features accordingly• The constructed features have high information gain

Mining Audit Data

• Basic (standard) algorithms:– Association rules: intra-audit record patterns– Frequent episodes: inter-audit record patterns– Need both

• Need to efficiently compute only the“relevant” patterns:– Utilize schema-level information– The “interestingness” of a pattern = whether it

contains “important” attributes

Page 7: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

7

Association Rules• Motivation:

–Correlation among system features–X → Y [c, s]

• c: confidence• S: support

• Example from shell commands:–Mail → am, hostA [0.3, 0.1]

Frequent Episodes• Motivation:

–Sequential information (systemactivities)

–X, Y → Z [c, s, w]• X,Y, and Z are in different records• these records are within w

• Example from shell commands:– (vi, C, am) → (gcc, C, am) [0.6,0.2,5]

Page 8: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

8

Extensions to Data MiningAlgorithms

• Designating the “important” attributesto compute “relevant” patterns– axis attribute(s)– reference attribute(s)

• Uncovering low frequency butimportant patterns– level-wise approximate mining– mining with relative support

Axis Attribute(s)– axis attribute(s) as an “item constraint”:

• the most important attribute, e.g., service• an itemset must contain axis attribute values

axisattributes(e.g., id)

non-axis attributes(auxiliary information)

Page 9: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

9

Axis Attribute(s) (Continued)–Compute sequential patterns in two

phases:• associations using the axis attribute(s)• serial episodes from associations

(A

(A

B)

B)

(A B)

Example (service is the axisattribute):

(service = telnet, src_bytes = 200,dst_bytes = 300, flag = SF),(service = smtp, flag = SF) →(service = telnet, src_bytes = 200)

Reference Attribute(s)

A1A2

S1S1

A1 S3A2 S3

A2A1 S2

S2

reference attribute(s) as anitem constraint:

records of an episode musthave the same referenceattribute value

the “subject” of a sequence of related “actions”e.g., connections to the same destination host:

(service=http, flag=S0), (service=http, flag=S0) →(service=http, flag=S0)

Page 10: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

10

Feature Construction from Patterns

patternsintrusionrecords

mining

compare

intrusionpatterns

newfeatures

historicalnormal andattackrecords

mining

training data

detectionmodels

learning

Feature Construction fromPatterns

• Parse an “intrusion-only” pattern– Identify the anatomy (in reference and

axis attribute(s)) and invariant (in non-axis attribute(s)) of an attack;

–Add features that use count, percent,and average operations on the attributevalues in the pattern.

Page 11: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

11

Feature ConstructionExample

• An example: “syn flood” patterns(dst_host is reference attribute):– (flag = S0, service = http),

(flag = S0, service = http,) →(flag = S0, service = http) [0.6, 0.1, 2]

– add features:• count the connections to the same dst_host in the

past 2 seconds, and among these connections,• the percentage with the same service,• the percentage with S0

Theoretical Underpinnings

• “Intrusion-only” patterns identifyhow a set of intrusion recordsdiffer from normal records

• Features constructed from thesepatterns separate intrusion andnormal records– i.e., they have high information gain– hence resulting classifiers more accurate

Page 12: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

12

1998 DARPA ID Evaluation

• The data:– Total 38 attack types, in four categories:

• DOS (denial-of-service), e.g., syn flood• Probing (gathering information), e.g., port scan• r2l (remote intruder illegally gaining access to

local systems), e.g., guess password• u2r (user illegally gaining root privilege), e.g.,

buffer overflow– 40% of attack types are in test data only,

i.e., “new” to intrusion detection systems• to evaluate how well the IDSs generalized

DARPA ID Evaluation (cont’d)• Features:

– “intrinsic” features:• protocol (service),• protocol type (tcp, udp, icmp, etc.)• duration of the connection,• flag (connection established and terminated

properly, SYN error, rejected, etc.),• # of wrong fragments,• # of urgent packets,• whether the connection is from/to the same ip/port

pair.

Page 13: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

13

DARPA ID Evaluation (cont’d)• Features constructed from mined

patterns:– temporal and statistical “traffic” features that

describe connections within a time window:• # of connections to the same destination host

as the current connection in the past 2 seconds,and among these connections,

• % of rejected connections,• % of connections with “SYN” errors,• % of different services,• % of connections that have the same service,• % of different (unique) services.

Page 14: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

14

Major Limitations• Mainly misuse detection• Requires labeled training data

– not realistic for many environments

• Assumes fixed “session” definition,e.g., network connection– attacks can be extended and coordinated

• Need well engineered approach forreal-time performance

The Need for Cost-sensitive ID• High-volume automated attacks can

overwhelm an IDS and its staff.• Use cost-sensitive data mining algorithms to

construct ID models that consider costfactors:– damage cost, response cost, operational cost, etc.

• Multiple specialized and light ID models canbe dynamically activated/configured.

• Cost-effectiveness as the guiding principleand multi-model correlation as thearchitectural approach .

Page 15: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

15

Cost Factors of IDSs• Attack taxonomy: result/target/technique• Development cost• Damage cost (DCost)

– The amount of damage when ID is not available orineffective.

• Response cost (RCost)– The cost of acting upon an alarm of potential

intrusion.

• Operational cost (OpCost)– The cost of processing and analyzing audit data ;– Mainly the computational costs of the features.

Cost Models of IDSs

• The total cost of an IDS over a set ofevents:• CumulativeCost(E) = � e∈ E (CCost(e) + OpCost(e))

• CCost(e), the consequential cost, dependson prediction on event e

Page 16: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

16

Consequential Cost (CCost)

• For event e :

Outcome CCost(e) Conditions Miss (FN) DCost(e) False Alarm (FP) RCost(e’)+PCost(e) DCost(e’) ≥ RCost(e’) 0 Otherwise Hit (TP) RCost(e)+εDCost(e) DCost(e) ≥ RCost(e) DCost(e) Otherwise Normal (TN) 0 Misclassified Hit RCost(e’)+εDCost(e) DCost(e’) ≥ RCost(e’) DCost(e) Otherwise

Cost-sensitive Modeling:Objectives

• Reducing operational costs:– Use cheap features in ID models.

• Reducing consequential costs:– Do not respond to an intrusion if RCost >

DCost.

Page 17: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

17

Cost-sensitive Modeling:Approaches

• Reducing operational costs:– A multiple-model approach:

• Build multiple rule-sets, each with features ofdifferent cost levels;

• Use cheaper rule-sets first, costlier ones later onlyfor required accuracy.

– Feature-Cost-Sensitive Rule Induction:• Search heuristic considers information gain AND

feature cost.

Cost-sensitive Modeling:Approaches (continued)

• Reducing consequential costs:– MetaCost:

• Purposely re-label intrusions with Rcost > DCostas normal.

– Post-Detection decision:• Action depends on comparison of RCost and

DCost.

Page 18: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

18

Anomaly Detection

• Motivations:–Detect novel attacks.–Provide techniques for:

• Building the “best” possible models.• Predicting and characterizing the

performance of the models.

• Approach:– Information-theoretic based measures.

A Case Study

• Anomaly detection for Unixprocesses.

• UNM sendmail system call traces–“Short sequences” as normal profile–A classification approach:

• Given the first k system calls, predict thek+1st system call

–How to determine the “sequence length”,k?

Page 19: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

19

Misclassification Rate vs.Sequence Length

10152025

30354045

50

13 57 911 1315 17bounce-1 bounce.in queue.int

10152025

30354045

50

13 57 911 1315 17bounce-1 bounce.in queue.int

0

5

10

15

20

25

30

35

40

45

50

1 3 5 7 9 11 13 15 17

seq ue nce l eng th -2

mis

scla

ssifi

catio

n r

ate bounce-1.int

sendmail .int

queue. int

plus. int

bouce. int

total

mean

Misclassification Rate forIntrusion Traces

0

5

10

15

20

25

30

35

40

45

50

1 3 5 7 9 11 13 15 17

seq uence length -2

mis

s cl

assi

ficat

ion

rate

fwd-loops -1.in t

fwd-loops -2.in tfwd-loops -3.in t

fwd-loops -4.in t

fwd-loops -5.in t

s m- 10763.in t

s m- 280.in t

s m- 314.in t

s ys log-loc al -1.in t

s ys log-loc al -2.in ts ys log-remote-1.in t

s ys log-remote-2.in t

to ta l

m ean

Page 20: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

20

EntropyH(X) = − P(x) log(P(x))

x�

= −EP[log(P( X))]≥ 0

Given random variable X, samples from X can beencoded in H(X) bits. Entropy is a measure of“uncertainty”.

Conditional Entropy

How “uncertain” is Y given X?

� �

=

−=

=−=

yx

x y

XP

yxPyxP

xyPxyPxP

xXYHEXYH

,

)(

)|(log),(

)|(log)|()(

)]|([)|(

Page 21: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

21

Conditional Entropy forSystem Call Data

• Given a system call sequence (A1,A2,…,Ak), howto predict the next system call Ak+1?

• Let Y be the sequence (A1,A2,…,Ak , Ak+1), and Xbe the sequence (A1,A2,…,Ak ),

• Conditional entropy H(Y|X):• how much uncertainty remains for Ak+1 afterwe have seen the first k system calls.

How to Compute H(Y|X)Let S be the set of all length k+1 system callsequences in a trace,

S={x | x= (A1,A2,…,Ak , Ak+1) in the trace}.Let |x| be the number of occurrence of x in S.Let y(x) be the length-k subsequence of x.

y(x)=(A1,A2,…,Ak).

Then

because

H(X | Y ) =| x || S |

log(| x |

| y(x) |)

x�

||||)(),(

SxxPyxP ==

Page 22: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

22

Conditional Entropy

0

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1 3 5 7 9 11 13 15 17

se quence leng th -2

cond

ition

al e

ntro

py bounc e-1.int

bounc e.int

queue.in t

s endm ai l.log.in t

bounc e-2.int

p lus .int

Conditional Entropy forDaemon

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

1 3 5 7 9 11 13 15 17

sequ ence length -2

cond

ition

al e

ntro

py

c ert_daem on.in t

s endm ai l.daem on.in t

Page 23: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

23

Condition Entropy vs.Misclassification Rate: Total

Trace

0

0.5

1

1.5

2

2.5

1 3 5 7 9 11 13 15 17

sequence length-2

scal

ed e

ntro

py a

nd m

iss

rate

, tot

al

trace miss rate

cond. entropy

Condition Entropy vs.Misclassification Rate:

Mean of All Traces

0

0.5

1

1.5

2

2.5

1 3 5 7 9 11 13 15 17

sequence length-2

scal

ed e

nt, m

iss

rate

, mea

n of

all

trace

s miss ratecond. entropy

Page 24: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

24

What Is the Best SequenceLength

• Get the biggest gain while paying the least cost.

• Define the cost to be the time to process one systemcall sequence.

• Define the gain to be accuracy of the processing,where accuracy=1-miss_classification_rate.

Time to Process OneSequence

020406080

100120

140160180

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17sequence le ngth-2

time

for h

andl

ing

1 se

quen

ce in

rip

per,

in m

icro

-sec

onds

t ot almean

Page 25: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

25

Accuracy/time

00.00010.00020.00030.00040.00050.0006

0.00070.00080.0009

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17se que nce length-2

accu

racy

/tim

e

t ot almean

Conclusion and Future Work

• Data mining can be used toimprove the ID developmentprocess.

• Future work–Correlation techniques for combining

outputs from multiple sensors.– ID for emerging environments, e.g.,

wireless ad-hoc networks.

Page 26: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

26

Thank You…

Misuse Detection

Intrusionpatterns

activities

patternmatching

intrusion

Problem: can’t detect new attacks

Page 27: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

27

Anomaly Detection

activitymeasures

0102030405060708090

CPU ProcessSize

normal prof ileabnormal

probableintrusion

Problem: relatively high false positive rate - anomalies can just be new normal activities.

Match Maker / CAIDS

IDSModeling Engine

ID models

attack data

attack data

ID models

A CIDF Architecture

Page 28: Developing Data Mining Techniques for Intrusion Detection ... · Developing Data Mining Techniques for Intrusion Detection: A Progress Report Wenke Lee Computer Science Department,

28

Axis Attribute(s) (Continued)–very important for frequent episodes:

• association A → B can result in MANYepisode rules: (A|B)(,A|B)* →(A|B)(,A|B)*

A

A

B

B

A B

A

A

B

B

A B

Research in Intrusion Detection• James Anderson (1980)

– “malicious users”, anomaly detection• Dorothy Denning (1987)

– generic intrusion detection system architecture• SRI’s IDES and NIDES (1992, 1993)

– statistical and rule-based methods• UCSB’s USTAT and Purdue’s IDIOT (1995)

– state transition analysis and Colored Petri nets• UNM’s “self” models of Unix processes (1996-)

– anomaly detection models w/ system call sequences• MADAM ID (Lee et al. 1997-)

– using data mining to build ID models