共用方式為


Web 應用程式防火牆 DRS 和 CRS 規則群組和規則

應用程式閘道 Web 應用程式防火牆 (WAF) 中的 Azure 受控預設規則集 (DRS) 會主動保護 Web 應用程式免於常見的弱點和惡意探索。 這些規則集由 Azure 管理,會視需要接收更新,以防範新的攻擊簽章。 默認規則集也會納入 Microsoft 威脅情報收集規則。 Microsoft Intelligence 小組會共同撰寫這些規則、確保增強涵蓋範圍、特定弱點修補程式,以及改善誤判降低。

您也可以選擇使用以 OWASP 核心規則集 3.2 (CRS 3.2) 為基礎的規則。

您可以個別停用規則,或為每個規則設定特定動作。 本文列出可用的目前規則和規則集。 如果已發佈的規則集需要更新,我們會在這裡記載。

注意

當您在 WAF 原則中變更規則集版本時,您對規則集所做的任何現有自定義都會重設為新規則集的預設值。 請參閱: 升級或變更規則集版本

默認規則集 2.1

默認規則集 (DRS) 2.1 會根據 Open Web Application Security Project (OWASP) 核心規則集 (CRS) 3.3.2 進行基準,並包含由 Microsoft Threat Intelligence 小組開發的額外專屬保護規則,以及簽章更新以減少誤判。 其也支援不僅僅是 URL 解碼的轉換。

DRS 2.1 提供新引擎和新的規則集,以防禦 Java 注入,包括一組初始的檔案上傳檢查項目,而且相較於 CRS 版本,誤判更少。 您也可以自訂規則以符合您的需求。 深入了解新的 Azure WAF 引擎

DRS 2.1 包含 17 個規則群組,如下表所示。 每個群組都包含多個規則,您可以自訂個別規則、規則群組或整個規則集的行為。

威脅類型 規則組名
一般 一般
鎖定方法 (PUT、PATCH) 方法-執行
通訊協議和編碼問題 協議執行
標頭插入、請求走私和回應分割 通訊協議攻擊
檔案和路徑攻擊 LFI
遠端檔案包含攻擊(RFI) 射頻干擾
遠端程式代碼執行攻擊 RCE
PHP 注入攻擊 PHP
Node JS 攻擊 NodeJS
Cross site scripting attacks (跨網站指令碼攻擊) XSS
SQL 插入式攻擊 SQLI
會話修正攻擊 SESSION-FIXATION
JAVA 攻擊 SESSION-JAVA
Web 殼攻擊 (MS) MS-ThreatIntel-WebShells
AppSec 攻擊 (MS) MS-ThreatIntel-AppSec
SQL 注入攻擊(MS) MS-ThreatIntel-SQLI
CVE 攻擊 (MS) MS-ThreatIntel-CVEs

DRS 2.1 的微調指引

當您開始使用應用程式閘道 WAF 上的 DRS 2.1 時,請使用下列指引來微調 WAF:

規則識別碼 規則群組 描述 建議
942110 SQLI SQL插入式攻擊:偵測到常見的插入測試 停用規則 942110,由 MSTIC 規則取代99031001
942150 SQLI SQL 插入式攻擊 停用規則 942150,由 MSTIC 規則取代99031003
942260 SQLI 偵測到基本 SQL 驗證略過嘗試 2/3 停用規則 942260,由 MSTIC 規則取代99031004
942430 SQLI 受限制的 SQL 字元異常偵測 (args):超出的特殊字元數目 (12) 停用規則 942430,它會觸發太多誤判
942440 SQLI 偵測到 SQL 註解順序 停用規則 942440,由 MSTIC 規則取代99031002
99005006 MS-ThreatIntel-WebShells Spring4Shell 互動嘗試 讓規則保持啟用以防止 SpringShell 弱點
99001014 MS-ThreatIntel-CVEs 嘗試 Spring Cloud routing-expression 插入 CVE-2022-22963 讓規則保持啟用以防止 SpringShell 弱點
99001015 MS-ThreatIntel-WebShells 嘗試使用 Spring Framework 不安全類別物件惡意探索 CVE-2022-22965 讓規則保持啟用以防止 SpringShell 弱點
99001016 MS-ThreatIntel-WebShells 嘗試 Spring Cloud 閘道傳動器插入 CVE-2022-22947 讓規則保持啟用以防止 SpringShell 弱點
99001017 MS-ThreatIntel-CVEs 嘗試 Apache Struts 檔案上傳惡意探索 CVE-2023-50164 將動作設定為 [封鎖] 以防止 Apache Struts 弱點。 此規則不支持異常分數

核心規則集 3.2

建議的受控規則集是預設規則集 2.1,這是根據 Open Web Application Security Project (OWASP) 核心規則集 (CRS) 3.3.2 進行基準,並包含由 Microsoft Threat Intelligence 小組開發的其他專屬保護規則,以及簽章更新以減少誤判。 作為 DRS 2.1 的替代方案,您可以使用以 OWASP CRS 3.2.0 版本為基礎的 CRS 3.2。

CRS 3.2 包括 14 個規則群組,如下表所示。 每個群組包含多個規則 (可加以停用)。

注意

CRS 3.2 僅適用於 WAF_v2 SKU。 由於 CRS 3.2 會在新的 Azure WAF 引擎上執行,因此您無法降級為 CRS 3.1 或更早版本。 如果您需要降級,請連絡 Azure 支援

