Azure Front Door 上的 Azure Web 應用程式防火牆

適用於: ✔️ Front Door 標準/高階版 ✔️ Front Door(傳統版) ✔️ 微軟的 CDN 標準版(傳統版)

Azure Front Door 上的 Azure Web 應用程式防火牆可為 Web 應用程式提供集中式保護。 Web 應用程式防火牆 (WAF) 會協助 Web 服務對抗常見的攻擊和弱點。 讓您的服務對使用者高度可用,並協助您符合合規性需求。

Azure Front Door 上的 Azure Web 應用程式防火牆是一個全域性的集中式解決方案。 其部署於全球各地的 Azure 網路邊緣位置。 已啟用 WAF 的 Web 應用程式會檢查網路邊緣的 Azure Front Door 所提供的每個傳入要求。

WAF 可防止惡意攻擊接近攻擊來源,不讓其進入虛擬網路。 您可以大規模獲得全域保護,而不會犧牲效能。 WAF 原則可輕鬆連結至您訂用帳戶中的任何 Azure Front Door 設定檔。 您可以在幾分鐘內部署新的規則,以便快速回應不斷變化的威脅模式。

顯示 Azure Web Application 防火牆的截圖。

注意

對於網頁工作負載,我們強烈建議您使用 Azure DDoS 防護 及 網頁應用防火牆 ,以防範新興的 DDoS 攻擊。 另一個選擇是搭配 Azure Front Door 搭配網頁應用程式防火牆。 Azure Front Door 提供平台 層級防護 ,防範網路層級的 DDoS 攻擊。 欲了解更多資訊,請參閱 Azure 服務的安全基準。

Azure Front Door 有兩個階層:

  • 標準
  • 進階

Azure Web 應用程式防火牆可與 Azure Front Door 進階原生整合,具有完整功能。 Azure Front Door 標準僅支援自訂規則。

保護

Azure 網頁應用程式防火牆保護您的:

  • 不需修改後端程式碼就能保護 Web 應用程式不受 Web 弱點和攻擊的威脅。
  • 使用 IP 信譽規則集防止 Web 應用程式遭受惡意 Bot 的威脅。
  • 抵禦 DDoS 攻擊的方案。 如需詳細資訊,請參閱應用程式 DDoS 保護。

WAF 原則和規則

您可以設定 WAF 原則,並將該原則與一或多個 Azure Front Door 網域建立關聯,以進行保護。 WAF 原則包含兩種類型的安全性規則:

  • 自訂規則,由你自己創造。
  • 受控規則集,一組由 Azure 管理且預先設定的規則集合。

當兩者都存在時,在處理受控規則集中的規則之前,會先處理自訂規則。 規則是由匹配條件、優先順序和操作所組成。 支援的行動類型包括 允許、 封鎖、 日誌、 重定向,以及異常 分數 (適用於預設規則集 2.0 或更新版本)。 您可以結合受控和自訂規則,建立完全自訂的原則,以符合特定應用程式保護需求。

Important

HTTP DDoS 規則集是此處理順序的例外。 它在自訂規則之前就被評估,而用 允許 動作設定的自訂規則不會繞過它。 欲了解更多資訊,請參閱 HTTP DDoS 規則集。

原則內的規則會依優先順序進行處理。 優先順序是一個唯一的整數,定義要處理的規則順序。 較小的整數值表示較高的優先順序,並且這些規則會在整數值較高的規則之前進行評估。 規則匹配後,規則中定義的相應動作會套用到請求上。 當此類比對完成處理後,優先順序較低的規則就不會再進行處理。

Azure Front Door 所傳送的 Web 應用程式只能有一個 WAF 原則與其相關聯。 不過,您也可以建立 Azure Front Door 組態,但不關聯任何 WAF 原則。 若有 WAF 政策,會將其複製至所有 Microsoft 的邊緣地點,以確保全球安全政策一致。

原則附加範圍

