什么是 Ping (ICMP) 洪水攻击?
Ping 洪水是一种拒绝服务攻击,攻击者试图用 ICMP 回显请求包使目标设备不堪重负,导致正常流量无法正常访问目标。当攻击流量来自多个设备时,攻击将成为 DDoS 或分布式拒绝服务攻击。
Ping 洪水攻击的工作原理
Ping 洪水攻击中会利用互联网控制消息协议 (ICMP),后者是网络设备用来通信的互联网层协议。网络诊断工具 traceroute 和 ping 都使用 ICMP 工作。通常,ICMP 回显请求和回显回复消息被用于 ping 网络设备,以便诊断设备的运行状况和连接性以及发送方和设备之间的连接。
ICMP 请求需要一些服务器资源来处理每个请求并发送响应。该请求对于传入消息(回显请求)和传出响应(回显回复)也都需要带宽。Ping 洪水攻击旨在利用虚假流量使目标设备无法响应大量请求和/或让网络连接超负荷。通过利用 ICMP 请求使僵尸网络中的许多设备针对相同的互联网资产或基础设施组件,攻击流量将大大增加,进而可能导致正常网络活动的中断。在以前,攻击者通常会在伪造的 IP 地址中进行欺骗来掩盖发送设备。借助现代僵尸网络攻击,恶意行为者几乎不需要掩盖机器人 IP 的需要,而是依靠未伪造的机器人构成的大型网络来使目标的容量达到饱和。
Ping (ICMP) 洪水的 DDoS 形式可分为 2 个重复步骤:
- 攻击者使用多个设备将许多 ICMP 回显请求数据包发送到目标服务器。
- 然后目标服务器将 ICMP 回显回复包发送到每个请求设备的 IP 地址作为响应。
Ping 洪水的破坏效果与对目标服务器发出的请求数量成正比。与基于反射的 DDoS 攻击(例如 NTP 放大和 DNS 放大攻击),Ping 洪水的攻击流量是对称的;目标设备接收的带宽量是每个机器人发送的总流量之和。
如何防护 Ping 洪水攻击?
禁用 ping 洪水最简单的方法是禁用目标路由器、计算机或其他设备的 ICMP 功能。网络管理员访问设备的管理界面,并禁用其使用 ICMP 发送和接收任何请求的能力,即可有效地消除对请求的处理和对回显回复的处理。在此后,所有涉及 ICMP 的网络活动都会被禁用,设备对 ping 请求、traceroute 请求和其他网络活动无响应,目前百度云防护就是采用这种方法。