規則群組名稱 威脅類型
一般 一般
新的和已知的 CVE 漏洞 KNOWN-CVES
鎖定方法 (PUT、PATCH) REQUEST-911-METHOD-ENFORCEMENT
網路埠與環境掃描器 REQUEST-913-SCANNER-DETECTION
通訊協議和編碼問題 請求-920-協議執行
標頭插入、請求走私和回應分割 REQUEST-921-協定攻擊
檔案和路徑攻擊 REQUEST-930-APPLICATION-ATTACK-LFI
遠端檔案包含攻擊(RFI) REQUEST-931-APPLICATION-ATTACK-RFI
遠端程式代碼執行攻擊 REQUEST-932-APPLICATION-ATTACK-RCE
PHP 注入攻擊 REQUEST-933-APPLICATION-ATTACK-PHP
Cross site scripting attacks (跨網站指令碼攻擊) REQUEST-941-應用程式攻擊-XSS
SQL 插入式攻擊 REQUEST-942-APPLICATION-ATTACK-SQLI
會話修正攻擊 REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION
JAVA 攻擊 REQUEST-944-APPLICATION-ATTACK-JAVA

微調受控規則集

在 WAF 原則的偵測模式中,預設會啟用 DRS 和 CRS。 您可以停用或啟用受控規則集內的個別規則,以符合您的應用程式需求。 您也可以根據每個規則設定特定動作。 DRS/CRS 可支援區塊、記錄和異常評分等動作。 Bot Manager 規則集支援允許、封鎖和記錄動作。

有時您可能需要在 WAF 評估中略過特定要求屬性。 常見範例是用於驗證的 Active Directory 插入式權杖。 您可以在評估特定 WAF 規則時設定要套用的排除項目,或全域套用所有 WAF 規則的評估。 排除項目規則會套用至整個 Web 應用程式。 如需詳細資訊,請參閱具有應用程式閘道排除清單的 Web 應用程式防火牆 (WAF)

根據預設,DRS 2.1 版/ CRS 3.2 版和更新版本會在要求符合規則時使用異常評分。 CRS 3.1 和以下版本預設會封鎖比對要求。 此外,如果您想要略過核心規則集中任何預先設定的規則,可以在相同的 WAF 原則中設定自訂規則。

在評估核心規則集內的規則之前,一律會套用自訂規則。 如果要求符合自訂規則,則會套用對應的規則動作。 要求會遭到封鎖,或是傳遞至後端。 系統不會處理任何其他的自訂規則,或核心規則集內的規則。

異常評分

當您使用 CRS 或 DRS 2.1 和更新版本時,WAF 預設會設定為使用異常評分。 符合任何規則的流量不會立即遭到封鎖,即使您的 WAF 處於預防模式也一樣。 相反地,OWASP 規則集會為每個規則定義嚴重性:重大、錯誤、警告或通知。 該嚴重性會影響要求的數值,此值稱為異常評分:

規則嚴重性 造成異常評分的值
重大 5
錯誤 4
警告 3
注意事項 2

如果異常分數為 5 或更高,且 WAF 處於預防模式,則會封鎖要求。 如果異常分數為 5 或更高,且 WAF 處於偵測模式,則會記錄要求,但不會封鎖要求。

例如,單一重大規則符合足以讓 WAF 封鎖要求,因為整體異常分數為 5。 但是符合警告規則只會將異常評分提高 3 分,其本身並不足以封鎖流量。 觸發異常規則時,它會在記錄中顯示「相符」動作。 如果異常分數為 5 或更高,則會根據 WAF 原則是處於預防模式還是偵測模式,觸發相應的規則並執行「封鎖」或「偵測」操作。 如需詳細資訊,請參閱異常評分模式

偏執狂等級

每個規則都被指派到特定的偏執等級(PL)。 Paranoia Level 1 (PL1) 中設定的規則較不咄咄逼人,而且幾乎不會觸發誤判。 它們提供基準安全性,僅需極少的微調。 PL2 中的規則能偵測到更多攻擊,但預期會觸發一些需要微調的誤判。

根據預設,DRS 2.1 和 CRS 3.2 規則版本在 Paranoia Level 2 中預先設定,包括 PL1 和 PL2 中指派的規則。 如果您想要以獨佔方式搭配 PL1 使用 WAF,您可以停用任何或所有 PL2 規則,或將其動作變更為 「記錄」。 Azure WAF 目前不支援 PL3 和 PL4。

注意

CRS 3.2 規則集包含 PL3 和 PL4 中的規則,但不論其設定的狀態或動作為何,這些規則一律為非使用中且無法啟用。

升級或變更規則集版本

如果您要升級或指派新的規則集版本,而且想要保留現有的規則覆寫和排除專案,建議您使用 PowerShell、CLI、REST API 或範本進行規則集版本變更。 新版的規則集可以有較新的規則、其他規則群組,而且可能會有現有簽章的更新,以強制執行更佳的安全性並減少誤判。 建議您驗證測試環境中的變更、視需要微調,然後在生產環境中部署。

注意

如果您使用 Azure 入口網站將新的受控規則集指派給 WAF 原則,則來自現有受控規則集的所有先前自定義,例如規則狀態、規則動作和規則層級排除,都會重設為新的受控規則集預設值。 不過,在新的規則集指派期間,任何自定義規則、原則設定和全域排除專案都不會受到影響。 在將系統部署到生產環境之前,您需要重新定義規則覆寫並驗證所有變更。

OWASP CRS 3.1

