Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 1245

SYN 洪水攻击

审核人Cybersecurity entrepreneur & security researcher

SYN 洪水攻击 是什么?

SYN 洪水攻击基于 TCP 的拒绝服务攻击,通过大量发送未完成三次握手的 SYN 包,耗尽目标的连接状态资源。


在 SYN 洪水攻击中,攻击者发起大量 TCP 连接却始终不完成握手。每个伪造或未应答的 SYN 都会迫使服务器在 backlog 队列中分配一条半开连接,并回送 SYN/ACK,等待那个永远不会到来的最后 ACK。当 backlog 填满时,服务器便拒绝新的合法连接。SYN 洪水可以来自单一主机,但更常见的是僵尸网络,且通常伪造源 IP 以增加过滤难度。

flowchart TD
  A[攻击者] -->|"1. SYN(伪造源 IP)"| S[目标服务器]
  S -->|"2. 向伪造 IP 发送 SYN/ACK"| V["不存在 / 沉默的主机"]
  S -.->|"3. 分配半开连接表项"| Q[(Backlog 队列)]
  V -.->|"最终 ACK 永不到来"| S
  A -->|"高速重复发送"| S
  Q -->|"队列已满"| R[拒绝新的合法客户端]

这种攻击于 1996 年首次被公开,起因是 Phrack 杂志上发布的漏洞利用代码;1996 年 9 月,一次洪水攻击使纽约 ISP Panix 的邮件服务器瘫痪数日,促成了 CERT 通告 CA-1996-21。最权威的参考文献是 RFC 4987(2007 年),题为《TCP SYN Flooding Attacks and Common Mitigations》,系统梳理了各种对策及其权衡。最有效的主机侧防御是 SYN cookies,由 Daniel J. Bernstein 提出:服务器不再保存状态,而是把连接参数编码进 SYN/ACK 的初始序列号中,并从客户端的 ACK 中重建这些参数,这样在握手完成之前不会占用任何 backlog 表项。其他缓解措施包括扩大或动态调整 SYN 队列、在防火墙和负载均衡器上做连接速率限制、在网络边缘进行无状态过滤,以及上游 DDoS 清洗。

示例

  1. 01

    僵尸网络每秒向 Web 服务器发送数百万个伪造的 SYN 包,塞满其 TCP backlog。

  2. 02

    小规模攻击者利用旧设备未启用 SYN cookies 的弱点,使其连接表崩溃。

常见问题

SYN 洪水攻击 是什么?

基于 TCP 的拒绝服务攻击,通过大量发送未完成三次握手的 SYN 包,耗尽目标的连接状态资源。 它属于网络安全的 攻击与威胁 分类。

SYN 洪水攻击 是什么意思?

基于 TCP 的拒绝服务攻击,通过大量发送未完成三次握手的 SYN 包,耗尽目标的连接状态资源。

如何防御 SYN 洪水攻击?

针对 SYN 洪水攻击 的防御通常结合技术控制与运营实践,详见上方完整定义。

相关术语

另见