洪水攻击
定义
洪水攻击描述的是一种以“量”压垮目标的攻击思路:向被攻击方持续发送大量数据包或连接请求,使对方忙于应付无效输入,腾不出资源处理合法请求[5]。它属于拒绝服务攻击(DoS)的范畴,当攻击流量来自两台以上被控制的主机时,则称为分布式拒绝服务攻击(DDoS),破坏力和溯源难度都更大[3]。在许多技术资料中,“洪水攻击”与“拒绝服务攻击”被当作近义词使用,但严格说来前者只是后者的实现手段之一,后者还包括利用协议或程序缺陷直接使系统崩溃等情形[6]。
从耗竭的对象看,洪水攻击可分为两类:一类消耗网络链路带宽,巨大流量的数据包挤占信道,合法数据包无法到达主机;另一类消耗主机资源,会话表、内存、CPU 处理时间被逐个请求占满,系统无力再接受新连接[3]。两类手段常被叠加使用,攻击者会根据目标链路的容量与协议栈的配置选择成本更低的入口[1]。
原理
最典型的洪水攻击针对 TCP 建立连接的过程。正常通信前,客户端先发出 SYN 报文,服务器回以 SYN/ACK 表示接受并进入等待状态,客户端再回 ACK,三次交互完成连接。服务器内核为尚未握完手的请求维护一个半连接队列,该队列长度有上限,超出上限的新报文会被丢弃。
SYN 洪水攻击正是利用这一等待机制:攻击者伪造大量并不存在的源 IP 地址发出 SYN,服务器逐个回包并分配表项,却始终收不到第三次握手的 ACK,只能重传并等待超时。伪造地址使这些连接永远无法完成,半连接表项在超时前持续占用空间,攻击者只需维持足够高的发包速率,就能让队列始终处于填满状态,正常用户的新连接因此被丢弃。由于所需流量可以远低于带宽耗尽型攻击,这类攻击在低速率下也可能奏效。
带宽耗尽型攻击则不依赖协议状态。UDP 洪水向目标的大量端口发送数据报,主机须逐个检查是否有程序监听,并对不可达端口回送 ICMP 报文,发包速率足够高时处理开销和回包流量本身即构成负担。ICMP 洪水或称 Ping 洪水以 Echo 请求持续冲击目标,使目标在应答应答报文上消耗带宽与处理器时间[7]。放大攻击进一步借助第三方服务的反射放大效应:伪造受害者的源地址向公开解析器等中介发起请求,中介的响应被导向受害者,响应体积可达请求的许多倍[8]。
从流量形态看,洪水攻击的判定依赖速率与状态两类指标:包速率、比特率反映链路压力,处于 SYN_RECV 状态的连接数量、会话表占用率等则反映主机资源压力[9]。实际攻击中大部分事件的峰值并不高,持续时间也短,因此基于带宽阈值的告警往往滞后,需要结合协议比例和连接状态进行判别[9]。
发展历程
此类攻击自互联网商业化早期即已出现,1990 年代末至 2000 年代初的多起事件使其受到普遍关注。2000 年 2 月,多家知名网站在短时间内相继因拒绝服务攻击而中断服务,成为当时影响最大的安全事件之一,SYN 洪水也因实施门槛低、效果明显而成为最流行的攻击手段之一[4]。
此后攻击的组织方式由单机转向分布式。攻击者先用恶意程序感染大量联网设备组成僵尸网络,再统一下达指令,使流量同时从多个来源涌向同一目标,防御方难以通过封禁单一地址化解[10]。物联网设备的普及为这种模式提供了新的资源池,摄像头、家用路由器、数字录像机等设备常以出厂默认口令运行,容易被批量控制[11]。
2016 年 10 月,名为 Mirai 的恶意程序控制的设备网络对美国域名解析服务商 Dyn 发起攻击,导致大量网站数小时内无法通过域名访问,参与攻击的 IP 地址数量达到千万量级[11][12]。Mirai 的源代码在攻击前已被公开,其扫描与感染手法随后被多种变种沿用[13]。2025 年 6 月,一起针对单一 IP 地址的 UDP 洪水攻击峰值达到每秒 7.3 太比特,45 秒内推送约 37.4 太字节流量,刷新了公开记录;同期还出现了借助云平台资源发动的超大规模攻击[8][14]。
应用
洪水攻击的现实分布很不均匀。安全厂商的统计显示,网络层攻击中绝大多数峰值低于每秒 500 兆比特、持续时间不足 10 分钟,真正达到太比特量级的只占极小比例,但正是少数超大攻击造成了广泛的服务中断[9]。域名解析、在线游戏、电子商务与支付网关等对持续可用性依赖较强的服务,是这类攻击的常见对象[15]。
与之对应,防御体系也围绕“把攻击挡在目标之前”展开。主机侧可调整半连接队列上限、缩短超时时间,并启用 SYN Cookie 技术,使服务器在队列填满时以加密方式编码连接状态而不必保存表项。网络侧则借助防火墙或清洗设备代答握手,过滤不可用连接,或在上游路由器上以流量规则丢弃异常流量[4][9]。对超大规模攻击,常见做法是依靠任播网络把流量分散到多个地点吸收[9]。
此外,洪水攻击也常被用作压力测试手段,安全研究人员与网络工程师在自有环境中模拟大流量输入,以检验设备在极端负载下的表现[7]。商业层面则形成了按需出售攻击能力的服务形态,这类平台以网页界面接受订单,降低了实施门槛,也使攻击频率上升[8]。
局限
洪水攻击的效果高度依赖攻防双方的资源对比。带宽耗尽型攻击若要奏效,攻击方可用带宽通常需超过目标,否则流量在链路上即被稀释[1]。资源耗尽型攻击虽然对流量要求较低,但只要目标扩大队列、启用无状态握手或在入口处过滤,原有参数就会被抵消,攻击者必须重新测算积压规模与超时时间才能维持效果。
攻击的可追溯性也是其弱点。使用真实源地址的直接攻击容易被识别并封禁;即使伪造源地址,数据包仍可能在服务商配合下回溯到来源,分布式与多层伪造只是提高了难度而非消除可能。同时,防御方并非总能彻底消除影响,针对 TCP 握手设计的攻击在不重新设计协议的前提下难以完全阻止,通常只能减轻危害[16]。
防御手段本身也带来代价。放宽半连接队列上限需要额外预留内存,缩短超时可能误伤响应较慢的正常用户;对 ICMP 报文限速虽能抑制 Ping 洪水,却可能连带影响路径最大传输单元发现等依赖 ICMP 的正常功能,并在攻击期间误滤合法报文[9]。当洪水流量足以塞满防火墙状态表时,位于目标一侧的缓解措施往往来不及生效,瓶颈已经上移到上游链路。上游黑洞封禁虽然能立即止断攻击,但同时使目标彻底不可达,等于以牺牲可用性换取流量消失[9]。
参见
参考资料
- 什么是拒绝服务(DoS)攻击? [引用日期2026-10-29]
- what-is-denial-of-service [引用日期2026-10-29]
- 什么是 DoS [引用日期2026-10-29]
- 防火墙防止DDOS SYN Flood原理介绍 [引用日期2026-10-29]
- 用VC实现洪水攻击程序 [引用日期2026-10-29]
- 图文详情——科普中国资源服务 [引用日期2026-10-29]
- 如何发动 DDoS 攻击 | DoS 和 DDoS 攻击工具 [引用日期2026-10-29]
- New Peak In Hyper Volumetric Ddos Attacks Hits 7 3 Tbps [引用日期2026-10-29]
- Protocol DDoS Attacks | How SYN, UDP and ICMP Floods Work [引用日期2026-10-29]
- 如何预防 DDoS 攻击 | 方法和工具 [引用日期2026-10-29]
- Dyn攻击案后 美国聚焦“物联网”保安 [引用日期2026-10-29]
- 【原创】美国网络大规模瘫痪,物联网安防迫在眉睫 [引用日期2026-10-29]
- gouv.fr 上的网页 [引用日期2026-10-29]
- Cloudflareが35秒で記録的なDDoS攻撃を受け止める! [引用日期2026-10-29]
- [科普中国]-黑洞攻击 [引用日期2026-10-29]
- Unix类操作系统的TCP/IP堆栈加固 [引用日期2026-10-29]