CRS 3.1 包括 14 個規則群組,如下表所示。 每個群組包含多個規則 (可加以停用)。 此規則集是基於 OWASP CRS 3.1.1 版本。

注意

CRS 3.1 僅適用於 WAF_v2 SKU。

規則群組名稱 描述
一般 一般群組
KNOWN-CVES 協助偵測新的和已知的 CVE
REQUEST-911-METHOD-ENFORCEMENT 鎖定方法 (PUT、PATCH)
REQUEST-913-SCANNER-DETECTION 防禦連接埠和環境掃描器
請求-920-協議執行 可防範通訊協定和編碼問題
REQUEST-921-協定攻擊 防止標頭插入、要求走私和回應分割
REQUEST-930-APPLICATION-ATTACK-LFI 防止檔案和路徑攻擊
REQUEST-931-APPLICATION-ATTACK-RFI 防止遠端檔案包含 (RFI) 攻擊
REQUEST-932-APPLICATION-ATTACK-RCE 防止遠端程式碼執行攻擊
REQUEST-933-APPLICATION-ATTACK-PHP 防止 PHP 插入式攻擊
REQUEST-941-應用程式攻擊-XSS 防止跨網站指令碼攻擊
REQUEST-942-APPLICATION-ATTACK-SQLI 防止 SQL 插入式攻擊
REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION 防止工作階段固定攻擊
REQUEST-944-APPLICATION-ATTACK-SESSION-JAVAN 防止 JAVA 攻擊

機器人管理器 1.0

Bot Manager 1.0 規則集可保護惡意 Bot,以及偵測良好的 Bot。 這些規則會將 Bot 流量分類為「良好」、「不良」或「未知」Bot,藉此對 WAF 偵測到的 Bot 提供細微的控制。

規則群組 描述
BadBots 防止有害 Bot
GoodBots 識別無害 Bot
UnknownBots 識別未知 Bot

機器人管理器 1.1

Bot Manager 1.1 規則集是 Bot Manager 1.0 規則集的增強功能。 它提供對惡意 Bot 的增強保護,並增加良好的 Bot 偵測。

規則群組 描述
BadBots 防止有害 Bot
GoodBots 識別無害 Bot
UnknownBots 識別未知 Bot

在應用程式閘道上使用 Web 應用程式防火牆時,可以使用下列規則群組和規則。

2.1 規則集

一般

規則識別碼 異常分數嚴重性 偏執狂等級 描述
200002 重大 - 5 PL1 無法剖析要求內文
200003 重大 - 5 PL1 multipart 要求本文失敗嚴格驗證

方法強制執行

規則識別碼 異常分數嚴重性 偏執狂等級 描述
911100 重大 - 5 PL1 原則不允許方法

PROTOCOL-ENFORCEMENT

規則識別碼 異常分數嚴重性 偏執狂等級 描述
920100 注意 - 2 PL1 無效的 HTTP 要求列
920120 重大 - 5 PL1 已嘗試 multipart/form-data 略過
920121 重大 - 5 PL2 已嘗試 multipart/form-data 略過
920160 重大 - 5 PL1 內容長度 HTTP 標頭不是數值
920170 重大 - 5 PL1 具有本文內容的 GET 或 HEAD 要求
920171 重大 - 5 PL1 具有 Transfer-Encoding 的 GET 或 HEAD 請求
920180 注意 - 2 PL1 POST 請求缺少 Content-Length 標頭
920181 警告 - 3 PL1 內容長度和 Transfer-Encoding 標頭會呈現 99001003
920190 警告 - 3 PL1 範圍:無效的最後一個字節值
920200 警告 - 3 PL2 範圍:太多欄位 (6 個或以上)
920201 警告 - 3 PL2 範圍:太多 PDF 要求的欄位 (6 個或以上)
920210 重大 - 5 PL1 找到多個/衝突的連接標頭數據
920220 警告 - 3 PL1 URL 編碼濫用攻擊嘗試
920230 警告 - 3 PL2 偵測到多個 URL 編碼
920240 警告 - 3 PL1 URL 編碼濫用攻擊嘗試
920260 警告 - 3 PL1 Unicode 全/半寬度濫用攻擊嘗試
920270 錯誤 - 4 PL1 要求 (null 字元) 中的字元無效
920271 重大 - 5 PL2 要求 (非可列印的字元) 中的字元無效
920280 警告 - 3 PL1 要求遺失主機標頭
920290 警告 - 3 PL1 空白的主機標頭
920300 注意 - 2 PL2 要求遺失 Accept 標頭
920310 注意 - 2 PL1 要求具有空白的 Accept 標頭
920311 注意 - 2 PL1 要求具有空白的 Accept 標頭
920320 注意 - 2 PL2 遺失使用者代理程式標頭
920330 注意 - 2 PL1 空白的使用者代理程式標頭
920340 注意 - 2 PL1 要求包含內容,但遺漏 Content-Type 標頭
920341 重大 - 5 PL1 要求包含內容,需要 Content-Type 標頭
920350 警告 - 3 PL1 主機標頭是數字的 IP 位址
920420 重大 - 5 PL1 原則不允許要求內容類型
920430 重大 - 5 PL1 原則不允許 HTTP 通訊協定版本
920440 重大 - 5 PL1 原則會限制 URL 的副檔名
920450 重大 - 5 PL1 原則會限制 HTTP 標頭
920470 重大 - 5 PL1 非法 Content-Type 標頭
920480 重大 - 5 PL1 原則不允許要求內容類型字元集
920500 重大 - 5 PL1 嘗試存取備份或工作檔案

