如果你的網站「流量看起來不大,但就是打不開」,而且監控圖表平平無奇、防火牆日誌裡全是看似正常的 HTTP 請求——那你很可能遇到了 CC 攻擊。這類攻擊最陰險的地方在於:它不會觸發你引以為傲的「頻寬告警」,卻能讓業務在不知不覺中停擺。

CC(Challenge Collapsar)攻擊是 DDoS 家族中最「狡猾」的一類:它不需要 Tbps 的頻寬,用幾百台傀儡機、幾千個連接,就能把一個沒有針對性防護的網站打到癱瘓。我們曾處理過一個案例:目標站點峰值流量僅 8 Mbps,但 CPU 長期 100%、資料庫連接池被吃光,線上交易全掛——運維一開始還以為是「程式有 bug」。

CC 攻擊的原理

CC 攻擊的命名來自早期一款名為「挑戰黑洞」的攻擊工具。它的核心思路非常簡單粗暴,卻極其有效:

持續請求網站上最耗費伺服器資源的頁面。

例如:

  • 需要查詢資料庫的搜尋接口
  • 需要複雜計算的報表頁
  • 需要讀取大檔案的下载接口
  • 需要頻繁寫入的提交 / 下單接口

攻擊者用大量代理 IP(包括住宅代理、殭屍網絡)同時、反覆請求這些頁面。每個請求本身都「看起來合法」,但伺服器的 CPU、資料庫連接池、後端服務會被迅速吃光。關鍵在於:一個搜尋請求可能觸發 200 次資料庫查詢,攻擊者只要每秒發 100 個這樣的請求,後端就面臨每秒 2 萬次查詢——這遠超正常業務的承載,且頻寬佔用卻微不足道。

關鍵點:CC 攻擊打的是資源消耗,不是頻寬消耗。這就是為什麼單純加頻寬、買高防 IP 對 CC 攻擊幾乎無效——你加了 10 Gbps 頻寬,攻擊者只用了 8 Mbps 就把你打掛。

CC 攻擊與傳統 DDoS 的區別

對比項容量型 DDoSCC 攻擊
攻擊層級L3 / L4(網絡層、傳輸層)L7(應用層)
流量規模動輒數百 Gbps 至 Tbps可能只有幾 Mbps
請求特徵明顯異常的畸形包與正常用戶請求幾乎一樣
目標資源頻寬、連接表CPU、記憶體、資料庫、後端服務
防護手段頻寬清洗、速率限制行為分析、人機驗證、精準限流
識別難度相對容易非常困難(需行為基線)

一句話總結:容量型 DDoS 是「用洪水淹你」,CC 攻擊是「派間諜把你家的水和電用光」。後者更難察覺,也更難防——因為你很難區分「間諜」和「真的來你家作客的客人」。

為什麼 CC 攻擊特別難防

三個原因,且彼此放大:

  1. 流量小到不觸發警報。很多監控系統的告警閾值是按頻寬設定的(例如「超過 500 Mbps 才告警」),CC 攻擊的頻寬佔用可能連正常業務高峰都不到,於是它「安靜地」把你的 CPU 打滿,等你發現時已經宕機。
  2. 請求本身是合法的。攻擊者請求的是你真實存在的頁面,參數也合法,看不出破綻;傳統 WAF 的靜態規則對此基本失明。
  3. 攻擊來源分散且會偽裝。攻擊者使用大量真實住宅代理 IP、甚至模擬真實瀏覽器的 User-Agent、Cookie 與 TLS 指紋,簡單的黑名單(IP 封鎖)完全失效——等你封完一批,對方已經換了下一批。

四層防禦策略

第一層:資源隔離

先讓攻擊「打不到要害」:

  • 把耗費資源的接口(搜尋、報表、匯出)與核心業務接口分離部署,避免一處被壓垮拖垮全站
  • 對這些接口加快取,相同查詢直接回傳快取結果,不落到資料庫——這一招能抵消掉大部分 CC 的殺傷力
  • 設定單 IP 併發連接上限與請求速率上限,把攻擊成本抬高

第二層:精準限流與速率基線

不要用統一的限流規則(例如「全站每秒 100 請求」),那會誤殺正常用戶。正確的做法是:

  • 針對每個接口建立正常流量基線(QPS、回應時間、請求特徵分佈)
  • 偵測到偏離基線時自動降級(排隊、回傳快取、要求驗證),而不是一刀切封 IP
  • 對登入、提交、下單等敏感接口單獨設定更嚴格的策略,並結合帳號 / 設備指紋而非只看 IP

第三層:人機驗證

對於必須保護的高價值接口,加入驗證機制:

  • JS 挑戰(要求客戶端執行一段計算,住宅代理 IP 池難以通過)
  • 行為指紋識別(滑鼠軌跡、點擊節奏、瀏覽器指紋、TLS 握手特徵)
  • 必要時接入 CAPTCHA

平衡點:驗證會影響用戶體驗,建議只在攻擊期間或高風險接口上啟用,而不是全站常開。我們的實踐是「動態觸發」——基線正常時零干擾,異常時才彈驗證,把對真實用戶的影響壓到最低。

第四層:專業清洗與專家介入

CC 攻擊往往需要即時調整策略才能壓制——攻擊者會觀察你的防禦規則並不斷變換手法(這一分鐘用搜尋接口,下一分鐘改用下單接口,甚至混入正常流量稀釋特徵)。這正是專業防護服務的價值所在:

AwayDDoS 的深度清洗層對應用層行為做持續建模,攻擊期間由 7×24 安全專家主動介入調優規則,而不是等你的工單。詳見 防護方案。

常見誤區

「我加了 CDN 就不怕 CC 了。」——CDN 能緩解一部分靜態資源壓力,但 CDN 的快取策略通常會放行動態請求(也就是 CC 攻擊最愛打的那些搜尋 / 下單 / 登入接口)。更糟的是,若源站 IP 隨 CDN 配置洩露,攻擊者能繞過 CDN 直打。真正需要的是應用層的深度行為分析。

總結

CC 攻擊的可怕之處在於成本極低、識別極難、殺傷極準。防禦它的核心不是買更大的頻寬,而是建立從資源隔離、精準限流,到人機驗證、專家介入的縱深體系——而且這套體系最好平時就在跑(持續建立基線),而不是被打當天才臨時搭,否則你連「正常長什麼樣」都來不及學。

如果你的網站正出現「流量不大但持續打不開」的狀況,歡迎 立即聯絡我們 做免費的攻擊特徵分析。想先了解基礎概念,可讀 什麼是 DDoS 攻擊?完整防護入門。