Web應用防火墻(Web Application Firewall,簡稱WAF)針對Bot管理模塊升級,提供防爬場景化配置功能。您可以基于實際業(yè)務場景對防爬規(guī)則進行場景化定制,更有針對性地對業(yè)務進行爬蟲風險防護。本文介紹如何配置瀏覽器訪問網(wǎng)頁場景的防爬場景化規(guī)則。

背景信息

防爬場景化配置功能支持基于不同業(yè)務場景定制防爬規(guī)則,結合智能算法,精準識別爬蟲流量,并對命中規(guī)則的爬蟲行為自動處置。同時,在定制場景化防爬規(guī)則后,您可以在測試環(huán)境中對防爬規(guī)則進行應用前的驗證,避免因規(guī)則配置不合理或防護兼容性問題,對您的網(wǎng)站或App業(yè)務產生誤攔截或防護效果低等不利影響。

前提條件

  • 如果是包年包月實例:已開通高級版、企業(yè)版、旗艦版的Bot管理增值服務。
  • 如果是按量計費實例:已在賬單與套餐中心,開啟Bot管理模塊下場景化配置功能。
    說明 使用按量計費WAF實例的防爬場景化配置功能時,阿里云將根據(jù)您已設置的場景個數(shù)來計費。相關內容,請參見計費說明
  • 已完成網(wǎng)站接入。具體操作,請參見使用教程

添加瀏覽器訪問網(wǎng)頁的防爬場景

  1. 登錄Web應用防火墻控制臺,在頂部菜單欄,選擇WAF實例的資源組和地域(中國內地非中國內地)。
  2. 在左側導航欄,選擇防護配置 > 網(wǎng)站防護
  3. 網(wǎng)站防護頁面上方,切換到要設置的域名。切換域名
  4. 如果您沒有創(chuàng)建過防爬場景化規(guī)劃,單擊Bot管理頁簽,在場景化配置模塊單擊點我開始,創(chuàng)建您的第一條防爬場景化規(guī)則。如果您已創(chuàng)建過防爬場景化規(guī)則,在Bot管理頁簽右上角單擊添加,創(chuàng)建更多的防爬場景化規(guī)則。
    說明 每個域名最多可添加50場景化配置規(guī)則。
  5. 防護場景定義配置向導頁面,設置防爬保護目標的基礎信息,并單擊下一步
    配置項說明
    防護業(yè)務場景填寫該防爬規(guī)則防護的業(yè)務場景類型。常見場景包括登錄、注冊、下單等。
    防護目標類型選擇網(wǎng)頁/瀏覽器,表示對瀏覽器訪問的網(wǎng)頁或H5頁面(包括App中使用的H5頁面)進行防護。

    如果網(wǎng)站用戶從另一個域名發(fā)起對當前防護目標的訪問請求,則需選擇防護目標有來自其它域名的跨域調用,并從下拉列表中選擇跨域訪問的來源域名。

    防護目標特征添加目標流量的HTTP請求字段及其規(guī)則,即訪問該防護目標時,HTTP請求報文中生成的有關該防護業(yè)務場景的字段內容。有關字段的詳細內容,請參見匹配條件字段說明。最多可以添加5個條件。
    重要 輸入IP地址后需要按回車。
  6. 防護規(guī)則推薦向導頁面,設置防爬場景規(guī)則的詳細內容,并單擊下一步
    配置項說明
    簡單腳本過濾開啟此開關后,對訪問防爬防護目標的客戶端進行JS校驗,對不支持JS校驗的來自非瀏覽器類工具的流量進行過濾,阻斷簡單腳本類攻擊。
    動態(tài)令牌挑戰(zhàn)默認未開啟。開啟此開關后,對每一次請求數(shù)據(jù)進行簽名驗證,不能通過驗簽的請求將被攔截。您可以選擇簽名驗證異常(該項為必選,指未攜帶簽名或者簽名非法)、簽名時間戳異常WebDriver攻擊,開啟動態(tài)令牌挑戰(zhàn)。
    AI智能防護開啟此開關后,防爬規(guī)則會通過AI智能防護引擎對訪問流量進行分析和自動學習,生成有針對性的防護規(guī)則或黑名單。您可根據(jù)需要將AI智能防護生成的規(guī)則設置為觀察模式滑塊校驗模式。設置為觀察模式,防爬規(guī)則會放行命中流量并將流量記錄在安全報表中;設置為滑塊校驗模式,客戶端需完成滑塊校驗后才能繼續(xù)訪問防護目標。
    爬蟲威脅情報庫匹配通過與阿里云威脅情報庫匹配,準確識別出阿里云上對多個用戶有多次惡意爬取行為的攻擊源IP地址,來自這些攻擊源IP地址的訪問請求將需要完成滑塊校驗,才能繼續(xù)訪問防護目標。
    IDC黑名單封禁封禁來自阿里云和其他主流云廠商IDC黑名單庫的IP地址,阻止這些黑名單地址對防護目標發(fā)起訪問請求。
    IP限速設置訪問頻率限制條件,有針對性地過濾訪問頻率過高的爬蟲請求,有效緩解CC攻擊。

    您可以自定義IP限速條件來規(guī)定在指定時長內,來自同一IP地址的訪問次數(shù)超過指定閾值時,對來自該IP的訪問請求執(zhí)行阻斷、滑塊校驗或觀察的處置動作,并規(guī)定處置動作的生效時長。最多可以設置3個條件。相關內容,請參見設置自定義防護策略

    自定義會話限速開啟后即可自定義訪問頻率限制條件,有針對性地過濾訪問頻率過高的爬蟲請求,有效緩解CC攻擊。

    您可以自定義會話限速條件來規(guī)定在指定時長內,來自同一會話的訪問次數(shù)超過指定閾值時,對該會話執(zhí)行阻斷、滑塊校驗或觀察的處置動作,并規(guī)定處置動作的生效時長。相關內容,請參見設置自定義防護策略

  7. 防護動作驗證向導頁面,測試防爬防護規(guī)則。
    建議您先完成防護動作驗證,再發(fā)布策略,避免出現(xiàn)因規(guī)則配置錯誤、兼容性等問題引發(fā)誤攔截。如果您確認規(guī)則配置無誤,也可以單擊左下角跳過,直接創(chuàng)建
    驗證步驟如下:
    1. 填寫公網(wǎng)測試IP:填寫您測試設備(PC或手機)的公網(wǎng)IP。防爬規(guī)則驗證測試僅針對該公網(wǎng)IP生效,不會對您的業(yè)務產生影響。
      重要 請不要填寫通過ipconfig查詢的IP地址(即內網(wǎng)IP地址)。如果不確定您設備的公網(wǎng)IP,可以通過在線IP查詢工具查詢。
    2. 選擇動作進行測試:將對防護規(guī)則推薦中配置策略所涉及到的防護動作(可選JS校驗防護效果驗證動態(tài)令牌驗證滑塊驗證攔截驗證)生成一條只針對您測試IP生效的測試規(guī)則,驗證防護動作的執(zhí)行結果。

      在測試動作模塊上單擊去測試后,WAF會將防護策略即刻下發(fā)到測試設備,同時為您展示測試效果演示圖和說明,建議您仔細閱讀。

      完成測試后,單擊已完成測試進入下一步;如果測試結果異常,可以單擊返回去再準備一下,優(yōu)化防爬規(guī)則后重新測試。

  8. 策略預覽和發(fā)布頁面,確認策略的內容,單擊發(fā)布
    策略發(fā)布后即刻生效。
    說明 首次創(chuàng)建場景時不會展示規(guī)則ID,正式發(fā)布防爬場景化規(guī)則后,您可以在安全報表頁面的Bot管理頁簽下方,查看規(guī)則ID信息。規(guī)則ID可用于日志服務中檢索特定規(guī)則的命中情況。