PROTOCOL-ATTACK

規則識別碼 異常分數嚴重性 偏執狂等級 描述
921110 重大 - 5 PL1 HTTP 要求走私攻擊
921120 重大 - 5 PL1 HTTP 回應分割攻擊
921130 重大 - 5 PL1 HTTP 回應分割攻擊
921140 重大 - 5 PL1 透過標頭的 HTTP 標頭插入式攻擊
921150 重大 - 5 PL1 透過承載 (偵測到 CR/LF) 的 HTTP 標頭插入式攻擊
921151 重大 - 5 PL2 透過承載 (偵測到 CR/LF) 的 HTTP 標頭插入式攻擊
921160 重大 - 5 PL1 透過承載 (偵測到 CR/LF 和 header-name) 的 HTTP 標頭插入式攻擊
921190 重大 - 5 PL1 HTTP 分割 (偵測到要求檔案名稱中的 CR/LF)
921200 重大 - 5 PL1 LDAP 插入式攻擊

LFI - 本機檔案包含

規則識別碼 異常分數嚴重性 偏執狂等級 描述
930100 重大 - 5 PL1 路徑周遊攻擊 (/../)
930110 重大 - 5 PL1 路徑周遊攻擊 (/../)
930120 重大 - 5 PL1 作業系統檔案存取嘗試
930130 重大 - 5 PL1 受限制檔案存取嘗試

RFI - 遠端檔案包含

規則識別碼 異常分數嚴重性 偏執狂等級 描述
931100 重大 - 5 PL1 可能的遠端檔案包含 (RFI) 攻擊:使用 IP 位址的 URL 參數
931110 重大 - 5 PL1 可能的遠端檔案包含 (RFI) 攻擊:與 URL 承載搭配使用的一般 RFI 易受攻擊參數名稱
931120 重大 - 5 PL1 可能的遠端檔案包含 (RFI) 攻擊:與結尾問號字元 (?) 搭配使用 URL 承載
931130 重大 - 5 PL2 可能的遠端檔案包含 (RFI) 攻擊:關閉網域參考/連結

RCE - 遠端命令執行

規則識別碼 異常分數嚴重性 偏執狂等級 描述
932100 重大 - 5 PL1 遠端命令執行:Unix 命令插入
932105 重大 - 5 PL1 遠端命令執行:Unix 命令插入
932110 重大 - 5 PL1 遠端命令執行:Windows 命令插入
932115 重大 - 5 PL1 遠端命令執行:Windows 命令插入
932120 重大 - 5 PL1 遠端命令執行:找到 Windows PowerShell 命令
932130 重大 - 5 PL1 遠端命令執行:找到 UNIX Shell 運算式或 Confluence 弱點 (CVE-2022-26134)
932140 重大 - 5 PL1 遠端命令執行:找到 Windows FOR/IF 命令
932150 重大 - 5 PL1 遠端命令執行:直接 Unix 命令執行
932160 重大 - 5 PL1 遠端命令執行:找到 Unix 殼層程式碼
932170 重大 - 5 PL1 遠端命令執行:Shellshock (CVE-2014-6271)
932171 重大 - 5 PL1 遠端命令執行:Shellshock (CVE-2014-6271)
932180 重大 - 5 PL1 受限制檔案上傳嘗試

PHP 攻擊

規則識別碼 異常分數嚴重性 偏執狂等級 描述
933100 重大 - 5 PL1 PHP 插入式攻擊:找到開頭/結尾標記
933110 重大 - 5 PL1 PHP 插入式攻擊:找到 PHP 指令碼檔案上傳
933120 重大 - 5 PL1 PHP 插入式攻擊:找到設定指示詞
933130 重大 - 5 PL1 PHP 插入式攻擊:找到變數
933140 重大 - 5 PL1 PHP 插入式攻擊:找到 I/O 資料流
933150 重大 - 5 PL1 PHP 插入式攻擊:找到高風險 PHP 函式名稱
933151 重大 - 5 PL2 PHP 插入式攻擊:找到中度風險 PHP 函式名稱
933160 重大 - 5 PL1 PHP 插入式攻擊:找到高風險 PHP 函式呼叫
933170 重大 - 5 PL1 PHP 插入式攻擊:序列化物件插入
933180 重大 - 5 PL1 PHP 插入式攻擊:找到變數函式呼叫
933200 重大 - 5 PL1 PHP 插入式攻擊:偵測到包裝函式配置
933210 重大 - 5 PL1 PHP 插入式攻擊:找到變數函式呼叫

Node JS 攻擊

規則識別碼 異常分數嚴重性 偏執狂等級 描述
934100 重大 - 5 PL1 Node.js 插入式攻擊

XSS - 跨網站指令碼處理

