當網站、H5頁面,或App內嵌H5頁面業務面臨惡意爬蟲、自動化指令碼攻擊、黃牛搶購等威脅時,可以建立Bot-Web防護模板,防禦網頁爬蟲,確保業務安全。
操作步驟
登入Web Application Firewall3.0控制台。在頂部功能表列,選擇WAF執行個體的資源群組和地區(中國內地、非中國內地)。在左側導覽列,選擇,在頁簽,單擊新建模板。
步驟一:防護情境定義
填寫一個便於識別的模板名稱與模板介紹。
選擇防護目標特徵,支援全局生效與定制匹配条件兩種類型。
全局生效:適用於僅存在網頁/H5環境的情境。
定制匹配条件:適用於除網頁/H5環境外,還存在APP/小程式環境,或希望針對特定的業務介面(如登入、秒殺等)進行防護的情境。
全局生效
配置防護目標為全域生效,無需輸入資料流量特徵。
定制匹配条件
配置防護目標為定製匹配條件,依據輸入特徵進行匹配。通過單擊新增條件添加一個條件。每個條件由匹配欄位、邏輯符和匹配內容組成。配置樣本如下:
說明若規則包含多個條件,則請求必須滿足所有條件(邏輯與關係),才能命中該規則。關於匹配欄位和邏輯符的詳細說明,請參見匹配條件說明。
匹配欄位
邏輯符
匹配內容
說明
URI Path
包含
/login.php當請求的路徑包含
/login.php時,則請求命中該規則。IP
屬於
192.1.XX.XX當用戶端IP為
192.1.XX.XX時,則請求命中該規則。
勾選是否排除静态文件,靜態檔案請求通常不涉及商務邏輯,且其內容本身不易被用於注入攻擊,排除靜態檔案可減少檢測負載,使WAF專註於保護動態介面。建議選擇預設的靜態檔案類型,也可自訂添加類型。
步驟二:編輯模板規則
在人机校验地區,可單擊編輯配置如下人機校正規則。
選擇驗證模式,支援JS驗證或令牌挑戰兩種類型。
JS驗證:適用於低強度日常防護情境。
令牌挑戰:適用於高強度對抗情境,建議在重點防護時段(如大促活動開始前數分鐘)啟用。
JS驗證
規則引發後,WAF將返回JS代碼,正常瀏覽器用戶端將執行JS代碼擷取通行證並重發請求,而惡意流量由於未攜帶通行證從而被攔截,認證通過的用戶端在一段時間(預設30分鐘)內,其所有請求將被直接允許存取,無需重複校正。
令牌挑戰
規則引發後,WAF將返回JS代碼,正常瀏覽器用戶端將執行JS代碼進行請求加簽並重發請求,而惡意請求由於無簽名資訊從而被攔截。可選項:
簽章時間戳異常:指簽章時間戳異常時,請求將被攔截。
WebDriver攻擊:指遭遇WebDriver攻擊時,請求將被攔截。
在規則灰階地區,配置規則針對不同維度對象的生效比例。開啟規則灰階後,還需要設定維度和灰階比例。維度包括:IP、自訂Header、自訂參數、自訂Cookie、Session、网页端UMID。
說明規則灰階根據配置的維度生效,而非對請求按比例隨機生效規則。例如,當維度為IP且灰階比例為10%時,WAF將選擇約10%的IP地址;被選中的IP地址,其所有請求均應用該規則,而非對所有請求按10%的比例隨機應用。
在生效模式地區,選擇規則的生效時間。
永久生效(預設):防護模板開啟時,規則永久生效。
按時間段生效:防護規則僅在指定的一段時間內生效。
按周期生效:防護規則僅在指定的時間周期內生效。
在风险识别地區,可以單擊建立,建立風險識別規則。基於WAF內建的手機號信譽資料庫,實現針對黃牛等異常手機號的訪問阻斷,適用於手機號登入註冊類情境。
重要風險識別屬於收費功能。具體計費規則如下:
計費條件:僅在完成規則配置且實際流量命中時產生費用,其他情況不計費。
計費單價:0.007美元/次。
結算方式:採用後付費模式,按天產生賬單。
帳號提取:單擊新增帳號配置帳號類型和帳號位置。最多添加五個條件,條件之間為或關係。
配置樣本:若登入請求採用 GET 方法,且請求參數格式為
username=158***&password=***,請按以下方式進行配置:帳號位置:選擇 Query參數。
參數名稱:填寫 username。
配置完成後,WAF 即可準確提取該請求中的手機號資訊,用於後續的安全匹配與檢測。
風險標籤:單擊新增标签進行配置,最多添加五個條件,條件之間為或關係。
疑似小號:疑似第三方平台提供手機號,非個人使用者。
詐騙風險:疑似歷史上存在欺詐行為。
垃圾註冊:疑似使用非法工具進行使用者註冊,用於後續的營銷活動等。
營銷作弊:疑似使用非法工具參與營銷活動,如大量註冊領取優惠券等。
黃牛帳號:疑似使用非法工具參與搶票或其他秒殺類活動。
風險等級預設均為高風險,支援配置高風險、中高風險、中風險,可根據業務需求自由選擇。
處置動作:
配置項
說明
觀察
不攔截命中規則的請求,僅通過日誌記錄請求命中的情況。在試運行規則時,可以先通過觀察模式分析WAF日誌,以確認未產生誤攔截,再將其調整為其他規則動作。
JS驗證(App防護不支援)
WAF向用戶端返回一段JavaScript驗證代碼,標準瀏覽器將自動執行該代碼。若用戶端正常執行完成,則WAF在一段時間(預設30分鐘)內允許存取該用戶端的所有請求,否則攔截請求。
滑塊
WAF向用戶端返回滑動驗證頁面。若用戶端成功完成滑動驗證,則WAF在一段時間(預設30分鐘)內允許存取該用戶端的所有請求,否則攔截請求。
嚴格滑塊
WAF向用戶端返回滑動驗證頁面。若用戶端成功完成滑動驗證,則允許存取該請求;否則攔截請求。在此模式下,用戶端每次命中該規則的請求均需進行滑動驗證。
攔截
攔截命中規則的請求,並向發起請求的用戶端返回攔截響應頁面。
說明WAF預設使用統一的攔截響應頁面,也可以通過自訂響應功能,自訂攔截響應頁面。
回源標記
表示客戶可以自訂Header名稱及內容(規則類型、規則ID、網頁端UMID),WAF不會直接處理,而是會通過新增Header的方式將命中資訊返回給來源站點,客戶可以與後端風控系統結合做業務側處理。
在策略配置地區,系統基於阿里雲經驗沉澱的常見 Bot 特徵庫,將規則劃分為恶意BOT、疑似BOT和友好BOT三類。針對目標規則,您可以執行以下操作:
啟用/禁用:單擊狀態列的
表徵圖,開啟或關閉規則。修改規則:單擊編輯按鈕,對規則進行自訂調整。
修改分類:對於恶意BOT與疑似BOT規則,若實際分類不符合業務需求,可以在Bot类型列中對其分類進行修改。
重要誤殺風險提示:以下部分規則存在誤殺(誤攔截)風險,不當的配置可能導致正常請求被攔截。建議在正式啟用規則前,先將處置動作設定為觀察,或結合規則灰階,優先在非生產環境進行測試,並根據實際業務特徵進行調優後再上線。
CC類規則統計說明:所有CC計數類規則(如IP访问路径较少)在設定的統計時間長度內,一旦達到閾值即刻處置,不會等到統計時間長度結束。統計對象進入黑名單之後,若統計對象的請求繼續觸發規則,系統將持續計數並重新整理其黑名單逾時時間。
配置建議
异常浏览器探针
規則名稱
誤殺風險說明
開發人員工具、模擬器工具
低風險
瀏覽器環境異常
低風險
自動化工具、無頭瀏覽器
低風險
系統內容異常
低風險,對於部分使用 XP 作業系統的使用者存在風險
時間戳記異常
中風險,對於開啟網頁超過 2 小時未重新整理,並直接提交的請求,可能存在誤殺
WebSDK版本異常
低風險,對於手工整合 WebSDK 的老版本使用者可能存在風險
设备伪造
規則名稱
誤殺風險說明
裝置硬體資訊偽造、瀏覽器屬性偽造、作業系統與環境偽造
低風險
採集資訊偽造、網路與地理位置偽造
低風險,WAF前置七層代理(如CDN、高防)但未啟用代理配置,可能出現源IP識別不準導致的誤殺
爬虫客户端
規則名稱
誤殺風險說明
Python工具流量
低風險
爬蟲工具流量
低風險
操作行为异常
規則名稱
誤殺風險說明
所有規則
中風險,可能誤殺滑鼠靈敏度過低的使用者
脚本客户端
規則名稱
誤殺風險說明
所有規則
低風險,需要根據業務情況判斷,例如Native APP 環境不能開啟Okhttp工具流量規則;使用flutter構建業務關聯時,不能開啟Dart工具流量規則
IDC机房
規則名稱
誤殺風險說明
所有規則
中風險,對於支付回調介面,阿里雲無影訪問,WAF前置七層代理但未啟用代理配置情境,可能誤殺
威胁情报
規則名稱
誤殺風險說明
偽造搜尋引擎蜘蛛
低風險
爬蟲威脅情報IP庫、爬蟲威脅情報指紋庫
中風險,對於公用出口網路(如小區寬頻、公司)或WAF前置七層代理但未啟用代理配置情境,可能出現源IP識別錯誤導致誤殺,建議將處置動作設為滑塊或JS校正
AI智能防护
規則名稱
誤殺風險說明
路徑序列異常、裝置異常、惡意團夥行為、資源分布異常、時序異常
中風險,對於公用出口網路(如小區寬頻、公司)或WAF前置七層代理但未啟用代理配置情境,可能出現源IP識別錯誤導致誤殺,建議將處置動作設為滑塊或JS校正
會話異常
高風險,對於公用出口網路(如小區寬頻、公司)或WAF前置七層代理但未啟用代理配置情境,可能出現源IP識別錯誤導致誤殺,建議將處置動作設為滑塊或JS校正
访问行为异常
規則名稱
誤殺風險說明
持久性無採集資訊訪問、持久性無Session訪問
低風險,必須整合 WebSDK,否則不攜帶採集資訊
互動軌跡批量重放
低風險
同一Session關聯IP頻繁變化、同一裝置關聯IP頻繁變化
低風險
IP訪問路徑較少、IP訪問路徑較多、用戶端種類頻繁變化、同一IP關聯UA頻繁變化
中風險,對於公用出口網路(如小區寬頻、公司)或WAF前置七層代理但未啟用代理配置情境,可能出現源IP識別錯誤導致誤殺,建議將處置動作設為滑塊或JS校正
搜索引擎爬虫客户端
規則名稱
誤殺風險說明
所有規則
建議保持預設配置,允許存取請求
編輯規則處置動作
配置項
說明
JS驗證
WAF向用戶端返回一段JavaScript驗證代碼,標準瀏覽器將自動執行該代碼。若用戶端正常執行完成,則WAF在一段時間(預設30分鐘)內允許存取該用戶端的所有請求,否則攔截請求。
攔截
攔截命中規則的請求,並向發起請求的用戶端返回攔截響應頁面。
說明WAF預設使用統一的攔截響應頁面,也可以通過自訂響應功能,自訂攔截響應頁面。
觀察
不攔截命中規則的請求,僅通過日誌記錄請求命中的情況。在試運行規則時,可以先通過觀察模式分析WAF日誌,以確認未產生誤攔截,再將其調整為其他規則動作。
滑塊
WAF向用戶端返回滑動驗證頁面。若用戶端成功完成滑動驗證,則WAF在一段時間(預設30分鐘)內允許存取該用戶端的所有請求,否則攔截請求。
嚴格滑塊
WAF向用戶端返回滑動驗證頁面。若用戶端成功完成滑動驗證,則允許存取該請求;否則攔截請求。在此模式下,用戶端每次命中該規則的請求均需進行滑動驗證。
回源標記
表示客戶可以自訂Header名稱及內容(規則類型、規則ID、網頁端UMID),WAF不會直接處理,而是會通過新增Header的方式將命中資訊返回給來源站點,客戶可以與後端風控系統結合做業務側處理。
說明啟用JS驗證或滑塊後,用戶端通過驗證時,WAF將在回應標頭中通過Set-Cookie 設定名為
acw_sc__v2(JS驗證)或acw_sc__v3(滑塊驗證)的 Cookie。用戶端在後續請求中會在 Cookie 頭中攜帶該標識。
步驟三:選擇生效範圍
在生效對象地區,選中需要應用的防護對象或防護對象組,單擊
表徵圖,將該防護對象或防護對象組移入已选择地區內,單擊確定。
步驟四:Web SDK整合
登入Web Application Firewall3.0控制台。在頂部功能表列,選擇WAF執行個體的資源群組和地區(中國內地、非中國內地)。在左側導覽列,選擇,進入頁簽。
阿里雲提供基於 JavaScript 的 Web SDK,用於增強瀏覽器環境下的防護能力並解決相容性問題。系統支援以下兩種整合模式:
自動整合:一鍵開啟,無需修改業務代碼。
手動整合:適用於 FC、SAE 等不支援自動注入的情境,需手動設定代碼。
自動整合狀態:大多數防護對象在完成上一步配置後已預設開啟自動整合,無需執行本步驟操作。
特殊情境要求:
若防護目標涉及跨域網域名稱,必須在WebSDK集成列表頁開啟對應網域名稱的自動整合開關,或採用手動整合方式。
FC、SAE 接入的防護對象不支援自動注入 Web SDK,必須使用手動整合方式。
功能依賴性:Bot 防護能力依賴 SDK 採集的資料。未整合 SDK 將導致防護能力缺失,強烈建議完成整合。
自動整合
在WebSDK集成列表頁簽中,查看已自動整合的防護對象。可在此頁面關閉整合或調整灰階比例。
開啟自動整合後,系統將在防護對象的 HTML 頁面中自動注入 SDK。該 SDK 主要用於採集瀏覽器環境資訊、黑產工具探針資料及使用者操作行為日誌(不包含個人敏感資訊),以增強防護能力。
同時,系統會在 HTTP 響應報文的 Header 中植入
ssxmod_itna、ssxmod_itna2、ssxmod_itna3等 Cookie,用於擷取用戶端瀏覽器指紋。採集的指紋資訊包括 HTTP 報文 Host 欄位、瀏覽器視窗高度與寬度等特徵資料。
手動整合
在WebSDK集成列表頁簽中,然後單擊說明中的擷取SDK連結。請將擷取到的<script>節點置於頁面上其他所有<script>節點之前以保證最先載入。
日常營運
編輯模板
單擊目標模板操作列的編輯,在編輯模板面板中對模板進行編輯。
刪除模板
單擊目標模板操作列的刪除,在刪除對話方塊中確認刪除資訊後單擊確認。
複製模板
單擊目標模板操作列的複製,在複製對話方塊中確認複製資訊後單擊確認。
開啟或關閉模板
建立的模板預設開啟,單擊目標模板模板開關列的
開關,可開啟或關閉該模板。查看規則
單擊目標模板的
表徵圖,查看該模板的規則資訊,單擊目標規則狀態列的
開關,可開啟或關閉對應規則。針對已啟用的規則,可查看其命中趨勢。若規則動作類型為JS驗證、滑塊或嚴格滑塊,還可查看人機校正通過率。
應用於生產環境
為避免影響正常業務,請勿在生產環境直接建立並啟用模板。建議遵循以下流程進行部署。
配置白名單:在建立模板前,建議建立白名單規則,將可信IP加入白名單,防止可信請求被新規則誤攔截。
灰階測試:模板建立完成後,可以使用以下三種方式,在部署到生產環境前進行觀察測試。
將規則應用於非生產環境進行測試。
將處置動作設定為觀察。
開啟規則灰階。
應用至生產環境:確認誤判率在可接受範圍內後,將處置動作調整為目標動作,並應用於生產環境。
持續監控與最佳化:持續關注安全報表與日誌,根據業務變化和實際防護效果,動態調整和最佳化規則。
配額與限制
策略配置中的异常浏览器探针、设备伪造、操作行为异常、AI智能防护、访问行为异常類規則必須整合Web SDK,否則無法正常使用。
策略配置中的爬虫客户端、脚本客户端、AI智能防护、访问行为异常類規則不支援FC、SAE接入的防護對象。
FC、SAE接入的防護對象不支援自動整合WebSDK,需要選擇手動整合方式。
常見問題
隨用隨付版WAF如何關閉Bot管理?
對於隨用隨付版WAF,若不需要使用Bot管理模組,請刪除所有Bot管理Web/App防護模板,刪除完成後Bot管理功能將不再計費。
WAF 2.0的Alibaba Antifraud Service功能如何遷移至WAF 3.0使用?
WAF 已停止維護舊版Alibaba Antifraud Service功能,建議直接使用 Bot 管理模組進行替代。WAF 2.0 的Alibaba Antifraud Service規則無法直接複用或自動遷移至 WAF 3.0,需在 WAF 3.0 控制台重新設定。具體配置步驟請參見本文。