使用 Azure Front Door,你可以在多個範圍內附加 WAF 政策,以平衡廣泛的防護與針對性的控制:

  • 設定檔層級政策:在 Azure Front Door 設定檔中套用共享的基線政策。
  • 網域層級政策:將政策設定套用到設定檔中的特定網域。
  • 路由層級政策:將最具體的政策套用於選定路由。

你可以根據部署需求使用單一範圍,或合併多個範圍。

原則優先順序

當請求同時適用多個政策範圍時,Azure Front Door WAF 會使用最具體的範圍:

  1. 路由層級政策
  2. 網域層級政策
  3. 設定檔層級政策

例如,如果請求同時符合設定檔層級的政策與路由層級的政策,Azure Front Door WAF 會套用該請求的路由層級政策。

Tip

先從設定檔層級的基線政策開始,然後只在需要不同保護的地方套用網域層級或路由層級的政策。

WAF 模式

您可以設定 WAF 原則,以下列兩種模式執行:

  • 偵測:當 WAF 以偵測模式執行時,只會監視並記錄要求及其相符 WAF 規則至 WAF 記錄。 不會採取任何其他動作。 您可以為 Azure Front Door 開啟日誌診斷。 當您使用入口網站時,請移至 [診斷] 區段。
  • 預防:在預防模式中,如果要求符合規則,WAF 便會採取指定動作。 如果找到相符項目,則不會進一步評估優先順序較低的規則。 任何相符的要求也會記錄在 WAF 記錄中。

WAF 動作

當要求符合規則的條件時,WAF 客戶可以選擇執行其中一個動作:

  • 允許:請求可通過 WAF,並轉送至來源。 沒有更低的優先順序規則可以封鎖此要求。
  • 封鎖:要求會遭到封鎖,而 WAF 會將回應傳送至用戶端,但不會將要求轉送至來源。
  • Log:要求會記錄在 WAF 記錄中,而 WAF 會繼續評估優先順序較低的規則。
  • 重新導向:WAF 會將要求重新導向至指定的 URI。 指定 URI 是原則層級的設定。 設定之後,所有符合重新導向動作的要求都會傳送至該 URI。
  • 異常分數:符合具有此動作的規則時,總異常分數會遞增。 此預設動作適用於預設規則集 2.0 或更新版本。 不適用於 Bot 管理員規則集。

WAF 規則

WAF 原則可以包含兩種安全性規則:

  • 自訂規則,由你撰寫,並管理規則集
  • 由 Azure 管理且預先設定好的一組規則

自訂撰寫的規則

若要設定 WAF 的自訂規則,請使用下列控制項:

  • IP 允許清單與封鎖清單:根據用戶端 IP 位址或 IP 範圍來控制對網頁應用程式的存取。 支援 IPv4 和 IPv6 位址類型。 設定此清單,當來源 IP 與清單中的 IP 相符時,請選擇阻擋或允許請求。
  • 基於地理的存取控制:根據與客戶 IP 位址相關的國家代碼,控制對你網頁應用程式的存取。
  • 基於 HTTP 參數的存取控制:基於 HTTP/HTTPS 請求參數中的字串匹配規則。 範例包括查詢字串、POST 參數、請求 URI、請求標頭和請求本文。
  • 基於請求方法的存取控制:基於請求的 HTTP 請求方式制定規則。 範例包括 GET、PUT 或 HEAD。
  • 大小限制:根據請求中特定部分的長度來制定規則,例如查詢字串、Uri 或請求主體。
  • 速率限制規則:速率限制規則會限制來自任何用戶端 IP 位址的異常高流量。 您可以設定用戶端 IP 在一分鐘內允許的 Web 要求數目閾值。 此規則與 IP 清單型的允許/封鎖自訂規則不同,該規則可允許或封鎖所有來自用戶端 IP 的要求。 速率限制可以與其他比對條件結合,例如用於進行細微速率控制的 HTTP(S) 參數比對。

