Intrusion Detection Systems
Intrusion Detection Systems
• Presently there is much interest in systems,
which can detect intrusions, IDS (Intrusion
Detection System).
• IDS are of very different character.
• Some focus on one machine and try to stop the
intruder from doing damage, such is LIDS for
Linux.
• Some can detect a worm attack from the way it
spreads from machine to machine, like GrIDS.
Tecniche di Sicurezza dei Sistemi
2
Intrusion Detection Systems
• Several are actually data mining, they determine
from logfiles if there is an intrusion based on
reasoning by an expert system, NSTAT is an
example.
• Many IDS implementations are listening
passively to some LAN segment, look at the
traffic and detect an intrusion. Snort IDS is a
popular freeware program of this Network IDStype.
• Other IDS solutions protect one machine by
access controls.
Tecniche di Sicurezza dei Sistemi
3
What is Intrusion Detection
• Intrusion detection systems (IDSs) are designed for
 detecting, blocking and reporting unauthorized
activity in computer networks.
• “The life expectancy of a default installation of
Linux Red Hat 6.2 server is estimated to be less
than 72 hours.”
• “The fastest compromise happened in 15 minutes
(including scanning, probing and attacking)”
• “Netbios scans affecting Windows computers were
executed with the average of 17 per day”
(source: Honeynet Project)
Tecniche di Sicurezza dei Sistemi
4
1. Motivation for Intrusion Detection
Unauthorized Use of Computer Systems Within Last 12 Months
(source CSI/FBI Study)
80
70
1996
60
1997
50
1998
Percentage of
40
Respondents
1999
2000
30
2001
20
2002
10
0
Y es
No
Tecniche di Sicurezza dei Sistemi
Don't Know
5
1. Motivation for Intrusion Detection
Most Common Attacks (source CSI/FBI)
In year 2002 most common attacks were:
•
•
•
•
Virus (78%)
Insider Abuse of Net Access (78%)
Laptop theft (55%)
Denial of Service and System Penetration (40%)
• Unauthorized Access by Insiders (38%)
(Red color shows the attack types, which IDS can decrease)
Tecniche di Sicurezza dei Sistemi
6
Definitions
• Intrusion
– A set of actions aimed to compromise the
security goals, namely
• Integrity, confidentiality, or availability, of a
computing and networking resource
• Intrusion detection
– The process of identifying and responding to
intrusion activities
Tecniche di Sicurezza dei Sistemi
7
Why Is Intrusion Detection
Necessary?
Prevent
Detect
React/
Survive
Security principles: layered mechanisms
Tecniche di Sicurezza dei Sistemi
8
Elements of Intrusion Detection
• Primary assumptions:
– System activities are observable
– Normal and intrusive activities have distinct
evidence
• Components of intrusion detection systems:
– From an algorithmic perspective:
• Features - capture intrusion evidences
• Models - piece evidences together
– From a system architecture perspective:
• Audit data processor, knowledge base, decision
engine, alarm generation and responses
Tecniche di Sicurezza dei Sistemi
9
Components of Intrusion
Detection System
system activities are
observable
Audit Records
Audit Data
Preprocessor
Activity Data
Detection
Models
Detection Engine
Alarms
Decision
Table
Decision Engine
normal and intrusive
activities have distinct
evidence
Action/Report
Tecniche di Sicurezza dei Sistemi
10
Different Types of IDSs
1. Application based;
2. Host based;
3. Network based.
Tecniche di Sicurezza dei Sistemi
11
Different Types of IDSs
Application IDS
– Watch application logs
– Watch user actions
– Stop attacks targeted against an application
•Advantages
Encrypted data can be read
•Problems
Positioned too high in the attack chain
(the attacks reach the application)
Tecniche di Sicurezza dei Sistemi
12
Different Types of IDSs
Host IDS
–
–
–
–
Watch kernel operations
Watch network interface
Stop illegal system operations
Drop attack packets at network driver
•Advantages
Encrypted data can be read
Each host contributes to the detection process
•Problems
Positioned too high in the attack chain (the
attacks reach the network driver)
Tecniche di Sicurezza dei Sistemi
13
Different Types of IDSs
Network IDS
– Watch network traffic
– Watch active services and servers
– Report and possibly stop network level attacks
•Advantages
Attacks can be stopped early enough (before they
reach the hosts or applications)
Attack information from different subnets can be
correlated
•Problems
Encrypted data cannot be read
Annoyances to normal traffic if for some reason
normal traffic is dropped
Tecniche di Sicurezza dei Sistemi
14
2. Different Types of IDSs
Application-, Host- and Network IDS –
Comparison
Technique
Data Rate
Placement
Cost ($)
Maintenance Effort
Encrypted Data
Switched Networks
Application-based
Application monitoring
Low
Application, userland process
Low to Moderate
Moderate
Supported
Not problematic
Host-based
Host system monitoring
Moderate
Kernel, system process
Moderate
Moderate to High
Supported
Not problematic
Tecniche di Sicurezza dei Sistemi
Network-based
Network segment monitoring
High
Network node
High
Low
Unsupported
Problematic
15
Simple Process Model for ID
Diagram
Parse data, filter data and execute
Detection Algorithms
Capture Data
Analyse Data
Respond
Iterate
For example applications log
network driver, or network cable
Drop packets, send alerts,
update routing tables,
kill processes etc.
Tecniche di Sicurezza dei Sistemi
16
IDS principle of detection
There are two basic methods used by ID Systems:
misuse detection and anomaly detection.
Misuse Detection
– Search attack signatures, which are patterns, byte code
or expressions belonging to a specific attack.
– often called signature-based detection
– A signature is created by analysing an attack method
– The patterns are stored inside the IDS
Example Rule:
Alert tcp !192.168.1.0/24 any -> 192.168.1.0/24 111
(Content: “|00 01 86 A5|”;msg:”External Mountd access”;)
Tecniche di Sicurezza dei Sistemi
17
Example of a NIDS, snort
• Enable NIDS mode of Snort
# ./snort -dev -l ./log -h 192.168.1.0/24 c snort.conf
• The above command means that let Snort work as NIDS
for the network 192.168.1.0/24 according to the rules
inside snort.conf file.
• Sample rule:
•
alert udp any any -> 192.168.1.0/24 5060
(content:"|01 6a 42 c8|"; msg: “SIP session signaling";)
• The rules are modular and it is easy to add new rules.
Typically the rules make alarms of all old security breaches
so that you cannot notice any new breaches.
Tecniche di Sicurezza dei Sistemi
18
IDS principle of detection
Anomaly Detection
“Distinguish abnormal from normal”
Threshold Detection
• X events in Y seconds triggers the alarm
Statistical Measures
• Current traffic profile matches the ”normal” profile
Rule-Based Methods
• Jack never logs in at 6 to 8 AM
• If Jack just sent email from Espoo office, he should
not send email from New York office at the same time
Tecniche di Sicurezza dei Sistemi
19
IDS principle of detection
Anomaly/Misuse Detection – Comparison
Method
Technique
Generalization
Specifity
Sensitivity
False Alarms
Adaptation
Misuse Detection
Detect Patterns of Interest
Problematic
Yes
High
Low
No
Anomaly Detection
Deviations from Learned Norms
Yes
No
Moderate
Moderate
Yes
Tecniche di Sicurezza dei Sistemi
20
IDS response principles
Responses
•Alerts and notifications: email, SMS, pager (important
issue: alert path must be bulletproof)
•Increase Surveillance: log more
•Throttling: slow down malicious traffic
•Blocking Access: drop data, update firewall/router
• Make Counterattack: Eye for an eye tactics
•Honey Pots and Padded Cells: route the hacker to a fake
system and let him play freely
Tecniche di Sicurezza dei Sistemi
21
IDS problems in the detection stage
Detection problems
•True positive, TP, is a malicious attack that is correctly
detected as malicious.
•True negative, TN, is a not an attack and is correctly
classified as benign.
•False positive, FP, is not an attack but has been classified as
an attack.
•False negative, FN, is an attack that has been incorrectly
classified as a benign.
Detection rate is obtained by testing the IDS against set of
intrusive scenarios
“…The false alarm rate is the limiting factor for the performance in an IDS”.
Tecniche di Sicurezza dei Sistemi
22
Advanced IDS Techniques
For Protection
•Stream Reassembly: follow connections and sessions
•Traffic Normalization: see that protocols are followed
• Bayesian Networks: Data mining and decision networks
•Graphical IDSs (for example GrIDS): use graphs to model attacks
•Feature equality heuristics: port stepping, packet gap recognition
•Genetic Programming, Human immune systems
• Tens of research systems exist
For Attacks
•
Evasion methods (fragmentation, mutation etc.)
• IDS trashing (DoS tools to like stick/snot to crash IDS capability
Tecniche di Sicurezza dei Sistemi
23
Evaluation of IDS
• Type I error: (false negative)
– Intrusive but not being detected
• Type II error: (false positive)
– Not intrusive but being detected as intrusive
• Evaluation:
– How to measure?
– ROC - Receiver Operating Characteristics
curve analysis - detection rate vs. False alarm
rate
– What else? Efficiency? “Cost?”
Tecniche di Sicurezza dei Sistemi
24
Example ROC Curve
% Detect
IDS
% False Alarm
• Ideal system should have 100% detection rate
with 0% false alarm
Tecniche di Sicurezza dei Sistemi
25
Next Generation IDSs
• Adaptive
– Detect new intrusions
• Scenario-based
– Correlate (multiple sources of) audit data and
attack information
• Cost-sensitive
– Model cost factors related to intrusion
detection
– Dynamically configure IDS components for
best protection/cost performance
Tecniche di Sicurezza dei Sistemi
26
Adaptive IDSs
ID
Modeling Engine
semiautomatic
anomaly data
IDS
anomaly
detection
ID models
(misuse detection)
ID models
ID models
IDS
IDS
Tecniche di Sicurezza dei Sistemi
27
Semi-automatic Generation of ID
Models
models
Learning
Data mining connection
/ session
records
raw audit data
packets/
events
(ASCII)
Tecniche di Sicurezza dei Sistemi
28
The Feature Construction Problem
dst … service … flag
dst … service … flag %S0
h1
h1
h1
http
http
http
S0
S0
S0
h1
h1
h1
http
http
http
S0
S0
S0
70
72
75
h2
http
S0
h2
http
S0
0
h4
http
S0
h4
http
S0
0
h2
ftp
S0
h2
ftp
S0
0
existing features
useless
syn flood
normal
construct features with
high information gain
How? Use temporal and statistical
patterns, e.g., “a lot of S0
connections to same service/host
within aTecniche
shortdi time
window”
Sicurezza
dei Sistemi
29
Feature Construction Example
• An example: “syn flood” patterns (dst_host
is reference attribute):
– (flag = S0, service = http), (flag = S0, service =
http)  (flag = S0, service = http) [0.6, 2s]
– 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
Tecniche di Sicurezza dei Sistemi
30
An Adaptive IDS Architecture
Detection
Models
FW
Quick and
dirty
Real-time
IDS
Best-effort in
real-time
Dynamic
Cost-sensitive
Decision
Making
Backend
IDS
Thorough and slow
(scenario/trend)
Tecniche di Sicurezza dei Sistemi
31
Detecting Intruders
• Commercially the most used IDS systems are probably
misuse based Network ID Systems, but Host-level IDS is
also needed.
• As an example of a Host-level IDS let us look at LIDS for
Linux.
• The philosophy of LIDS is to have a three layer
protection:
– Firewall
– PortSentry
– LIDS
• The firewall limits access to only allowed ports. In a Webserver only the TCP port 80 is absolutely necessary.
• Disable ports which are not used, for instance by removing
the daemons or by modifying /etc/inetd.conf. Leave only
the basic activities needed.
Tecniche di Sicurezza dei Sistemi
32
Detecting Intruders
• PortSentry is put to some port, which is often
scanned but not used in the system.
• One should find suitable ports where to put
PortSentry by looking at ports which are scanned
often, like 143 or 111.
• Typically nowadays hackers do sweep scanning
looking at only one port in several machines.
• PortSentry monitors activity on specific TCP/UDP
ports. The PortSentry can take actions, like
denying further access to the port.
Tecniche di Sicurezza dei Sistemi
33
Detecting Intruders
• This is based on the assumption that the
hacker will first probe with a scanner the
machine for weaknesses.
• You install PortSentry in TCP-mode by
portsentry -tcp
• ports are in portsentry.conf -file.
Tecniche di Sicurezza dei Sistemi
34
Detecting Intruders
LIDS
• LIDS is an intrusion detection system
that resides in the Linux kernel.
• It basically limits the rights of a root user
to do modifications. It limits root access
to direct port access, direct memory
access, raw access, modification of log
files, limits access to file system. It also
prevents installation of sniffers or
changing firewall rules.
Tecniche di Sicurezza dei Sistemi
35
Detecting Intruders
LIDS
• An administrator can remove the
protection by giving a password to LIDS,
but if a hacker breaks into the root, he
cannot without LIDS password do much
damage.
• Is this good? it certainly makes the life of
a hacker more difficult, but what about a
hacker getting into the kernel?
• How nice it is being an administrator
using LIDS?
Tecniche di Sicurezza dei Sistemi
36
Scarica

ids