規則識別碼 異常分數嚴重性 偏執狂等級 描述
941100 重大 - 5 PL1 透過 libinjection 偵測到的 XSS 攻擊
941101 重大 - 5 PL2 透過 libinjection 偵測到的 XSS 攻擊。
此規則會偵測具有 參考者 標頭的要求
941110 重大 - 5 PL1 XSS 篩選 - 類別 1:指令碼標記向量
941120 重大 - 5 PL1 XSS 篩選 - 類別 2:事件處理常式向量
941130 重大 - 5 PL1 XSS 篩選 - 類別 3:屬性向量
941140 重大 - 5 PL1 XSS 篩選 - 類別 4:JavaScript URI 向量
941150 重大 - 5 PL2 XSS 篩選 - 類別 5:不允許的 HTML 屬性
941160 重大 - 5 PL1 NoScript XSS InjectionChecker:HTML 插入
941170 重大 - 5 PL1 NoScript XSS InjectionChecker:屬性插入
941180 重大 - 5 PL1 節點驗證程式封鎖清單關鍵字
941190 重大 - 5 PL1 使用樣式表的 XSS
941200 重大 - 5 PL1 使用 VML 框架的 XSS
941210 重大 - 5 PL1 使用混淆處理 JavaScript 的 XSS
941220 重大 - 5 PL1 使用混淆處理 VB 指令碼的 XSS
941230 重大 - 5 PL1 使用 'embed' 標記的 XSS
941240 重大 - 5 PL1 使用 'import' 或 'implementation' 屬性的 XSS
941250 重大 - 5 PL1 IE XSS 篩選 - 偵測到攻擊
941260 重大 - 5 PL1 使用 'meta' 標記的 XSS
941270 重大 - 5 PL1 使用 'link' href 的 XSS
941280 重大 - 5 PL1 使用 'base' 標記的 XSS
941290 重大 - 5 PL1 使用 'applet' 標記的 XSS
941300 重大 - 5 PL1 使用 'object' 標記的 XSS
941310 重大 - 5 PL1 US-ASCII 格式不正確編碼 XSS 篩選器 - 偵測到攻擊
941320 重大 - 5 PL2 偵測到可能的 XSS 攻擊 - HTML 標記處理常式
941330 重大 - 5 PL2 IE XSS 篩選 - 偵測到攻擊
941340 重大 - 5 PL2 IE XSS 篩選 - 偵測到攻擊
941350 重大 - 5 PL1 UTF-7 編碼 IE XSS - 偵測到攻擊
941360 重大 - 5 PL1 偵測到 JavaScript 混淆處理
941370 重大 - 5 PL1 找到 JavaScript 全域變數
941380 重大 - 5 PL2 偵測到 AngularJS 用戶端範本插入

SQLI - SQL 插入

規則識別碼 異常分數嚴重性 偏執狂等級 描述
942100 重大 - 5 PL1 透過 libinjection 偵測到的 SQL 插入式攻擊
942110 警告 - 3 PL2 SQL插入式攻擊:偵測到常見的插入測試
942120 重大 - 5 PL2 SQL插入式攻擊:偵測到 SQL 運算子
942130 重大 - 5 PL2 SQL 插入式攻擊:偵測到 SQL 謬誤重複語句
942140 重大 - 5 PL1 SQL 插入式攻擊:偵測到常用的 DB 名稱
942150 重大 - 5 PL2 SQL 插入式攻擊
942160 重大 - 5 PL1 使用函數 sleep() 或基準測試 benchmark() 偵測盲目 SQL 注入測試
942170 重大 - 5 PL1 偵測到 SQL 基準測試與睡眠插入式嘗試包括條件式查詢
942180 重大 - 5 PL2 偵測到基本 SQL 驗證略過嘗試 1/3
942190 重大 - 5 PL1 偵測到 MSSQL 程式碼執行和資訊收集嘗試次數
942200 重大 - 5 PL2 偵測到 MySQL 註解/空間模糊化的插入和反引號終止
942210 重大 - 5 PL2 偵測到鏈結 SQL 插入嘗試 1/2
942220 重大 - 5 PL1 由 skipfish 尋找整數溢位攻擊,除了 3.0.00738585072007e-308 屬於「魔術數字」損毀
942230 重大 - 5 PL1 偵測到條件式 SQL 插入嘗試
942240 重大 - 5 PL1 偵測到 MySQL 字元集切換和 MSSQL DoS 嘗試
942250 重大 - 5 PL1 偵測到 MATCHST、MERGE 和 EXECUTE IMMEDIATE 插入
942260 重大 - 5 PL2 偵測到基本 SQL 驗證略過嘗試 2/3
942270 重大 - 5 PL1 尋找基本的 SQL 插入。 mysql、oracle 和其他項目的常見攻擊字串
942280 重大 - 5 PL1 偵測到 Postgres pg_sleep 插入、waitfor 延遲攻擊和資料庫關機嘗試
942290 重大 - 5 PL1 尋找基本 MongoDB SQL 插入嘗試
942300 重大 - 5 PL2 偵測到 MySQL 註解、條件和 ch(a)r 插入
942310 重大 - 5 PL2 偵測到鏈結 SQL 插入嘗試 2/2
942320 重大 - 5 PL1 偵測到 MySQL 與 PostgreSQL 預存程序/函式插入
942330 重大 - 5 PL2 偵測到傳統 SQL 插入探測 1/2
942340 重大 - 5 PL2 偵測到基本 SQL 驗證略過嘗試 3/3
942350 重大 - 5 PL1 偵測到 MySQL UDF 插入和其他資料/結構操作嘗試
942360 重大 - 5 PL1 偵測到連續的基本 SQL 插入和 SQLLFI 嘗試次數
942361 重大 - 5 PL2 偵測到以關鍵字變更或集合聯集為基礎的基本 SQL 插入
942370 重大 - 5 PL2 偵測到傳統 SQL 插入探測 2/2
942380 重大 - 5 PL2 SQL 插入式攻擊
942390 重大 - 5 PL2 SQL 插入式攻擊
942400 重大 - 5 PL2 SQL 插入式攻擊
942410 重大 - 5 PL2 SQL 插入式攻擊
942430 警告 - 3 PL2 受限制的 SQL 字元異常偵測 (args):超出的特殊字元數目 (12)
942440 重大 - 5 PL2 偵測到 SQL 註解順序
942450 重大 - 5 PL2 識別到 SQL 十六進位編碼
942470 重大 - 5 PL2 SQL 插入式攻擊
942480 重大 - 5 PL2 SQL 插入式攻擊
942500 重大 - 5 PL1 偵測到 MySQL 內嵌註釋
942510 重大 - 5 PL2 偵測到嘗試使用引號或倒引號來繞過 SQLi 的行為

