Top Banner
CIT 380: Securing Computer Systems Slide #1 CIT 380: Securing Computer Systems Denial of Service
35

CIT 380: Securing Computer Systems

Jan 02, 2016

Download

Documents

hayes-bauer

CIT 380: Securing Computer Systems. Denial of Service. Topics. Introduction History of DoS Modes of Attack Technical Attacks Distributed DOS (DDOS) Botnets Defending against DoS. Denial of Service. Attacks against availability of services. Common attacks: - PowerPoint PPT Presentation
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #1

CIT 380: Securing Computer Systems

Denial of Service

Page 2: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #2

Topics

1. Introduction

2. History of DoS

3. Modes of Attack

4. Technical Attacks

5. Distributed DOS (DDOS)

6. Botnets

7. Defending against DoS

Page 3: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #3

Denial of Service

• Attacks against availability of services.• Common attacks:

– CAIDA conservatively estimated 4000/week.– Attacks have increased since 2001 estimate.

• Most DoS vs. small site for short duration.• However, DoS attacks can be very big

– Millions of packets/second.– Many thousands of hosts involved.

• DoS attacks are very difficult to stop.

Page 4: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #4

Denial of Service Motives

Attacker Competitions– Take over IRC channels.– Fame: take down a well-known target.– Revenge for being DoSed.

Political– Take down computers of political opponents.

Financial– Take down competitor web site.– Extortion: pay attacker or be DoSed.

Page 5: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #5

History of Denial of Service1988: Morris Worm brings down most of Internet.1996: SYN flood attacks take out IRC networks.1997: Fragment attacks used to DoS Windows systems.1998: Distributed DoS attack tools appear.1999: Heavy use of DDoS tools.2000: DDoS attacks takes down Amazon, eBay, Yahoo.2001: Reflected DDoS attacks appear.2002: DDoS takes down 9 of 13 root DNS servers.2003: DDoS downs Al-Jazeera for pics of captured soldiers.2004: Spammers vs anti-spam orgs. DDoS extortion attacks.2007: Estonia taken off network due to DDoS attacks,

Storm botnet attacks researchers, admins who defend against it.

Page 6: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #6

DoS: Modes of Attack

1. Technical Attacks• Fragment attacks.• SYN Floods• Smurf.

2. Bandwidth Consumption• DDoS, amplifier-based attacks.

3. Other Resource Consumption• Email bombs.• Disk filling by syslog spoofing/anonymous ftp.• Computational attacks.

Page 7: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #7

Packet Fragmentation

Occurs at IP layer

Each fragment has own IP header

Characteristics:– Each fragment of a packet has same identification field.

– More Fragments flag set (except on final frag).

– Fragment Offset is offset (8-byte units) of fragment from beginning of original datagram.

– Total Length field is length of fragment.

Page 8: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #8

Fragment Security IssuesLarge Datagrams

– Use multiple fragments that will be re-assembled into a packet larger than the maximum IP packet size of 64KB.

– example: ping of deathIncomplete Datagrams

– Jolt2: stream of fragments, with no first fragment.Overlapping Fragments

– Fragment offsets overlap, so during reassembly, second packet is copied over part of TCP header, allowing true header to be hidden in second packet while firewall reads misleading header data from first packet.

– Denial of Service: Teardrop attack uses overlapping fragments to overflow integer in memory copy to crash Windows 95/NT and Linux <2.0.32 hosts.

Page 9: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #9

SYN Floods

Create many half-open connections to target– Send SYN packet from spoofed, invalid IP address.– Ignore SYN+ACK response

Target connection table fills up– all new TCP connections refused

SYN x

SYN y

SYN z

SYN a, ACK x

SYN b, ACK y

SYN c, ACK z

Attacker Target

SYN_RECV x from IP n

SYN_RECV y from IP n

SYN_RECV z from IP n

Page 10: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #10

SYN Flood Defences• Micro-connections: Allocate few resources (~16

bytes) micro-record until ACK recv’d• RST Cookies:

– Server sends incorrect SYN+ACK to first client connection request, eliciting RST as response. Thereafter, connections from that client are accepted.

• SYN Cookies: Store state in ISN, not on server. – Compute ISN using hash of src + dst IP addresses and

ports.– Valid clients will respond with ISN+1, allowing server

to compute connection table entry.

Page 11: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #11

Smurf Attack

Attacker

SRC=Target IP,DST=10.0.0.255

Target

10.0.0.*

Reflector Network

Page 12: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #12

Smurf Attack

Build special ICMP/UDP echo packetForge IP source address to be that of target.Destination address is a broadcast address.

Each host that receives broadcast will respond to the spoofed target address with an echo packet, overwhelming target host.

Most current routers refuse to pass on directed broadcast packets.

Page 13: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #13

DNS Amplification

