# 第 3 层攻击
第 3 层 DDoS 攻击使用第 3 层协议(尤其是 ICMP)使目标服务器、网站或应用程序宕机。
# 什么是第 3 层 DDoS 攻击?
分布式拒绝服务 (DDoS) 攻击试图用大量数据淹没其目标。DDoS 攻击好比高速公路发生交通堵塞,妨碍常规车辆抵达目的地。
第 3 层 DDoS 攻击以 OSI 模型中的第 3 层(L3)作为攻击目标。与所有 DDoS 攻击一样,第 3 层攻击的目的是使程序、服务、计算机或网络的运行变慢或使其崩溃,或者填满容量以使其他任何人都无法接收服务。L3 DDoS 攻击通常通过针对网络设备和基础设施来实现。
第 3 层 DDoS 攻击与较高层攻击之间存在一些重要区别:
- 第 3 层攻击针对的是网络层,而不是传输层或应用程序层的进程(第 4 层和第 7 层 DDoS 攻击的目标)
- 第 3 层攻击不必首先与目标打开 TCP 连接
- 第 3 层攻击不以特定端口为目标
# 什么是 OSI 模型?
OSI 模型是 Internet 工作原理的概念模型。OSI 模型的主要宗旨是帮助人们讨论网络设备和协议,确定哪些协议供哪些软件和硬件使用,并且显示 Internet 如何运行而与底层硬件无关。
OSI 模型将促进 Internet 运作的不同技术分为多个层面。总共有七层:
# OSI 模型中的第 3 层是什么?
OSI 第 3 层称为网络层。第 3 层包含了造就了互连网络(即互联网)的各种协议和技术。这一层是进行跨网络路由的地方。遍历网络的数据划分为数据包,然后对这些数据包寻址并发送到第 3 层的目的地。此过程中最重要的协议是互联网协议 (IP)。
第 3 层的协议不会打开连接,确保可靠数据传递或指示目标设备上的哪个服务应使用该数据;这些是第 4 层流程。第 4 层涉及使用传输协议,例如 TCP 和 UDP。在没有第 4 层传输协议的前提下跨网络发送数据包就像在不确保地址正确的情况下(在地址中包括应打开信件的特定人员的姓名,或使用信誉良好的邮政服务)将信件邮寄到某一地址。数据可能会到达,也可能不会。这就是为什么许多第 3 层协议始终与第 4 层传输协议结合使用,以确保数据到达正确的位置。
但是,仍然可以通过 IP 将数据包发送到网络目标,而不使用传输协议。
由于第 3 层是无连接的,因此第 3 层 DDoS 攻击无需通过 TCP 打开连接或指示端口分配。第 3 层 DDoS 攻击的目标是计算机正在运行的网络软件,而不是特定的端口。
# 第 3 层使用什么协议?
下方列出了使用最广泛的第 3 层协议,以及最有可能在 DDoS 攻击中使用的协议:
IP:互联网协议 (IP) 路由和寻址数据包,以便它们到达正确的目的地。每个连接到互联网的设备都有一个 IP 地址,并且IP 协议将正确的 IP 地址附加到各个数据包上,就如在给人写信时注明地址一样。
IPsec:IPsec 实际上是由几个协议组成的套件,而不是单一的协议。IPsec 是 IP 的加密版本,由 VPN 使用,类似于 HTTPS 和 HTTP 之间的区别。
ICMP:互联网控制消息协议 (ICMP) 处理错误报告和测试。ICMP 是无连接协议,不使用 TCP 或 UDP 等传输协议。相反,ICMP 数据包仅通过 IP 发送。开发人员和网络工程师将 ICMP 用于 ping 和 traceroute 功能。通常一次只需要发送一个 ICMP 数据包。
其他第 3 层协议包括:
- IGMP:Internet 组消息协议管理 IP 多播组,使一个网络中的多个设备可以接收相同的 IP 流量。
- ARP:地址解析协议仅在单个网络内使用。计算机使用此协议将 IP 地址映射到网络中的 MAC 地址(MAC 地址是硬连接到每个具有Internet 功能的设备中的唯一标识符,就如指纹一般)。
从理论上看,使用这些协议中的任何一种进行攻击都是可能的。ICMP 通常用于向服务器发送过多无法响应的 ping 信号,或利用一个大型 ping 数据包使接收设备崩溃(这称为“死亡之 Ping”)。攻击者可以通过 IPsec 使用垃圾数据或过大的安全性证书来淹没目标。
不过,并非所有这些协议都能真正用于 DDoS 攻击,而且硬件更新也杜绝了某些攻击类型的可能性。例如,ARP 仅在本地网络内运行,因此攻击者首先需要连接到本地网络,然后才能进行 DDoS 攻击。而且,无法对现代硬件进行 ICMP 死亡之 Ping 攻击,这些硬件会忽略太大的 IP 数据包。
# L3 DDoS 攻击如何工作?
与其他类型的 DDoS 攻击一样,攻击者通过这些协议发送大量垃圾网络流量。操作方法有多种,具体取决于协议。垃圾流量阻碍合法用户的请求,从而减慢对其的响应或将其完全阻止。有时,过多的垃圾数据使目标资源被淹没,造成目标崩溃。
# 第 3 层 DDoS 攻击有哪些著名类型?
尽管其他攻击也有可能,包括仅通过 IP 的攻击在内,但基于 ICMP 的攻击最为常见。著名的 ICMP 攻击包括:
- Ping 洪水:在 Ping 洪水 DDoS 攻击中,攻击者一次向服务器发送数千个甚至数百万个 ping 请求。
- Smurf 攻击:ICMP 没有适当的安全保护或验证措施,这使攻击者能够在 ICMP 请求中伪造 IP 地址。在 Smurf DDoS 攻击中,攻击者向数千台服务器发出 ping 请求,在 ping 请求中伪造目标的 IP地址,从而使响应发往目标,而不是攻击者。大多数现代网络硬件不再容易遭受这种攻击。
- 死亡之 Ping:在 ICMP 死亡之 Ping 攻击中,攻击者向目标发送超过最大允许大小的 ping 请求。通向目标的路由器会将 ping 分段成较小的数据包,以便目标接受它们,但是当它尝试从较小片段重新组合大数据包时,数据包大小将超过最大值,从而使目标崩溃。现代设备不容易遭受这种攻击。
# Cloudflare 如何防御第 3 层 DDoS 攻击?
除了阻止第 4 层和第 7 层的 DDoS 攻击外,Cloudflare 还可缓解第 3 层 DDoS 攻击。Cloudflare Magic Transit 专门用于阻止对内部网络基础设施的攻击,包括任何层的 DDoS 攻击。Cloudflare WAF 和 CDN 也通过仅接受 HTTP 和 HTTPS 端口的流量(这些仅在第 7 层上)来阻止第 3 层 DDoS 攻击。
# TCP/IP 模型中的第 3 层是什么?
TCP/IP 模型是另一种网络工作方模型。TCP/IP 模型包含四层,而不是七层:
应用程序层(对应于 OSI 模型中的第 5-7 层)
传输层(对应于 OSI 模型中的第 4 层)
互联网层(对应于 OSI 模型中的第 3 层)
网络访问/链路层(对应于 OSI 模型中的第 1-2 层)
如果引用 TCP/IP 模型而非 OSI 模型,则第 3 层 DDoS 攻击将称为第 2 层 DDoS 攻击。