MCA 2: Multi Core Architecture for Mitigating Complexity Attacks

advertisement
MCA2: Multi Core Architecture for
Mitigating Complexity Attacks
Yaron Koral (TAU)
Joint work with: Yehuda Afek (TAU), Anat Bremler-Barr (IDC),
David Hay (HUJI) and Yotam Harchol (HUJI)
A multicore system architecture,
which is robust against
complexity DDoS attacks
Network Intrusion Detection System
• Reports or drops malicious packets
• Important technique: Deep Packet Inspection (DPI)
IP
packet
Internet
3
Complexity DoS Attack Over NIDS
• Find a gap between average case and worst case
• One may craft an input that exploits this gap
• Launch a Denial of Service attack on the system
Internet
Throughput
4
Attack on Security Elements
Combined Attack:
DDoS on Security Element
exposed the network –
theft of customers’
information
Attack on Snort
• The most widely deployed IDS/IPS worldwide.
Max
Throughput
Routine
Traffic
Heavy Packet
Traffic
Airline Desk Example
Airline Desk Example
A flight
ticket
Airline Desk Example
Overweight!!!
Can’t find
passport!!
Doesn’t
like
food!!!
An isle
seat near
window!!
Three
carry
handbags
!!!
Airline Desk Example
Airline Desk Example
Special
training
Domain Properties
1. Heavy &&Light
Lightpackets.
customers.
packets
2. Easy detection of heavy customers.
packets between
queues
is cheap.
3. Moving customers
between
queues
is cheap.
4. Heavy customers
packets have
special
more
efficient
processing
have
special
more
efficient
processing
method.
Some packets are much
“heavier” than others
The Snort-attack experiment
Snort uses Aho-Corasick DFA
•DPI mechanism is a main bottleneck in Snort
Heavy
•Allows single step for each input
symbol
Fast & Huge
Packet
•Holds transition for each alphabet symbol
Best for normal traffic
Exposed to cache-miss attack
Snort-Attack Experiment
Normal Traffic
Attack Scenario
Cache
Main
Memory
Max
Throughput
Routine
Traffic
Heavy
Packet
Traffic
The General Case: Complexity Attacks
DomainisProperties
• Building the packet
much cheaper than
processing it.
1. Heavy & Light packets.
2. Easy detection of heavy packets
3. Moving packets between queues is cheap.
4. Heavy packets have special more efficient processing
method.
Detecting heavy packets
is feasible
How Do We Detect?
• Normal and heavy packets differ from each other
• May be classified quickly
• Claim:
the general case
in complexity attacks!!!
threshold
Domain Properties
1. Heavy & Light packets.
2. Easy detection of heavy packets
3. Moving packets between queues is cheap.
4. Heavy packets have special more efficient processing
method.
System Architecture
• Routine and alert mode
• Drop mode
• Dynamic thread allocation model
• Non blocking queue synchronization
• Move packets between cores with
negligible overhead!
Q
Core #1
Q
Core #2
Q
Core #8
Q
Dedicated
Core #9
Q
Dedicated
Core #10
Processor Chip
NIC
Detects
heavy
packets
B
B
Domain Properties
1. Heavy & Light packets.
2. Easy detection of heavy packets
3. Moving packets between queues is cheap.
4. Heavy packets have special more efficient processing
method.
Snort uses Aho-Corasick DFA
Full Matrix vs. Compressed
Domain Properties
1. Heavy & Light packets.
2. Easy detection of heavy packets
3. Moving packets between queues is cheap.
4. Heavy packets have special more efficient processing
method.
Experimental Results
System Throughput Over Time
Different Algorithms Goodput
Concluding Remarks
• A multi-core system architecture, which is robust
against complexity DDoS attacks
• In this talk we focused on specific NIDS and
complexity attack
• Additional results show how the system fits to
other cases:
– Hybrid-FA
– Bro Lazy-FA
• We believe this approach can be generalized
(outside the scope of NIDS).
Thank You!!
Download