SESSION-FIXATION

規則識別碼 異常分數嚴重性 偏執狂等級 描述
943100 重大 - 5 PL1 可能的工作階段固定攻擊:在 HTML 中設定 Cookie 值
943110 重大 - 5 PL1 可能的工作階段 Fixation 攻擊:具有關閉網域參考者的工作階段識別碼參數名稱
943120 重大 - 5 PL1 可能的工作階段 Fixation 攻擊:沒有參考者的工作階段識別碼參數名稱

JAVA 攻擊

規則識別碼 異常分數嚴重性 偏執狂等級 描述
944100 重大 - 5 PL1 遠端命令執行:Apache Struts、Oracle WebLogic
944110 重大 - 5 PL1 偵測到潛在的承載執行
944120 重大 - 5 PL1 可能的承載執行和遠端命令執行
944130 重大 - 5 PL1 可疑的 JAVA 類別
944200 重大 - 5 PL2 JAVA 還原序列化 Apache Commons 的惡意探索
944210 重大 - 5 PL2 可能使用 JAVA 序列化
944240 重大 - 5 PL2 遠端命令執行:JAVA 序列化和 Log4j 弱點 (CVE-2021-44228CVE-2021-45046)
944250 重大 - 5 PL2 遠端命令執行:偵測到可疑的 JAVA 方法

MS-ThreatIntel-WebShells

規則識別碼 異常分數嚴重性 偏執狂等級 描述
99005002 重大 - 5 PL2 網頁殼層互動嘗試 (POST)
99005003 重大 - 5 PL2 網頁殼層上傳嘗試 (POST) - CHOPPER PHP
99005004 重大 - 5 PL2 網頁殼層上傳嘗試 (POST) - CHOPPER ASPX
99005005 重大 - 5 PL2 網頁殼層互動嘗試
99005006 重大 - 5 PL2 Spring4Shell 互動嘗試

MS-ThreatIntel-AppSec

規則識別碼 異常分數嚴重性 偏執狂等級 描述
99030001 重大 - 5 PL2 標頭中的路徑周遊規避 (/.././../)
99030002 重大 - 5 PL2 要求本文中的路徑周遊規避 (/.././../)

MS-ThreatIntel-SQLI

規則識別碼 異常分數嚴重性 偏執狂等級 描述
99031001 警告 - 3 PL2 SQL插入式攻擊:偵測到常見的插入測試
99031002 重大 - 5 PL2 偵測到 SQL 註解順序
99031003 重大 - 5 PL2 SQL 插入式攻擊
99031004 重大 - 5 PL2 偵測到基本 SQL 驗證略過嘗試 2/3

MS-ThreatIntel-CVEs

規則識別碼 異常分數嚴重性 偏執狂等級 描述
99001001 重大 - 5 PL2 使用已知認證嘗試 F5 tmui (CVE-2020-5902) REST API 惡意探索
99001002 重大 - 5 PL2 嘗試 NSC_USER 目錄周遊 CVE-2019-19781
99001003 重大 - 5 PL2 嘗試使用 Atlassian Confluence 小工具連接器惡意探索 CVE-2019-3396
99001004 重大 - 5 PL2 嘗試使用 Pulse Secure 自訂範本惡意探索 CVE-2020-8243
99001005 重大 - 5 PL2 嘗試 SharePoint 類型轉換器惡意探索 CVE-2020-0932
99001006 重大 - 5 PL2 嘗試使用 Pulse Connect 目錄周遊 CVE-2019-11510
99001007 重大 - 5 PL2 嘗試使用 Junos OS J-Web 本機檔案包含 CVE-2020-1631
99001008 重大 - 5 PL2 嘗試 Fortinet 路徑周遊 CVE-2018-13379
99001009 重大 - 5 PL2 嘗試使用 Apache struts ognl 插入 CVE-2017-5638
99001010 重大 - 5 PL2 嘗試使用 Apache struts ognl 插入 CVE-2017-12611
99001011 重大 - 5 PL2 嘗試 Oracle WebLogic 路徑周遊 CVE-2020-14882
99001012 重大 - 5 PL2 嘗試 Telerik WebUI 不安全的還原序列化惡意探索 CVE-2019-18935
99001013 重大 - 5 PL2 嘗試 SharePoint 不安全的 XML 還原序列化 CVE-2019-0604
99001014 重大 - 5 PL2 嘗試 Spring Cloud routing-expression 插入 CVE-2022-22963
99001015 重大 - 5 PL2 嘗試使用 Spring Framework 不安全類別物件惡意探索 CVE-2022-22965
99001016 重大 - 5 PL2 嘗試 Spring Cloud 閘道傳動器插入 CVE-2022-22947
99001017* N/A N/A 嘗試 Apache Struts 檔案上傳惡意探索 CVE-2023-50164

