返回博客
DDoS 攻击类型全解析:从流量攻击、CC 到 L7 攻击

DDoS 攻击类型全解析:从流量攻击、CC 到 L7 攻击

发布于 2026-09-24|作者: ByteShield Team

重点摘要

  • 判断 DDoS 不能只问「攻击流量有多大」,更要确认攻击正在消耗哪一种资源:带宽、连线,还是应用处理能力。
  • Volumetric Attack 以 BPS 衡量,目标是塞满带宽;Protocol Attack 以 PPS、SYN Rate、Concurrent Connections 衡量,目标是耗尽连线资源。
  • L7 攻击与 CC Attack 发送的是完全符合 HTTP Protocol 的 Request,流量不一定大,却可能集中消耗 Login、Search、API 等高成本 Endpoint。
  • 到了 L7,单一 Request 几乎无法区分正常用户与恶意 Bot,需要从 Request Frequency、Fingerprint、Session 与 Behavior 判断「这个 Client 正在做什么」。

当企业谈到 DDoS 防护时,第一个想到的通常是带宽与清洗能力:能防多少 Gbps?能不能应对 Tbps 级的大流量攻击?

这些问题很重要,但已经不足以完整描述 DDoS 的风险。除了塞满带宽的 Volumetric Attack,攻击也可能消耗 TCP 连线、Web Server、API 或 Database 资源。

尤其到了 Layer 7(L7),攻击流量未必特别庞大。大量看似正常的 HTTP Request,也可能透过 Login、Search、API 等高成本 Endpoint 持续消耗应用资源。

因此,判断 DDoS 不能只问「攻击流量有多大」,还要确认:攻击正在消耗哪一种资源?

DDoS 攻击是什么?

DDoS(Distributed Denial of Service,分布式阻断服务)是指透过大量分散来源的流量或请求消耗目标资源,使正常用户无法顺利取得服务。

但不同 DDoS 攻击所消耗的资源并不相同。从网络层到应用层,常见 DDoS 攻击大致可以分成三类:

  1. Volumetric Attack:流量型攻击
  2. Protocol / L3-L4 Attack:协议型攻击
  3. Application / L7 Attack:应用层攻击

此外,到了应用层,Automated Bot Traffic 也可能与 HTTP Flood、CC Attack、API Abuse 等行为产生交集。

攻击类型主要攻击目标常见案例优先观察指标
Volumetric AttackNetwork BandwidthUDP Flood、DNS AmplificationBPS
Protocol / L3-L4 AttackTCP Connections、Network ResourcesSYN Flood、Connection ExhaustionPPS、Concurrent Connections
Application / L7 AttackWeb Servers、APIs、Applications、DatabasesHTTP Flood、CC Attack、API FloodRPS、URI / API Endpoint、HTTP Status
Automated Bot Traffic*Business Logic、Accounts、APIsLogin Abuse、Scraping、Automated RequestsFingerprint、Session、Behavior

* Automated Bot Traffic 本身不一定是 DDoS,但在应用层可能与 HTTP Flood、CC Attack、API Abuse 等行为重叠。

第一类:Volumetric Attack,目标是塞满带宽

Volumetric Attack 是最直观的 DDoS 攻击类型。这类攻击目的很直接:透过大量流量占满目标的网络带宽,导致用户的流量无法顺利进入。

常见方式包括:

  • UDP Flood
  • DNS Amplification
  • Reflection / Amplification Attack

这类攻击通常以 BPS(Bits Per Second)衡量。当 BPS 在短时间内异常增加,甚至逼近或超过网络可承载的带宽,就可能造成:

Packet Loss → Latency 上升 → Connection Timeout → 服务无法正常访问

因此,Volumetric Attack 最核心的特征就是:利用「流量规模」消耗网络容量。但反过来说,带宽没有被打满,并不代表没有遭受 DDoS;因为下一类攻击,瞄准的是完全不同的资源。

第二类:Protocol Attack,不一定塞满带宽,也能让服务失效

Protocol Attack 针对的不是带宽本身,而是网络协议与连线资源。最典型的例子之一就是 SYN Flood。