Spoof DNS query from victim– 60-byte query returns 512-byte response (1999)

– Extended DNS allows up to 4320 byte response.

– 73:1 amplification of traffic

Requires open resolvers– DNS servers that will recursively resolve requests from

any host on Internet.

DNS servers should:– Return authoritative answers to anyone.

– Recursively resolve for local authenticated hosts.

Page 14: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #14

Computational Attacks

• Goal: Exhaust CPU resources of target.• Target: Application Layer• Examples:

– 2002. BBCode markup language of phpBB could consume 100% CPU in infinite expansion of multiply nested tags.

– 2003. Crosby and Wallach show how to select input to reduce hash (O(1) performance) to linked list (O(n) performance). Attacks vs. Bro IDS, perl.

– 2005. Tomcat 5.5 directory listing of large directories could use large amounts of CPU.

Page 15: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #15

DDoS Attacks

• Use valid protocols

• Spoof source IP

• Massively distributed

• Variety of attacks

Entire Data Center:• Servers, security devices, routers• Ecommerce, web, DNS, email,…

Provider Infrastructure:• DNS, routers, and links

Access Line

Attack zombies:

Page 16: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #16

Timeline of a DDOS Attack

1. Set up DDOS Network (Botnet)1. Manual compromise by group of crackers.2. Automated comprise by a worm.

2. Launch Attack3. Victim networks become unresponsive

Identification difficult due to router/host failures and lack of logging of packets.

4. Third party effectsVictim responses sent to spoofed IP addresses.

Page 17: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #17

Distributed Reflection DOS

Combine SYN Flood + DDOS attacks– Forge target’s IP address in SYN flood on multiple

reflection servers.

– Amplification: most OSes send multiple SYN+ACK responses to SYN packet.

– Concealment: packets come from multiple reflection servers, not actual attacker host.

– Difficult to block: attacker may rotate attacks from large pool of reflection servers, many of which may be important hosts which you need to receive traffic from.

Page 18: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #18

Botnet DDoS Attack

Page 19: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #19

Botnet Lifecycle

1. Recruit initial bot.2. Bot propagates.3. Setup dynDNS.4. Setup C&C.5. Bots report.6. Botherd sends

commands.7. Redirect dynDNS

to new C&C.

Page 20: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #20

Botnet Applications

• DDoS for extortion

• Spamming

• Proxying

• Phishing

• Spreading malware

• Spying– keylogging– network sniffing

Page 21: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #21

Roles and Responsibilities

• Botherd– Collects and manages bots (zombies.)– Rents botnet to users.

• Sponsors– Recruits and employs spammers, cashers, etc.

• Spammers• Developers

– Develop bot code.– Develop exploits used by bots to compromise PCs.

• Casher– Launders goods/money for sponsors.

Page 22: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #22

Making money with your botnet

Page 23: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #23

Bot Lifecycle

1. Old agent scanner selects target host.2. Old agent attempts exploit against target.3. If exploit ok, agent transfers self to target.4. Agent begins running on target.5. Agent registers itself with master server.6. Master accepts agent as member w/ pw.7. Agent logs into communication channel

with provided password.8. Agent waits for commands from master.

Page 24: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #24

Bot Capabilities

• DDOS Attacks– SYN floods

– Smurf

– UDP floods

– ICMP floods

– Mixed

• Recruitment– Scanning engine.

– Many exploits.

– Use other bot backdoors.

• File transfer• Proxying• E-mail harvesting• Sniffing• Spamming• Self-defence

– Anti-virus

– Polymorphism

– Rootkit.

Page 25: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #25

Command & Control Systems

Single static C&C server– Use IRC to control bots via text commands.– Botnet can be disabled by taking down C&C svr.

Page 26: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #26

Command & Control Systems

Dynamic DNS– Bots access C&C through dDNS address.– If C&C down, use dDNS to point to new C&C.

Decentralized DNS– Use bots as dynamic DNS servers.– Change DNS results regularly.– Change DNS servers regularly.

Page 27: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #27

Botnet Families

• Agobot/Phatbot– Over 500 variants.– Modular structure: easy to add features.– Some use WASTE p2p communication.

• SDBot– Simpler than Agobot, but common.

• GTBot– Script mIRC client for Windows.

Page 28: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #28

Storm Worm• Command & Control

– Encrypted edonkey p2p.– Fast flux DNS network.– Bots hidden via rootkits.

• Spreading techniques– Browser vulnerabilities– Malware sent via e-mail,

IM, blog/forum posts• Activities

– Pump-n-dump scams.– Phishing.– DDOS.

Page 29: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #29

Why DDoS is Hard to Stop

1. Usability of DDoS toolsAttackers can d/l user friendly advanced tools.

2. IP spoofingDDoS attacks can always be spoofed.

3. Numerous agentsAttacker agents spread across networks.

