Technical Details
Normally when a client attempts to start a TCP connection to a server, the client and server exchange a series of messages which normally runs like this:
- The client requests a connection by sending a
SYN
(synchronize) message to the server. - The server acknowledges this request by sending
SYN-ACK
back to the client. - The client responds with an
ACK
, and the connection is established.
This is called the TCP three-way handshake, and is the foundation for every connection established using the TCP protocol.
A SYN flood attack works by not responding to the server with the expected ACK
code. The malicious client can either simply not send the expected ACK
, or by spoofing the source IP address in the SYN
, causing the server to send the SYN-ACK
to a falsified IP address - which will not send an ACK
because it "knows" that it never sent a SYN
.
The server will wait for the acknowledgement for some time, as simple network congestion could also be the cause of the missing ACK
, but in an attack increasingly large numbers of half-open connections will bind resources on the server until no new connections can be made, resulting in a denial of service to legitimate traffic. Some systems may also malfunction badly or even crash if other operating system functions are starved of resources in this way.
Read more about this topic: SYN Flood
Famous quotes containing the words technical and/or details:
“Where there is the necessary technical skill to move mountains, there is no need for the faith that moves mountains.”
—Eric Hoffer (19021983)
“Anyone can see that to write Uncle Toms Cabin on the knee in the kitchen, with constant calls to cooking and other details of housework to punctuate the paragraphs, was a more difficult achievement than to write it at leisure in a quiet room.”
—Anna Garlin Spencer (18511931)