正常 TCP 连线需要完成三次握手:

  1. Client 发送 SYN
  2. Server 回应 SYN-ACK
  3. Client 回传 ACK,Connection Established

但在 SYN Flood 中,攻击者会大量发送 SYN Request,却不正常完成后续连线。

Server 必须暂时保留这些尚未完成的 Connection State。当大量半开连线持续累积,就可能消耗 Server、Firewall、Load Balancer 或其他中间设备的连线资源,使正常用户无法建立新的 Connection。

因此,这类攻击不能只看 BPS。PPS(Packets Per Second)、Concurrent Connections、SYN Rate 等指标,往往更具有判断价值。

简单来说:Volumetric Attack 关注的是「有多少流量」,Protocol Attack 则更需要观察「系统正在处理多少封包与连线」。

第三类:Application Layer / L7,流量不一定大,成本却可能很高

到了 Layer 7,DDoS 攻击开始变得更加复杂,因为攻击者发送的不一定是异常封包,而可能是一个完全符合 HTTP Protocol 的 Request。例如:

GET /product/123
POST /login
GET /api/search

从 Network Layer 看,这些都可能是正常的 TCP / HTTPS Traffic。

真正的问题是:服务器为了处理这个 Request,需要付出多少成本?

例如,一次 Login Request 背后可能需要:

验证账号 → Database Query → Token Verification → 建立 Session → 回传结果

一次 Search API 可能涉及 Database Query、Search Index 或其他 Backend Computation。

若大量 Request 持续集中在这些高成本 Endpoint,即使总 Bandwidth 没有明显增加,仍可能造成 CPU、Database Connection、Application Thread 或 API Resource 被大量占用。

这也是 Application Layer DDoS 最麻烦的地方:攻击流量可能看起来和正常用户几乎一样。

CC Attack 是什么?为什么它属于 L7?

CC Attack(Challenge Collapsar)通常用来描述透过大量 HTTP Request,持续消耗 Web Server 或 Application Resource 的应用层攻击。

它和传统大流量 DDoS 最大的差别在于:Volumetric Attack 主要消耗网络容量;CC Attack 更接近消耗服务处理能力。

例如攻击者可能持续请求:

  • /login
  • /search
  • /api/query
  • /product
  • Dynamic Page
  • Uncached Content

假设一次 /login Request 本身只有几 KB,对 Bandwidth 的影响可能很小。但如果每一次 Request 都需要 Database Query、Authentication 或其他 Application Logic,大量请求持续累积后,真正被消耗的就是后端资源。

因此,一个网站即使拥有充足带宽,也不代表一定能承受大量 CC / L7 Request。这也是为什么判断 CC Attack 时,RPS(Requests Per Second)通常比单纯观察 BPS 更有意义。

BPS、PPS、RPS:遇到攻击到底该看什么?

很多 DDoS 防护问题的第一步,其实不是立刻封 IP,而是先判断:到底是哪一层资源正在出现异常?

观察到的现象优先检查可能的攻击方向
Bandwidth 突然暴增BPSVolumetric Attack
Packet 数量异常增加PPSL3/L4 Attack
SYN / Connection 大量增加Connection / SYN RateProtocol Attack
HTTP Request 突然暴增RPSHTTP Flood / CC
Login / Search / API 异常集中URI / API EndpointL7 / API Abuse
大量不同 IP 呈现相似行为Fingerprint / Session / BehaviorAutomated Bot

简单来说:

  • BPS 告诉你网络承受多少流量
  • PPS 告诉你网络正在处理多少封包
  • RPS 则开始告诉你应用正在承受多少请求

到了 L7,单靠其中任何一项指标,都可能无法完整判断攻击。

为什么 CC / L7 比传统 DDoS 更难辨识?

假设现在有三个 Request:

  • 正常用户:GET /product/123
  • 普通 Crawler:GET /product/123
  • 恶意 Bot:GET /product/123

从单一 HTTP Request 来看,它们可能没有明显差异。因此到了 L7,防护系统不能只问「这个 IP 是不是黑名单」,还需要进一步观察:

  • Request Frequency 与 Request Interval
  • URI / API Endpoint
  • IP / ASN Distribution
  • User-Agent、TLS / Device Fingerprint
  • Cookie / Session、Navigation Pattern 与 Historical Behavior

