本文介紹了常見的CC攻擊情境,並結合阿里雲Web Application Firewall(Web Application Firewall,簡稱WAF)的相關功能給出具體的防護策略和配置,協助您有針對性地防禦CC攻擊。
概述
大流量高頻CC攻擊
在大規模CC攻擊中,單台傀儡機發包的速率往往遠超過正常使用者的請求頻率。針對這種情境,直接對請求源設定限速規則是最有效辦法。推薦您使用WAF自訂防護策略功能的頻率設定,配置限速策略,具體操作,請參見設定自訂防護策略。
/login.php
),並設定60秒內超過20次請求則進行封鎖。- 處置動作中的滑塊和嚴格滑塊驗證用於校正請求是否來自於真實瀏覽器(而非自動化工具指令碼),適用範圍僅限於網頁或H5,不適用於原生App、API等環境。針對原生App、API等環境,請將處置動作設定為阻斷。
- 針對有可能被CC攻擊防護策略誤傷的介面或IP,您可以通過存取控制/限流白名單功能將其統一加白。具體操作,請參見設定存取控制/限流白名單。
- 請勿對App、API環境開啟CC安全防護的防護-緊急模式。
uid=12345
)進行統計,並使用滑塊作為處置動作,避免誤攔截。攻擊源來自海外或公用雲端
CC攻擊中經常出現很大比例的攻擊來源于海外IP、公用雲端IP、IDC機房IP的情形。
請求特徵畸形或不合理
- user-agent異常或畸形:例如,包含Python等自動化工具特徵、明顯格式錯亂的UA(例如
Mozilla///
)、明顯不合理的UA(例如www.example.com
)。如果存在以上請求特徵,可以直接封鎖請求。 - user-agent不合理:例如,對於微信推廣的H5頁面,正常使用者都應該通過微信發起訪問,如果UA來自於Windows案頭瀏覽器(例如MSIE 6.0),則明顯是不合理的。如果存在以上請求特徵,可以直接封鎖請求。
- referer異常:例如,不帶referer或referer固定且來自於非法網站,則可以封鎖這種請求(訪問網站首頁或第一次訪問頁面的情形除外)。針對只能通過某個站內地址跳轉訪問的URL,您可以從referer角度分析行為異常,決定是否封鎖。
- cookie異常:正常使用者往往會在請求中帶上屬於網站本身業務集的一些cookie(第一次訪問頁面的情形除外)。很多情況下,CC攻擊的報文不會攜帶任何cookie。您可以從這個角度出發,封鎖不帶cookie的訪問請求。
- 缺少某些HTTP header:例如,針對一些業務中需要的認證頭等,正常使用者的請求會攜帶,而攻擊報文則不會。
- 不正確的要求方法:例如,本來只有POST請求的介面被大量GET請求攻擊,則可以直接封鎖GET請求。
對於上述異常的請求特徵,您都可以在特徵分析的基礎上,使用WAF自訂防護策略的ACL存取控制規則設定對應的封鎖策略。具體操作,請參見設定自訂防護策略。
- 攔截不帶cookie的請求。
- 攔截不帶authorization頭的請求。
濫刷介面(登入、註冊、簡訊、投票等)
對於網頁環境(包括H5)中的一些關鍵介面,例如登入、註冊、投票、簡訊驗證碼等,推薦您使用Alibaba Antifraud Service功能進行防護。
Alibaba Antifraud Service在關鍵介面頁面中插入JS代碼,採集使用者在頁面上的操作行為和環境資訊,綜合判斷髮送至關鍵介面的請求是否來自於真實的使用者(而不是自動化工具指令碼)。Alibaba Antifraud Service判定的依據主要來自於人機識別的結果,跟發送請求的頻率、來源IP沒有關係,針對一些低頻、分散的攻擊請求有很好的效果。
具體操作,請參見設定Alibaba Antifraud Service。
惡意掃描
- 高頻Web攻擊封鎖:自動封鎖連續觸發Web防護規則的用戶端IP。
- 目錄遍曆防護:自動封鎖在短時間內進行多次目錄遍曆攻擊的用戶端IP。
- 掃描工具封鎖:自動封鎖來自常見掃描工具或阿里雲惡意掃描攻擊IP庫中IP的訪問請求。
- 協同防禦:自動阻斷阿里雲全球惡意掃描攻擊IP庫中IP的訪問請求。
具體操作,請參見設定掃描防護。
App攻擊
針對App攻擊,除上述頻率設定、地區級IP黑名單、ACL存取控制等手段,您也可以接入Apsara Stack SecuritySDK進行防護。
SDK方案通過將SDK整合到App中,對請求進行安全簽名和校正,並結合各種硬體資訊,綜合識別請求是否來自於合法的App。只要不是來自於官方App的合法請求,一概攔截。這是一種“白名單”思路,只允許存取合法的請求,而不用去分析非法請求的特徵。
SDK防護需要開啟App防護模組後才可以使用。具體操作,請參見設定App防護。
惡意爬取
對於很多資訊類網站(例如徵信、租房、機票、小說等),大量的爬蟲往往會造成頻寬增大、負載飆升等異常,以及資料泄露等問題。針對爬蟲問題,如果上述手段不能起到很好的防禦效果,推薦您開啟並使用Bot管理模組,更有針對性地防禦爬蟲。具體操作,請參見設定Bot管理白名單。