文章目录
- 一、什么是SYN洪范攻击?
- 二、SYN泛洪攻击原理
- 2.1 TCP 三次握手过程
- 2.2 SYN攻击过程
- 三、防御措施
一、什么是SYN洪范攻击?
SYN洪泛攻击(SYN Flood)发生在OSI第四层,是一种基于TCP协议三次握手漏洞的DoS(Denial of Service,拒绝服务)攻击方式。攻击者通过伪造海量TCP连接请求(SYN
报文),耗尽目标服务器资源,导致合法用户无法建立正常连接。
二、SYN泛洪攻击原理
2.1 TCP 三次握手过程
正常情况下,客户端向服务器发送 SYN
包请求建立连接,服务器收到后回复 SYN - ACK
包,客户端再回复 ACK
包确认连接建立。
2.2 SYN攻击过程
攻击者伪造大量源 IP 地址,向目标服务器发送大量 SYN
包。服务器收到后,为每个连接分配资源并发送 SYN - ACK
包,等待客户端的 ACK
包。但由于源 IP 地址是伪造的,攻击者不会发送 ACK
包,导致服务器上大量半连接状态积累,资源耗尽。
三、防御措施
- 协议层防御
- SYN Cookie:服务器在收到
SYN
包后,不立即分配资源,而是通过计算生成一个特殊的Cookie
值,嵌入到SYN - ACK
包中。客户端收到后,将Cookie
值返回,服务器验证通过后再分配资源建立连接 - 连接队列调优:调整内核参数(如net.ipv4.tcp_max_syn_backlog)扩大队列容量48。
- 缩短 SYN 超时时间 :减少服务器等待
ACK
包的时间,使半连接状态尽快释放,降低资源占用。
- SYN Cookie:服务器在收到
- 网络层防御
- 过滤异常流量 :通过防火墙或路由器过滤异常流量,如限制每个 IP 的
SYN
速率。 - 源 IP 验证 :使用反向路径转发(RPF)技术,检查数据包的源 IP 地址是否从正确的接口转发过来,如果不是则丢弃
- 过滤异常流量 :通过防火墙或路由器过滤异常流量,如限制每个 IP 的
- 硬件级防护:定期更新并应用网络设备(包括路由器、交换机和防火墙)的安全补丁,解决可能被利用的漏洞