* 此規則的動作預設會設定為記錄。將動作設定為 [封鎖] 以防止 Apache Struts 弱點。此規則不支持異常分數。

注意

檢閱 WAF 的記錄時,您可能會看到規則識別碼 949110。 規則的描述可能包括超過輸入異常評分

此規則表示要求的異常評分總計超過允許的評分上限。 如需詳細資訊,請參閱異常評分

下列規則集 - 應用程式閘道上的 Azure Web 應用程式防火牆不再支援 CRS 3.0 和 CRS 2.2.9 群組和規則。 我們建議您升級至 DRS 2.1 / CRS 3.2

3.0 規則集

一般

規則識別碼 描述
200004 可能的多部分不匹配的邊界

KNOWN-CVES

規則識別碼 描述
800100 協助偵測和緩和 log4j 弱點CVE-2021-44228CVE-2021-45046 的規則
800110 Spring4Shell 互動嘗試
800111 嘗試 Spring Cloud routing-expression 插入 - CVE-2022-22963
800112 嘗試使用 Spring Framework 不安全類別物件惡意探索 - CVE-2022-22965
800113 嘗試 Spring Cloud 閘道傳動器插入 - CVE-2022-22947

請求-911-METHOD-ENFORCEMENT

規則識別碼 描述
911100 原則不允許方法

REQUEST-913-SCANNER-DETECTION

規則識別碼 描述
913100 找到與安全性掃描程式相關聯的使用者代理程式
913110 找到與安全性掃描程式相關聯的要求標頭
913120 找到與安全性掃描程式相關聯的要求檔名/引數
913101 找到與指令碼/一般 HTTP 用戶端相關聯的使用者代理程式
913102 找到與 web 編目程式/bot 相關聯的使用者代理程式

REQUEST-920-PROTOCOL-ENFORCEMENT

規則識別碼 描述
920100 無效的 HTTP 要求列
920130 無法剖析要求內文
920140 multipart 要求本文失敗嚴格驗證
920160 內容長度 HTTP 標頭不是數值
920170 具有本文內容的 GET 或 HEAD 要求
920180 POST 請求缺少 Content-Length 標頭
920190 Range = 無效的最後一個字節值
920210 找到多個/衝突的連接標頭數據
920220 URL 編碼濫用攻擊嘗試
920240 URL 編碼濫用攻擊嘗試
920250 UTF8 編碼濫用攻擊嘗試
920260 Unicode 全/半寬度濫用攻擊嘗試
920270 要求 (null 字元) 中的字元無效
920280 要求遺失主機標頭
920290 空白的主機標頭
920310 要求具有空白的 Accept 標頭
920311 要求具有空白的 Accept 標頭
920330 空白的使用者代理程式標頭
920340 要求包含內容,但遺漏 Content-type 標頭
920350 主機標頭是數字的 IP 位址
920380 要求中的引數太多
920360 引數名稱太長
920370 引數值太長
920390 超過總引數大小
920400 上傳的檔案大小太大
920410 上傳的檔案大小總數太大
920420 原則不允許要求內容類型
920430 原則不允許 HTTP 通訊協定版本
920440 原則會限制 URL 的副檔名
920450 原則會限制 HTTP 標頭 (%@{MATCHED_VAR})
920200 範圍 = 太多欄位 (6 個或以上)
920201 範圍 = 太多 pdf 要求的欄位 (35 個或以上)
920230 偵測到多個 URL 編碼
920300 要求遺失 Accept 標頭
920271 要求 (非可列印的字元) 中的字元無效
920320 遺失使用者代理程式標頭
920272 要求 (在 ASCII 127 下方的可列印字元之外) 中的字元無效
920202 範圍 = 太多 pdf 要求的欄位 (6 個或以上)
920273 要求 (非常嚴格的設定之外) 中的字元無效
920274 要求標頭 (非常嚴格的設定之外) 中的字元無效
920460 異常逸出字元

REQUEST-921-PROTOCOL-ATTACK

規則識別碼 描述
921100 HTTP 要求走私攻擊
921110 HTTP 要求走私攻擊
921120 HTTP 回應分割攻擊
921130 HTTP 回應分割攻擊
921140 透過標頭的 HTTP 標頭插入式攻擊
921150 透過承載 (偵測到 CR/LF) 的 HTTP 標頭插入式攻擊
921160 透過承載 (偵測到 CR/LF 和 header-name) 的 HTTP 標頭插入式攻擊
921151 透過承載 (偵測到 CR/LF) 的 HTTP 標頭插入式攻擊
921170 HTTP 參數侵害
921180 HTTP 參數侵害 (%@{TX.1})

REQUEST-930-APPLICATION-ATTACK-LFI

規則識別碼 描述
930100 路徑周遊攻擊 (/../)
930110 路徑周遊攻擊 (/../)
930120 作業系統檔案存取嘗試
930130 受限制檔案存取嘗試

請求-931-應用程式-ATTACK-RFI

規則識別碼 描述
931100 可能的遠端檔案包含 (RFI) 攻擊 = 使用 IP 位址的 URL 參數
931110 可能的遠端檔案包含 (RFI) 攻擊 = 與 URL 承載搭配使用的一般 RFI 易受攻擊參數名稱
931120 可能的遠端檔案包含 (RFI) 攻擊 = 與結尾問號字元 (?) 搭配使用 URL 承載
931130 可能的遠端檔案包含 (RFI) 攻擊 = 關閉網域參考/連結

