SYN Flooding A Denial of Service Attack Shivani

  • Slides: 19
Download presentation
SYN Flooding: A Denial of Service Attack Shivani Hashia CS 265

SYN Flooding: A Denial of Service Attack Shivani Hashia CS 265

Topics v What is Denial of Service attack? v Types of attacks v SYN

Topics v What is Denial of Service attack? v Types of attacks v SYN flooding attack v Solutions v Conclusion

What is Denial of Service Attack? v Main aim to stop the victim’s machine

What is Denial of Service Attack? v Main aim to stop the victim’s machine from doing it’s required job v Server unable to provide service to legitimate clients v Damage done varies from minor inconvenience to major financial losses

Types of Attacks v Bandwidth Consumption: All available bandwidth used by the attacker e.

Types of Attacks v Bandwidth Consumption: All available bandwidth used by the attacker e. g. , ICMP ECHO attack v Resource Consumption: Resources like web server, print or mail server flooded with useless requests e. g. , mail bomb v Network Connectivity: The attacker forces the server to stop communicating on the network e. g. , SYN Flooding.

SYN Flooding Attack v Network connectivity attack v Most commonly-used Do. S attack v

SYN Flooding Attack v Network connectivity attack v Most commonly-used Do. S attack v Launched with a little effort v Presently, difficult to trace attack back to its originator v Web servers and systems connected to Internet providing TCP-based services like FTP servers, mail servers are susceptible v Exploits TCP’s three-way handshake mechanism and its limitations in maintaining half open connections

TCP Protocol: Three-way Handshake Client connecting to TCP port SYN LISTEN Client requests for

TCP Protocol: Three-way Handshake Client connecting to TCP port SYN LISTEN Client requests for connection ACK + SYN_RCVD Server agrees for connection request ACK CONNECTED Client finishes handshake S D

Three-way Handshake Initialize sequence numbers for a new connection (x, y) SYN x LISTEN

Three-way Handshake Initialize sequence numbers for a new connection (x, y) SYN x LISTEN Resources allocated SYN_RCVD SYN y +ACK x+1 ACK y+1 CONNECTED S D

How SYN Flooding Attack Works? Client connecting to TCP port Uses spoofed addresses SYN

How SYN Flooding Attack Works? Client connecting to TCP port Uses spoofed addresses SYN ØResources allocated for every half open connection SYN + ACK SYN ØLimit on number of half open connections SYN + ACK Attacker Victim I have ACKed these connections but I have not received an ACK back!

Attack Modes v Different parameters by which SYN flood attack can vary: 1. Batch-size

Attack Modes v Different parameters by which SYN flood attack can vary: 1. Batch-size : Number of packets sent from source address in a batch 2. Delay : Time interval between two batches of packets sent 3. Source address allocation u Single Address: Single forged address u Short List: Small list to pick source addresses u No List: Randomly created source addresses

Solutions v Using firewall v System configuration improvements v SYN cache

Solutions v Using firewall v System configuration improvements v SYN cache

Using Firewalls v Two ways in which firewall used: u Firewall as a relay:

Using Firewalls v Two ways in which firewall used: u Firewall as a relay: Packets from source received answered by the firewall u Firewall as a semi-transparent gateway: Lets SYN and ACK to pass, monitors the traffic and reacts accordingly

Firewall as a Relay Attack with Relay Firewall Acts as a proxy SYN SYN+ACK

Firewall as a Relay Attack with Relay Firewall Acts as a proxy SYN SYN+ACK A FIREWALL D

Firewall as a Relay (cont’d) Legitimate connection with relay firewall SYN SYN+ACK ACK Data

Firewall as a Relay (cont’d) Legitimate connection with relay firewall SYN SYN+ACK ACK Data Sequence number conversion S Firewall D

Firewall as Semi-transparent Gateway SYN+ACK Timeout RST S Firewall D

Firewall as Semi-transparent Gateway SYN+ACK Timeout RST S Firewall D

System Configuration Improvements 1) Decrease timeout period Ø Ø Reset the connections sooner Can

System Configuration Improvements 1) Decrease timeout period Ø Ø Reset the connections sooner Can deny legitimate access where the timeout period will be less than the round trip times 2) Increase the number of half-open connections Ø Ø More connections at the same time Will increase the use of resources

SYN Cache v Global hash table instead of the usual per socket queued connections

SYN Cache v Global hash table instead of the usual per socket queued connections v Protection from running out of the resources v Limit on number of entries in the table and hash bucket v Limit on the memory usage and amount of time taken to search for a matching entry

SYN Cache (cont’d) v Queue is divided into hash buckets v Each bucket treated

SYN Cache (cont’d) v Queue is divided into hash buckets v Each bucket treated as a First in First out Queue. v Hash value computed by choosing a function of source and destination IP addresses, ports and a secret key v Hash value acts as an index in the hash table. v Secret key transforms hash value so that an attacker cannot target specific hash bucket and deny service to a specific machine

Conclusion v SYN Flooding denial of service attack one of the most common attacks

Conclusion v SYN Flooding denial of service attack one of the most common attacks v Caused by the flaws in TCP protocol v Not possible to eliminate the attack v Possible to reduce the danger by taking the described measures properly

Thank you

Thank you