一、DDoS攻击概述
1.1 到底什么是DDoS攻击
DDoS,全称是Distributed Denial of Service,翻译过来就是分布式拒绝服务。说白了,就是攻击者操控一大堆“肉鸡”设备,同时向你的服务器发起请求,把带宽打满、连接占满、CPU耗尽,让正常用户进不来。
我经常跟团队里的新人打一个比方:你开了一家奶茶店,正常情况下一分钟能做10杯。突然来了1000个人,每人只点一杯,但都堵在门口不走。真正的顾客进不来,你的店就瘫痪了。这就是DDoS的本质。
1.2 DDoS攻击的发展历史
这东西不是近几年才有的。我入行那会儿,大概2000年左右,最早的DDoS攻击就已经出现了。那时候攻击手法很粗糙,主要是用Trinoo、TFN这些工具,控制几十台机器发ICMP Flood。
后来呢?攻击规模越来越大。我记得2016年Mirai僵尸网络爆发,物联网摄像头被大规模利用,打出了1Tbps级别的流量。当时很多安全圈的朋友都懵了——以前几百G就算大事件了,现在直接上T。
到了今天,攻击手段已经非常成熟。攻击者不光打带宽,还打应用层,甚至混合多种手法。你想想看,一个攻击能同时占满你的带宽、耗尽你的连接数、打崩你的数据库连接池——这才是最头疼的。
| 年代 | 典型事件 | 攻击规模 | 主要手法 |
|---|---|---|---|
| 2000年前后 | Trinoo/TFN工具出现 | 百M级别 | ICMP Flood |
| 2010年左右 | DNS放大攻击流行 | 十G级别 | 反射放大 |
| 2016年 | Mirai僵尸网络 | 1Tbps+ | IoT设备 + SYN Flood |
| 2020年后 | 混合型攻击常态化 | 数Tbps | 多向量组合攻击 |
1.3 DDoS攻击的常见类型
业内一般把DDoS攻击分成三大类:Volumetric(容量型)、Protocol(协议型)、Application Layer(应用层)。我习惯把它们叫做“三板斧”。
1.3.1 Volumetric(容量型攻击)
这类攻击的目标很单纯——打满你的带宽。常见手法包括UDP Flood、ICMP Flood、DNS放大攻击等。攻击者不需要多高的技术,只要控制足够多的肉鸡就行。
我曾经帮一家游戏公司处理过UDP Flood,峰值流量到了800Gbps。他们的出口带宽只有10G,结果可想而知——整个机房都断联了。后来我们紧急联系上游ISP做了黑洞路由,才把影响控制住。
1.3.2 Protocol(协议型攻击)
这类攻击利用的是协议本身的漏洞。最典型的就是SYN Flood——攻击者发大量的SYN包,但不完成三次握手,把服务器的半连接队列占满。
嗯,这里要注意:SYN Flood的防御不能只靠调大backlog。我见过有人把tcp_max_syn_backlog调到65535,结果内存直接爆了。正确的做法是启用SYN Cookie,或者用硬件设备做代理。
其他常见的协议型攻击还有:
- ACK Flood:大量ACK包消耗服务器处理能力
- ICMP Flood:Ping洪水,现在比较少见
- Fragment Flood:利用IP分片机制消耗重组资源
1.3.3 Application Layer(应用层攻击)
这类攻击最狡猾。它模仿正常用户的请求,流量看起来完全合法,但就是能把你的应用打崩。常见的有HTTP Flood、Slowloris、CC攻击等。
我处理过一个案例:攻击者用几千个代理IP,每秒钟发几百个正常的GET请求,目标是我们客户的登录接口。流量不大,只有几百Mbps,但服务器CPU直接飙到100%。这就是典型的应用层攻击——流量不大,杀伤力不小。
1.4 DDoS攻击对业务的影响
很多人觉得DDoS就是“网站打不开”,其实影响远不止这些。我总结了几点:
- 直接经济损失:电商、游戏、金融类业务,每宕机一分钟都是真金白银的损失。我记得某电商平台大促期间被攻击,半小时损失了上千万。
- 品牌信誉受损:用户打不开你的网站,第一反应不是“有人在攻击”,而是“这家公司不行”。信任一旦崩塌,恢复起来很难。
- 运维成本飙升:应急响应需要投入大量人力,清洗服务、带宽扩容、硬件升级都是钱。
- 数据安全风险:很多攻击者会趁DDoS期间做渗透——你忙着抗流量,他们偷偷拖库。这叫“声东击西”。
你想想看,一个攻击下来,业务、品牌、成本、安全全受影响。所以DDoS防御不是“要不要做”的问题,而是“怎么做”的问题。
1.5 本章知识体系总览
下面这张图是我自己整理的DDoS攻击知识框架,方便你快速建立整体认知。
这张图把DDoS攻击的三大类型和典型手法串起来了。后面几章我们会逐一深入,讲怎么识别、怎么防御、怎么应急。嗯,先把基础打牢,后面才不慌。