1. SYN信号:
SYN:同步序列编号(Synchronize Sequence Numbers)。是TCP/IP建立连接时使用的握手信号。
在客户机和服务器之间建立正常的TCP网络连接时,客户机首先发出一个SYN消息,当服务器接收到到客户的连接请求时(SYN=1),会将此信息加入未连接队列,并发送请求包给客户(SYN=1ACK=1),表示接收到了这个消息,此时,客户机进入SYN_RECV(服务端被动打开后,接收到了客户端的SYN并且发送了ACK时的状态)状态,再进一步接收到客户端的ACK就进入ESTABLISHED(连接成功)状态。这样在客户机和服务器之间才能建立起可靠的TCP连接,数据才可以在客户机和服务器之间传递。
2. SYN Flood攻击的原理:
SYN Flood利用TCP协议缺陷,它透过一定的操作破坏TCP三次握手建立正常连接,占用并耗费系统资源,使得被攻击方资源耗尽,无法及时回应或处理正常的服务请求。
一个正常的TCP连接需要三次握手:
- 首先客户端发送一个包含SYN标志的数据包,表明客户机请求与服务器进行信息的交互。
- 其后服务器返回一个SYN/ACK的应答包,表示客户端的请求被接受。
- 最后客户端再返回一个确认包ACK,这样才完成TCP连接。
图片来源网络