2016年 ,Mirai发动了一系列大规模 DDoS攻击,目标包括美国互联网服务提供商Dyn
,导致包括 Netflix 、Spotify在内的多个知名网站在美国和欧洲瘫痪 。 2018年2月28日,GitHub遭受了高达 1.35 Tbps的 DDoS攻击。 2020年,AWS Shield Advanced防护服务遭受了高达 2.3 Tbps的 DDoS攻击 。 你好,我是猿java。在上面 3个案例中,我们多次提到 DDoS攻击。云计算那么 ,什么是 DDoS攻击?DDoS攻击会带来什么危害?我们该如何防御?这篇文章,我们将深入地聊一聊 。 在讲解 DDoS之前 ,我们先来了解一个它的原始版本 DoS攻击。 DoS(Denial of Service ,拒绝服务)攻击是一种网络攻击形式,旨在通过使目标系统、网络或服务超负荷运行,导致合法用户无法正常访问或使用该资源。攻击者通过发送大量请求 、数据包或利用系统漏洞,香港云服务器消耗目标的计算资源、带宽或内存,从而使目标无法响应合法的用户请求,达到瘫痪系统
、扰乱服务的目的
。 如下图,可以形象地描述 DoS攻击: DDoS(Distributed Denial of Service,分布式拒绝服务)攻击是一种通过多台受控计算机或设备向目标网络、服务器或应用程序发起大量请求
,从而使其资源耗尽、免费模板无法正常响应合法用户请求的恶意行为。DDoS攻击的目的是通过压垮目标系统的资源(如带宽、处理能力
、内存等)
,导致其服务不可用
,进而达到破坏
、勒索或转移注意力等目的。 与传统的单一来源的DoS(Denial of Service
,建站模板拒绝服务)攻击不同,DDoS攻击通常涉及大量分布在全球各地的“僵尸网络”(Botnet)。这些僵尸网络由黑客通过恶意软件感染的计算机和物联网设备组成
,使得攻击者能够同时从多个源头发起攻击
,极大地增加了攻击的规模和难度。 如下图 ,可以形象地描述 DDoS攻击的场景: 两者的区别: DDoS攻击主要包括以下 4种大类型
,然后在每种类型中会列举几个典型的案例
: (1) 基于网络层的攻击 (2) 基于传输层的攻击 (3) 基于应用层的攻击 (4) 混合型攻击 结合网络层和应用层的攻击手段,全面消耗目标的各种资源 ,增加防御的难度
。 通常来说,DDoS 攻击的工作原理通常涉及以下 8个步骤: (1) 僵尸网络形成 :攻击者组装了一个由受感染设备组成的网络,称为僵尸网络(botnet)
。这些设备(可能包括感染了恶意软件的计算机、服务器、IoT 设备或智能手机)受攻击者控制并用于发起攻击
。 (2) 侦查:攻击者识别要破坏或禁用的潜在目标
,例如网站、服务器或网络基础设施。这可以通过自动扫描或收集有关易受攻击目标的信息来完成 。 (3) 命令和控制 (C&C) 设置:攻击者设置了一个命令和控制基础设施 ,以便与僵尸网络中受感染的设备进行通信。此基础结构允许攻击者发出命令并协调攻击。 (4) 发起攻击
:攻击者指示僵尸网络受感染的设备向目标系统发送大量流量或请求 。这种流量洪流会压垮目标的资源
,例如带宽
、处理能力或内存 。 (5) 流量重定向:为了放大攻击,攻击者可能会使用 IP 欺骗或反射/放大攻击等技术。IP 欺骗涉及伪造攻击流量的源 IP 地址,使其看起来好像来自合法来源。 (6) 反射/放大攻击利用易受攻击的服务器或服务,这些服务器或服务的响应流量多于接收的流量 ,从而放大了攻击的规模。 (7) 对目标系统的影响:由于流量过大
,目标系统的资源不堪重负
。因此,目标系统的性能会下降或合法用户完全无法访问
。这种中断可能导致财务损失、声誉损害和潜在的安全漏洞。 (8) 攻击持续性:攻击者可能会尝试在较长时间内持续攻击,调整攻击策略或针对基础设施的不同部分以逃避 DDoS 检测或缓解措施 。 在分析完 DDoS攻击的工作原理之后,我们需要对工作原理涉及的几个概念进行。 (1) 什么僵尸网络? 众所周知,僵尸网络(botnet)是过去几年最大的 DDoS 攻击的幕后黑手,从 2016 年的 Dyn 攻击到 2023 年由 Mirai 僵尸网络主导的利用命令注入漏洞的攻击 。僵尸网络是受恶意软件感染的计算机和联网设备(IoT 、智能设备等)的集合,它们在单个恶意行为者或通常称为“僵尸僵尸主机”的攻击组的控制下协同工作。这样的网络也被称为僵尸军队,每个受感染的设备都被称为机器人/僵尸 。 (2) 僵尸网络中有多少个爬虫程序
? 僵尸网络中爬虫程序的数量差异很大,从几千台到一百多万台受感染设备不等 。例如,Hide n Seek 僵尸网络拥有大约 24,000 台受感染的设备 ,而 Mirai 僵尸网络在 2016 年严重破坏了美国东海岸的互联网使用 ,据信有 800,000 至 250 万台受感染设备 。 防御DDoS攻击需要多层次、多手段的综合防护策略,包括网络层防护、应用层防护、流量清洗服务等。以下是一些常见的防御措施
: (1) 网络层防护: (2) 分布式防护 : (3) 流量清洗服务: 第三方流量清洗服务(如Cloudflare、Akamai、Amazon AWS Shield)可以在攻击流量到达目标之前
,对其进行过滤和清洗,只将合法流量转发给目标。 (4) 应用层防护: (5) 冗余和负载均衡: (6) 监控和报警: 实时监控网络流量和服务器状态
,及时发现异常流量或性能下降 ,快速响应和处理攻击。 (7) 安全意识和培训 : 定期进行安全培训,提高员工识别和应对DDoS攻击的能力,制定应急响应计划
。 (8) 协议和连接优化: 本文 ,我们详细地分析了 DDoS攻击以及工作原理和预防措施 ,它是一种常见且破坏力强大的网络攻击手段
。尽管
,DDoS攻击更多面向的是安全和运维人员
,但是作为程序员 ,我们也需要学会如何识别和防御 DDoS攻击,这样我们才能更好地做好系统服务自保。