REQUEST-932-APPLICATION-ATTACK-RCE

規則識別碼 描述
932120 遠端命令執行 = 找到 Windows PowerShell 命令
932130 應用程式閘道 WAF v2:遠端命令執行:找到 Unix Shell 運算式或 Confluence 弱點 (CVE-2022-26134),或 Text4Shell (CVE-2022-42889)

應用程式閘道 WAF v1:遠端命令執行:Unix Shell 運算式
932140 遠端命令執行 = 找到 Windows FOR/IF 命令
932160 遠端命令執行 = 找到 Unix 殼層程式碼
932170 執行遠端命令 = Shellshock (CVE-2014-6271)
932171 執行遠端命令 = Shellshock (CVE-2014-6271)

請求-933-應用程式-ATTACK-PHP

規則識別碼 描述
933100 PHP 插入式攻擊 = 找到開頭/結尾標記
933110 PHP 插入式攻擊 = 找到 PHP 指令碼檔案上傳
933120 PHP 插入式攻擊 = 找到組態指示詞
933130 PHP 插入式攻擊 = 找到變數
933150 PHP 插入式攻擊 = 找到高風險 PHP 函式名稱
933160 PHP 插入式攻擊 = 找到高風險 PHP 函式呼叫
933180 PHP 插入式攻擊 = 找到變數函式呼叫
933151 PHP 插入式攻擊 = 找到中度風險 PHP 函式名稱
933131 PHP 插入式攻擊 = 找到變數
933161 PHP 插入式攻擊 = 找到低價值 PHP 函式呼叫
933111 PHP 插入式攻擊 = 找到 PHP 指令碼檔案上傳

REQUEST-941-APPLICATION-ATTACK-XSS

規則識別碼 描述
941100 透過 libinjection 偵測到的 XSS 攻擊
941110 XSS 篩選器 - 類別 1 = 指令碼標記向量
941130 XSS 篩選器 - 類別 3 = 屬性向量
941140 XSS 篩選 - 類別 4 = JavaScript URI 向量
941150 XSS 篩選器 - 類別 5 = 不允許的 HTML 屬性
941180 節點驗證程式封鎖清單關鍵字
941190 使用樣式表的 XSS
941200 使用 VML 框架的 XSS
941210 使用混淆的 JavaScript 或 Text4Shell 的 XSS (CVE-2022-42889)
941220 使用混淆處理 VB 指令碼的 XSS
941230 使用 'embed' 標記的 XSS
941240 使用 'import' 或 'implementation' 屬性的 XSS
941260 使用 'meta' 標記的 XSS
941270 使用 'link' href 的 XSS
941280 使用 'base' 標記的 XSS
941290 使用 'applet' 標記的 XSS
941300 使用 'object' 標記的 XSS
941310 US-ASCII 格式不正確編碼 XSS 篩選器 - 偵測到攻擊
941330 IE XSS 篩選 - 偵測到攻擊
941340 IE XSS 篩選 - 偵測到攻擊
941350 UTF-7 編碼 IE XSS - 偵測到攻擊
941320 偵測到可能的 XSS 攻擊 - HTML 標記處理常式

REQUEST-942-APPLICATION-ATTACK-SQLI

規則識別碼 描述
942100 透過 libinjection 偵測到的 SQL 插入式攻擊
942110 SQL插入式攻擊:偵測到常見的插入測試
942130 SQL 插入式攻擊:偵測到 SQL 謬誤重複語句
942140 SQL 插入式攻擊 = 偵測到常用的 DB 名稱
942160 使用函數 sleep() 或基準測試 benchmark() 偵測盲目 SQL 注入測試
942170 偵測到 SQL 基準測試與睡眠插入式嘗試包括條件式查詢
942190 偵測到 MSSQL 程式碼執行和資訊收集嘗試次數
942200 偵測到 MySQL 註解/空間模糊化的插入和反引號終止
942230 偵測到條件式 SQL 插入嘗試
942260 偵測到基本 SQL 驗證略過嘗試 2/3
942270 尋找基本的 SQL 插入。 MySQL、Oracle 和其他的常見攻擊字串
942290 尋找基本 MongoDB SQL 插入嘗試
942300 偵測到 MySQL 註解、條件和 ch(a)r 插入
942310 偵測到鏈結 SQL 插入嘗試 2/2
942320 偵測到 MySQL 與 PostgreSQL 預存程序/函式插入
942330 偵測到傳統 SQL 插入探測 1/2
942340 偵測到基本 SQL 驗證略過嘗試 3/3
942350 偵測到 MySQL UDF 插入和其他資料/結構操作嘗試
942360 偵測到連續的基本 SQL 插入和 SQLLFI 嘗試次數
942370 偵測到傳統 SQL 插入探測 2/2
942150 SQL 插入式攻擊
942410 SQL 插入式攻擊
942430 受限制的 SQL 字元異常偵測 (args):超出的特殊字元數目 (12)
942440 偵測到 SQL 註解順序
942450 識別到 SQL 十六進位編碼
942251 偵測到 HAVING 插入
942460 中繼字元異常偵測警示 - 重複性的非文字字元

REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION

規則識別碼 描述
943100 可能的工作階段 Fixation 攻擊 = 在 HTML 中設定 Cookie 值
943110 可能的工作階段 Fixation 攻擊 = 具有關閉網域查閱者的工作階段識別碼參數名稱
943120 可能的工作階段 Fixation 攻擊 = 沒有查閱者的工作階段識別碼參數名稱