例如,一个 Client 每隔完全相同的时间请求商品页,或大量不同 IP 呈现高度一致的 Request Sequence,都可能比单纯的 IP Reputation 更具有辨识价值。

而当 Automated Traffic 进一步结合 Distributed IP、不同的 User-Agent / Client 特征、不同的 Request Interval、不同的 API / Endpoint,甚至模拟一般浏览行为,单纯依靠 IP Blocklist 的辨识能力就会进一步下降。

到了 L7,分析方式开始从「这个 Request 从哪里来?」变为「这个 Client 正在做什么?」

需要注意的是,Bot 本身并不等于 DDoS。搜索引擎 Crawler、Monitoring Service 或其他合法自动化工具,同样可能属于 Automated Traffic。真正需要辨识的,是这些自动化行为是否正在造成大量异常 Request、Login Abuse、Scraping、API Abuse,或其他应用与业务风险。

L7 的难点,不只是辨识异常封包,而是辨识异常行为。

攻击越来越像正常流量,该怎么分辨与解决?

从 Volumetric、Protocol 到 L7,不同 DDoS 攻击瞄准的是不同资源:带宽 → 连线 → 应用处理能力。

因此,企业需要观察的也不再只有 BPS 与 PPS,而是进一步延伸到:RPS、API Endpoint、Session、Fingerprint 与 Behavior。当攻击进入 L7,恶意 Request 甚至可能与正常用户没有明显差异。

但这也带来下一个问题:既然不同攻击发生在不同 Layer,只靠一种防护方式真的足够吗?

下一篇〈从 L3/L4 到 L7:如何建立多层联防架构?〉,我们将从防护架构的角度,进一步解析 DDoS Protection、CC Defense 与 Bot Management 分别处理哪些层面的风险,以及 ByteShield 如何协助企业从 L3/L4 到 L7 建立多层联防。

常见问题

DDoS 攻击主要分成哪几类?

从网络层到应用层,常见 DDoS 攻击大致可分为三类:Volumetric Attack(流量型,消耗带宽)、Protocol / L3-L4 Attack(协议型,消耗 TCP 连线与网络资源)以及 Application / L7 Attack(应用层,消耗 Web Server、API 与 Database 资源)。到了应用层,Automated Bot Traffic 也可能与 HTTP Flood、CC Attack、API Abuse 等行为产生交集。

CC Attack 和传统大流量 DDoS 有什么不同?

Volumetric Attack 主要消耗网络容量;CC Attack 则透过大量 HTTP Request 持续请求 /login、/search、API 等高成本 Endpoint,消耗的是服务处理能力。单次请求可能只有几 KB,但每次都触发 Database Query 或身份验证,累积后会占满后端资源。

遇到攻击时应该看 BPS、PPS 还是 RPS?

BPS 反映网络承受多少流量,适合判断 Volumetric Attack;PPS 与 SYN Rate、Concurrent Connections 反映系统处理多少封包与连线,适合判断 Protocol Attack;RPS 反映应用承受多少请求,适合判断 HTTP Flood 与 CC Attack。到了 L7,还需要搭配 URI、Fingerprint、Session 与 Behavior 一起判断。

带宽没有被打满,是否代表没有遭受 DDoS?

不一定。Protocol Attack 可能以大量半开连线耗尽 Server、Firewall 或 Load Balancer 的连线资源;L7 攻击则可能以看似正常的 HTTP Request 集中消耗应用资源,两者都不一定会让带宽明显上升。

Bot 流量都是 DDoS 吗?

不是。搜索引擎 Crawler、Monitoring Service 等合法自动化工具同样属于 Automated Traffic。真正需要辨识的,是自动化行为是否正在造成大量异常 Request、Login Abuse、Scraping、API Abuse 或其他业务风险。

如果您的网站、APP 或 API 正在面对异常流量,欢迎了解 ByteShield 安全防护服务,或联系 ByteShield 团队,协助您判断攻击正在消耗哪一层资源。

延伸阅读

快,还要更安全

欢迎您透过 Telegram 联络我们,技术专员将即时为您服务

立即咨询