防爬策略測試常見問題

若在防護動作驗證時出現(xiàn)異常情況,可參考表格解決對應問題。

報錯原因解決方法
未查詢到任何有效測試請求,您可以查看幫助文檔或咨詢我們以分析可能的原因。實際測試請求沒有發(fā)送成功,或者沒有發(fā)送到WAF。確認測試請求已經(jīng)成功發(fā)送到WAF解析的地址。
實際測試請求的字段內容與防爬規(guī)則中定義的防護目標特征不一致。在防爬策略中修改防護目標特征的內容。
實際測試請求的源IP與配置策略中填寫的公網(wǎng)測試IP不一致。請確保您使用的是正確的公網(wǎng)IP,建議直接使用診斷工具查詢您的公網(wǎng)IP地址。
請求未通過校驗,您可以查看幫助文檔或咨詢我們以分析可能的原因。沒有模擬真實用戶訪問,例如使用了調試模式、自動化工具等。測試時使用客戶端真實模擬用戶訪問。
防護場景選擇錯誤,例如實際需要配置App防爬場景規(guī)則,但錯選為網(wǎng)頁/瀏覽器在防爬場景化規(guī)則中修改防護場景類型。
訪問請求存在跨域的情況,但在防爬場景化規(guī)則中未正確配置。修改防爬場景化規(guī)則,選中防護目標有來自其它域名的跨域調用并從下拉列表中選擇跨域訪問的來源域名。
前端兼容性問題。請?zhí)峤?span id="z68uejxpaoma" class="ph" data-tag="ph" id="ph-v25-udh-9d3">工單,聯(lián)系我們。
請求未觸發(fā)校驗,您可以查看幫助文檔或咨詢我們以分析可能的原因。測試規(guī)則沒有下發(fā)完畢。建議您多測試幾次,等待防爬測試規(guī)則下發(fā)完成。
未攔截且查詢到任何有效測試請求,您可以查看幫助文檔或咨詢我們以分析可能的原因。實際測試請求沒有發(fā)送成功,或者沒有發(fā)送到WAF。確認測試請求已經(jīng)成功發(fā)送到WAF解析的地址。
實際測試請求的字段內容與防爬規(guī)則中定義的防護目標特征不一致。在防爬策略中修改防護目標特征的內容。
實際測試請求的源IP與配置策略中填寫的公網(wǎng)測試IP不一致。請確保您使用的是正確的公網(wǎng)IP,建議直接使用診斷工具查詢您的公網(wǎng)IP地址。

后續(xù)步驟

前往安全報表中的Bot管理頁簽,查看防護效果和規(guī)則命中的詳細內容,并且根據(jù)防護效果,優(yōu)化防爬場景化策略。