Azure 受控規則集

Azure 管理的規則集可讓您以簡單的方式部署防護,以抵禦一組常見的安全性威脅。 由於 Azure 管理這些規則集,它會根據需要更新規則,以防止新的攻擊特徵碼。 Azure 受控預設規則集包含可防範下列威脅類別的規則:

  • 跨網站腳本
  • Java 攻擊
  • 本機檔案包含
  • PHP 插入式攻擊
  • 遠端命令執行
  • 遠端檔案包含
  • 工作階段 Fixation
  • SQL 注入保護
  • 通訊協定攻擊

在評估預設規則集中的規則之前,總是會套用自訂規則。 如果要求符合自訂規則,則會套用對應的規則動作。 要求會遭到封鎖,或是傳遞至後端。 系統不會處理任何其他的自訂規則或預設規則集內的規則。 您也可以從 WAF 政策中移除 Default Rule Set(預設規則集)。

如需詳細資訊,請參閱 Web 應用程式防火牆預設規則集規則群組與規則。

Bot 保護規則集

啟用受管理的機器人防護規則集,對所有機器人類別的請求採取自訂行動。

規則集支援三個機器人類別: 壞、 好和 未知。 WAF 平台會管理及動態更新 Bot 簽章。

  • 錯誤:錯誤的 Bot 是具有惡意 IP 位址的 Bot,以及偽造其身分識別的 Bot。 惡意機器人包含來自 Microsoft 威脅情報摘要中高信賴度 IP 入侵指標與 IP 信譽摘要的惡意 IP 位址。 不良機器人也包括自我識別為良性機器人的機器人,但其 IP 位址不屬於合法的機器人發佈者。
  • 好:好的機器人是值得信賴的使用者代理。 良好的 Bot 規則會分類為多個類別,以提供對 WAF 原則設定的細微控制。 這些類別包括已驗證的搜尋引擎 Bot(例如 Googlebot 和 Bingbot)、已驗證的連結檢查程式 Bot、已驗證的社交媒體 Bot(例如 Facebookbot 和 LinkedInBot)、已驗證的廣告 Bot、已驗證的內容檢查程式 Bot,以及已驗證的其他 Bot。
  • 未知:未知的 Bot 是使用者代理程式,不需要額外的驗證。 未知機器人同樣包括來自 Microsoft 威脅情報摘要中,中等信心度 IP 入侵指標之惡意 IP 位址。

WAF 平台會管理及動態更新 Bot 簽章。 您可以設定自訂動作來封鎖、允許、記錄或重新導向不同類型的 Bot。

截圖顯示機器人防護規則集。

如果已啟用 Bot 保護,則會根據設定的動作封鎖、允許或記錄符合 Bot 規則的連入要求。 惡意的 Bot 會被封鎖,友好的 Bot 會被允許,未知的 Bot 預設會被記錄。 您可以為不同類型的 Bot 設定自訂動作來封鎖、允許、記錄或 JS 挑戰。 您可以從儲存體帳戶、事件中樞、記錄分析來存取 WAF 記錄,或將記錄傳送至合作夥伴解決方案。

Azure Front Door Premium 版本提供 Bot Manager 1.1 規則集。

如需詳細資訊,請參閱 Azure WAF 的 Bot Manager 1.1 和 JavaScript 挑戰:流覽 Bot 威脅地形。

組態

您可以使用 Azure 入口網站、REST API、Azure Resource Manager 範本和 Azure PowerShell 來設定和部署所有 WAF 原則。 您也可以使用防火牆管理員整合大規模設定和管理 Azure WAF 原則。 如需詳細資訊,請參閱使用 Azure 防火牆管理員來管理 Azure Web 應用程式防火牆原則。

監視

Azure Front Door 上的 WAF 監視會與 Azure 監視器整合,以追蹤警示並輕鬆監視流量趨勢。 如需詳細資訊,請參閱 Azure Web 應用程式防火牆監視和記錄。