4. Variety of trafficDDoS attacks can be launched with any protocol.

5. High-volume trafficAt DDoS traffic volumes, firewalls and IDS must analyze

each packet quickly, i.e. without deep packet inspection or cross-packet correlations.

Page 30: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #30

Filterable and non-Filterable Attacks

Filterable Attacks– Attack non-essential services (ICMP echo) or

ports (random UDP flood.)

Non-filterable Attacks– Attack essential services (email or web.)– Packets may be partially valid for targeted

protocol.

Page 31: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #31

DDOS Prevention

• Apply patches against technical attacks.• Firewall rules to drop known attacks at perimeter.• Overprovisioning

– Network bandwidth, NICs

– Memory, disk

– CPU

• Load balancing• Caching

– Create static page frequently instead of dynamically creating page whenever accessed.

Page 32: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #32

DDOS Detection

Detecting zombie hosts– DDOSPing– Zombie Zapper

Detecting a DDOS attack– Performance monitoring: network and host– Network intrusion detection systems

Page 33: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #33

DDOS Reaction

• Filter out identifiable DDOS traffic.• Contact ISP for help with

– Filtering and rate limiting.– Tracking down source of attack.

• Move the target– White House avoided by changing IP address.

• Use Alternate Infrastructure– Use caching to decrease server load.– Use anti-ddos provider like Akamai, Prolexic.

Page 34: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #34

Key Points

• Types of denial of service attack– Technical attacks (SYN flood, DNS amp, smurf)– Bandwidth attacks (DDOS)

• DOS attacks are a serious threat– Can take down large sites (often for money.)– DDOS prevention techniques.

• Botnets make DDOS easy and effective– Command & control techniques.

Page 35: CIT 380: Securing Computer Systems

CIT 380: Securing Computer Systems Slide #35

References1. “Al-Jazeera Hobbled by DDOS Attack,” InfoWorld, http://www.infoworld.com/article/03/03/26/HNjazeera_1.html, March 26, 2003.2. Scott Berinato, “How a Bookmaker and a Whiz Kid Took On an Extortionist—and Won,” CSO Online,

http://www.csoonline.com/read/050105/extortion_pf.html, Nov 22 2003.3. CERT Coordination Center, “Results of the Distributed-Systems Intruder Tools Workshop,” December 1999,

http://www.cert.org/reports/dsit_workshop-final.html4. David Dagon et. al., “A Taxonomy of Botnets,” http://www.ensl.cs.gwu.edu/csnetsec/CS-NetSec?

action=AttachFile&do=get&target=taxonomy_botnets.pdf5. Dancho Danchev, http://ddanchev.blogspot.com/2007/03/botnet-communication-platforms.html, 2007.6. David Dittrich, DDOS Archives, http://staff.washington.edu/dittrich/misc/ddos/, 2006.7. Brandon Enright, “Exposing Stormworm,” http://noh.ucsd.edu/~bmenrigh/exposing_storm.ppt, 2007.8. Gadi Evron and Ronald Vaugn, “DNS Amplification Attacks,” http://www.isotf.org/news/DNS-Amplification-Attacks.pdf , 2006.9. Greene, “ISP Security 101 Primer,” http://www.nanog.org/mtg-0602/greene.html, 2003.10. The Honeynet Project, “Know Your Enemy: Tracking Botnets,” http://www.honeynet.org/papers/bots/, 2005.11. Steve Gibson, “Distributed Reflection Denial of Service,” http://www.grc.com/dos/drdos.htm, Feb 22 2002.12. Jim Lippard, “Botnets 101,” http://www.arizonatele.com/atic/show/lippard-botnets-0605.ppt13. Stuart McClure, Joel Scambray, and George Kurtz, Hacking Exposed, 5/e, McGraw-Hill, 2005.14. Jelena Mirkovic, Sven Dietrich, David Dittrich, and Peter Reiher, Internet Denial of Service: Attack and Defense Mechanisms, Prentice

Hall, 2005.15. C. Nuttall, “Crime Gangs Extort Money with Hacking Threat,” The Financial Times, 11 Dec 2003,

http://www.rense.com/general44/hack.htm16. Andy Patrizio, “The Storm that Keeps Blowing,” http://www.internetnews.com/bus-news/article.php/3707106, Oct 24 2007.17. Joel Scambray, Mike Shema, Caleb Sima, Hacking Exposed Web Applications, Second Edition, McGraw-Hill, 2006.18. Secure Computing, “Zombie Statistics,” http://www.ciphertrust.com/resources/statistics/zombie.php19. Ed Skoudis, Counter Hack Reloaded, Prentice Hall, 2006.20. Scott A Crosby and Dan S Wallach, “Denial of Service via Algorithmic Complexity Attacks,” USENIX Security 2003,

http://www.cs.rice.edu/~scrosby/hash/, 2003.