App防護專門針對原生App端,提供可信通訊、防機器指令碼濫刷等安全防護,可以有效識別代理、模擬器、非法簽名的請求。本文介紹了在應用端整合App防護SDK後,如何在Web Application Firewall控制台設定App防護的防護路徑和版本防護功能,以及如何開啟App防護。
前提條件
- 已開通Web Application Firewall執行個體,且執行個體開啟了App防護模組。
- 已在App中整合Web Application Firewall的App防護SDK。更多資訊,請參見概述。
操作步驟
在頂部功能表列,選擇Web Application Firewall執行個體的資源群組和地區(中國內地、非中國內地)。
在左側導覽列,選擇 。
在網站防護頁面上方,切換到要設定的網域名稱。
- 單擊Bot管理頁簽,定位到App防護,單擊前去配置。說明 App防護開啟後,所有業務請求預設都會經過App防護規則的檢測。您可以通過設定Bot管理白名單,讓滿足條件的請求忽略App防護規則的檢測。更多資訊,請參見設定Bot管理白名單。
- 設定路徑防護規則。
- 在App防護頁面,定位到路徑防護地區,單擊建立規則。
- 在建立規則對話方塊,完成以下規則配置。說明 建議您在測試階段設定全路徑防護(Path設定為
/
,匹配方式選擇首碼匹配),並將處置動作設定為觀察(如果是測試網域名稱,可以設定為阻斷)。這樣可以在不影響線上業務的前提下進行調試。參數 說明 規則名稱 為規則命名。 防護路徑配置 設定要防護的路徑資訊,包含以下參數: - Path :要防護的路徑地址。使用正斜杠(/)表示全路徑。 說明 POST請求的body長度超過8 KB的情況下,可能會造成驗簽失敗。如果該類型介面沒有防護必要(如上傳大圖片等),建議不要經過SDK防護;如確實有防護必要,請使用自訂加簽欄位。
- 匹配方式 :支援首碼匹配、精確匹配和正則匹配。
首碼匹配會匹配指定路徑下的所有介面,精確匹配只匹配指定路徑,正則匹配支援以Regex的方式描述指定路徑。
- 參數包含:要防護的路徑下包含固定參數時,指定要匹配的參數內容,更準確地定位介面。參數內容指請求地址中問號後面的內容。
樣本:假設要防護的URL包括
網域名稱/?action=login&name=test
。您可以將Path設定為“/”,匹配方式設定為“首碼匹配”,並在參數包含中填寫“name”、“login”、“name=test”、“action=login”。防護策略 選擇要應用的防護策略: - 非法簽名:預設選中(不支援取消),驗證對指定路徑的請求的簽名是否正確。簽名不正確則命中規則。
- 模擬器:選中後,檢測使用者是否使用模擬器對指定路徑發起請求。使用模擬器則命中規則。
- 代理:選中後,檢測使用者是否使用代理工具對指定路徑發起請求。使用代理工具則命中規則。
處置動作 選擇對命中防護策略的使用者請求執行的操作: - 觀察: 只記錄日誌,不阻斷請求。
- 阻斷: 阻斷請求,返回405狀態代碼。
重要 未整合SDK或未調試完成前,請不要為生產環境中的網域名稱開啟阻斷模式,否則可能會因為SDK沒有正確整合導致合法請求被攔截。在測試接入階段,可以開啟觀察模式,通過日誌調試SDK整合。自訂加簽欄位 啟用自訂加簽欄位後,系統將根據所設定的需要加簽的請求欄位和對應的欄位值進行加簽驗證,判斷是否命中該防護策略。 系統預設情況對請求的body加簽,如果body長度超過8 KB則可能導致驗簽失敗。這種情況下,您可以啟用自訂加簽欄位,使用您指定的請求欄位來取代系統預設的加簽欄位。
啟用自訂加簽欄位後,您可以選擇請求Header、參數或Cookie類型,然後填寫需要加簽的欄位即可。例如,您可以選擇cookie,填寫“DG_ZUID”,請求Cookie中的DG_ZUID欄位將取代系統預設的body欄位作為加簽欄位。
- Path :要防護的路徑地址。使用正斜杠(/)表示全路徑。
- 單擊確定。
- 開啟版本防護。通過配置版本防護可以攔截來自非官方App的請求。如果您需要驗證App合法性,可通過配置該策略實現。說明 如果不需要進行App合法性驗證,則可不配置版本防護策略。
- 在App防護頁面,定位到版本防護,開啟僅允許指定版本通過開關。
- 在建立規則對話方塊,完成以下規則配置。
參數 說明 規則名稱 為規則命名。 合法版本 設定合法版本資訊: - 指定合法包名:指定合法的App包名稱。例如,com.aliyundemo.example。
- 包簽名:請聯絡阿里雲相關安全技術人員擷取。如果無需驗證對應的App包簽名,則包簽名項為空白即可,將只驗證所設定的合法App包名稱。 重要 包簽名不是App認證簽名。
單擊新增合法版本可以添加最多5條版本記錄,包名稱不允許重複。iOS和Android包都支援,合法的記錄都可以填寫進去以匹配多個包名。
非法版本的處置操作 - 觀察:只記錄日誌,不阻斷請求。
- 阻斷:阻斷請求,返回405狀態代碼。
- 單擊確定。
- 開啟App防護。回到App防護地區,開啟狀態開關。說明 建議您通過調試確定已在App中正確整合SDK並發布新版App後,再開啟App防護,使防護配置生效。