Defending against Flooding-Based Distributed Denial
Download
Report
Transcript Defending against Flooding-Based Distributed Denial
DDoS: Distributed Denial of Service
Cs5090: Advanced Computer Networks, fall 2004
Department of Computer Science
Michigan Tech University
Rock K. C. Chang
Byung Choi
Mark Schuchter
Outline
Introduction
The DDOS Problems
Solutions to the DDoS Problems
Conclusion
Introduction (cont.)
DoS : Denial of service attack.
System design weaknesses
Computationally intensive tasks
Ping of death
Teardrop
Encryption and decryption computation
DDoS attack ( Flooding-Based)
CPU, Memory, bandwidth exhaustion
DDoS: Typical attack preparation
1. prepare attack
Introduction
Why?
2. set up network
Timeline
How?
3. communication
Typ. UNIX atk
Typ. Windows atk
Why?
sub-cultural status
nastiness
revenge
Showing off
to gain access
economic reasons
political reasons
Introduction
Why?
Timeline
How?
Typ. UNIX atk
Typ. Windows atk
Timeline
<1999: Point2Point (SYN flood, Ping of death, ...), first distributed attack tools (‘fapi’)
1999: more robust tools (trinoo, TFN, Stacheldraht), auto-update, added encryption
2000: bundled with rootkits, controlled with talk or ÍRC
2001: worms include DDos-features (i.e. Code Red), include time synchro.,
2002: DrDos (reflected) attack tools, (179/TCP; BGP=Border Gateway Protocol)
2003: Mydoom infects thousands of victims to attack SCO and Microsoft
Introduction
Why?
Timeline
How?
Typ. UNIX atk
Typ. Windows atk
Development
binary encryption
“stealth” / advanced
scanning techniques
High
Tools
packet spoofing denial of service
distributed
attack tools
www attacks
automated probes/scans
GUI
sniffers
Intruder
Knowledge
back doors
disabling audits
network mgmt. diagnostics
hijacking
burglaries sessions
exploiting known vulnerabilities
Attack
Sophistication
password cracking
Attackers
password guessing
Low
1980
1985
1990
1995
2001
:
Source CERT/CC
Introduction
Why?
Timeline
How?
Typ. UNIX atk
Typ. Windows atk
Conversation between Moms
Mom1: I’m so proud of Mike. Apparently he’s
one of the world’s best at a new computer
game!
Mom2: Oh really! Which game?
Mom1: Something called “DDoS Attack”…
Mike: (Keeping clicking…)
DDoS Tools and Their Attack
Methods
Trin00
UDP
Tribe Flood Network UDP, ICMP, SYN, Smurf
Stacheldracht UDP, ICMP, SYN, Smurf
TFN 2K UDP, ICMP, SYN, Smurf
Shaft
UDP, ICMP, SYN
Trinity
UDP, SYN, RST, ACK
DDoS Problems : Direct Attacks
Send out a large number of attack packets
directly toward a victim
Packet types can be TCP, ICMP, UDP, or a
mixture of them.
TCP SYN attacks
Spoofed random source address of attack packets
The victim respond by sending back SYN-ACK
packets
Cause half-open connection consume all the
memories for pending connections unable to
accepting new requests.
Direct attack (cont.)
Direct Attacks (cont.)
To congest a victim’s incoming link.
The victims usually responds with RST packets
Sets up a DDoS attack network.
Attacker attack hosts ( compromised machines)
masters agents victim
Direct Attacks
Direct Attack Example: Trinoo
Discovered in August 1999
Daemons found on Solaris 2.x systems
Attack a system in University of Minnesota
Victim unusable for 2 days
Trinoo Attack type
UDP flooding
Default size of UDP packet: 1000 bytes
malloc() buffer of this size and send uninitialized
content
Default period of attack: 120 seconds
Destination port: randomly chosen from 0 –
65534
Reflector Attacks (cont.)
An attacker sends packets that require
responses to the reflectors with the packer’s
inscribed source addresses set to a victim’s
address.
The reflectors returns response packets to
the victim according to the types of the attack
packets.
Thus the reflected packets can flood the
victim’s link if the number of reflectors is large
enough.
Redirect Attacks (cont.)
Reflector Attacks (cont.)
Reflector behaves like a victim of SYN
flooding attacks, because it also maintain a
number of half-open connections.
SYN ACK flooding does not exhaust the
victim’s ability to accept new connections but
clog the victim’s network link.
Reflector Attacks
Reflector Attack Examples:
How Many Attack Packets Are Needed?
(cont.)
How Many Attack Packets Are Needed?
(cont.)
SYN flooding:
If each SYN packet is 84 bytes long (including the
Ethernet frame header and interframe gap)
a 56 kb/s connection is sufficient to stall both
Linux and BSD servers with N <= 6000
SYN ACK flooding:
A 1Mb/s connection is sufficient to stall all three
servers with N <= 10000.
How Many Attack Packets Are Needed?
In other flooding attacks aimed at jamming a
victim’s incoming link, an aggregated attack
traffic rate has to be at least 1.544 Mb/s to
jam a T1 link.
Direct ICMP flooding: 5000 agents ( 1 query/s)
Reflect ICMP flooding: 5000 reflector ( # of agents
can be much fewer, if each agent is responsible
for sending ICMP echo requests to a number of
reflectors.)
Solutions to the DDoS Problems (cont.)
Three lines of defense against the attack
Attack prevention and preemption( before the
attack)
Attack detection and filtering (during the attack)
Attack source traceback and identification (during
and after the attack)
Attack avoidance by victims
Attack prevention and preemption
On the passive side
Hosts may be securely protected from master and
agent implants.
Ultimate solution?
To monitor network traffic for known attack
messages sent between attackers.
On the active side
Cyber-informants and cyber spies to intercept
attack plans
for known attacks only?
Virus example (Wed. 03 Mar. 2004)
Hello User of mtu.edu-email server,
Our main mailing server will be temporarily
unavailable for next two days for regular
maintenance and upgrade. To continue receiving
mail in these days, please configure our autoforwarding service.
Further details can be obtained from attached file
For security purposes the file is password protected.
Your password is “00461”
Best Wishes,
MTU email service team!
Attack Source traceback and Identification
Two approach
For routers to record information
Send additional information
Two reason of infeasible stop an ongoing attack
Hard to trace packets’ origins
Hard to stop
Those behind firewall & NAT
Reflector attack
Scattered in various autonomous systems
Helpful in identifying the attacker and collecting for
post-attack law enforcement
Attack Detection and Filtering (cont.)
The detection part is responsible for
identifying DDoS attacks or attack packets
The filtering part is responsible for classifying
those packets and then dropping them ( ratelimiting is another possible action).
Attack Detection and Filtering (cont.)
Measure the effectiveness of the attack
detection and filtering
FPR ( false positive ratio): # of packets classified
as attack packets (positive) by a detection system
that are confirmed to be normal (negative) ,
FNR (false negative ratio): # of packets classified
as normal (negative) by a detection system that
are confirmed to be attack packets (positive),
NPSR (normal packet survival ratio):
The percentage of normal packets that can make their
way to the victim in the midst of a DDoS attack.
Attack Detection and Filtering (cont.)
Attack Detection and Filtering (cont.)
At Source Networks
ISP networks that are directly connected to source
networks can effectively ingress-filter spoofed
packets.
Can drop all attack packets in direct attacks and
all attack packets indirect attacks.
The attack agents can be traced easily in direct
attacks
Ensuring all ISP networks to install ingress
filtering is an impossible task in itself.
Attack Detection and Filtering (cont.)
At the Victim’s Network
A DDoS victim can detect a DDoS attack based
on an unusually high volume of incoming traffic or
degraded server and network performance.
IP hopping or the moving target defense:
A host frequently changes its IP address or changes its
IP address when a DDoS attack is detected.
To tackle SYN flooding attacks by proxying TCP
connection requests.
Attack Detection and Filtering (cont.)
At a victim’s Upstream ISP network
Victim network may send to an upstream ISP
router an intrusion alert message
Such intrusion alert protocol need to be design
carefully
The message also have to be protected by strong
authentication and encryption algorithms.
Similar to the victim networks, it isn’t effective to
filter attack packets.
Attack Detection and Filtering (cont.)
At further Upstream ISP networks
Packet filtering is pushed as upstream as possible
if ISP networks are willing to install packet filters
upon receiving intrusion alerts.
Attack avoidance by victims
Online task migration
Process
Thread
Object
CPU time depletion
Bandwidth depletion
Memory space depletion
Conclusion
Hard to design perfectly secure computers
and networks….
There are (will be) still many insecure areas
in the Internet today that can be
compromised to launch large-scale DDoS
attacks
Attack avoidance schemes at victims have
not been fully investigated!
Contributions are solicited!
Task migration on-the-fly