Web Application Firewall ポリシー (WAF) には、一般的な脆弱性や悪用から Web アプリケーションを保護するためのマネージド ルール セット (Default Rule Set (DRS)/Core Rule Set (CRS)) が用意されています。
なお、DRS 2.1 以降/CRS を使用する場合、既定で「異常スコアリング」モードが構成されます。
この「異常スコアリング」モードは、Web 要求でルールに合致、検出された場合、WAF の動作モードが「防止」あっても直ぐにブロックせず、異常スコアの合計がしきい値 (5 以上) を超えるとブロックされるものとなります。
異常スコアの値は、重要度によって以下のとおり決められており、各ルールごとに重要度が設定されていますが、ルールに対する重要度が何であるのかについて、Microsoft から公開されていないようです。
ルールの重要度 | 異常スコア値 |
---|---|
CRITICAL (Critical) | 5 |
ERROR (エラー) | 4 |
WARNING (警告) | 3 |
NOTICE (注意事項) | 2 |
Azure Monitor ログ (ApplicationGatewayFirewallLog) から確認しても、ルールに重要度に関する情報が存在していなかったため、下記 Github リポジトリの情報をもとにマネージド ルール セット (OWASP CRS 3.2) の各ルールに対する重要度を確認、表として纏めました。
- OWASP Core Rule Set (CRS) rules
https://github.com/coreruleset/coreruleset/tree/v3.2/master/rules
- マネージド ルール セット (OWASP CRS 3.2) に対する重要度一覧
- General
- REQUEST-911-METHOD-ENFORCEMENT
- REQUEST-913-SCANNER-DETECTION
- REQUEST-920-PROTOCOL-ENFORCEMENT
- REQUEST-921-PROTOCOL-ATTACK
- REQUEST-930-APPLICATION-ATTACK-LFI
- REQUEST-931-APPLICATION-ATTACK-RFI
- REQUEST-932-APPLICATION-ATTACK-RCE
- REQUEST-933-APPLICATION-ATTACK-PHP
- REQUEST-941-APPLICATION-ATTACK-XSS
- REQUEST-942-APPLICATION-ATTACK-SQLI
- REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION
- REQUEST-944-APPLICATION-ATTACK-JAVA
- Known-CVEs
- 参考・関連リンク
スポンサーリンク
マネージド ルール セット (OWASP CRS 3.2) に対する重要度一覧
General
ルール ID | 説明 | 重要度 |
---|---|---|
200002 | 要求本文を解析できませんでした。 | 不明 |
200003 | マルチパートの要求本文が厳密な検証に失敗しました。 | 不明 |
200004 | 可能性のあるマルチパートによる不一致の境界。 | 不明 |
REQUEST-911-METHOD-ENFORCEMENT
ルール ID | 説明 | 重要度 |
---|---|---|
911100 | メソッドがポリシーによって許可されていません。 | CRITICAL |
REQUEST-913-SCANNER-DETECTION
ルール ID | 説明 | 重要度 |
---|---|---|
913100 | セキュリティ スキャナーに関連付けられている User-Agent が検出されました。 | CRITICAL |
913101 | スクリプティング/汎用 HTTP クライアントに関連付けられている User-Agent が検出されました。 | CRITICAL |
913102 | Web クローラー/ボットに関連付けられている User-Agent が検出されました。 | CRITICAL |
913110 | セキュリティ スキャナーに関連付けられている要求ヘッダーが検出されました。 | CRITICAL |
913120 | セキュリティ スキャナーに関連付けられている要求ファイル名/引数が検出されました。 | CRITICAL |
REQUEST-920-PROTOCOL-ENFORCEMENT
ルール ID | 説明 | 重要度 |
---|---|---|
920100 | 無効な HTTP 要求行です。 | WARNING |
920120 | マルチパート/フォームデータのバイパスを試行しました。 | CRITICAL |
920121 | マルチパート/フォームデータのバイパスを試行しました。 | CRITICAL |
920160 | Content-Length HTTP ヘッダーが数値ではありません。 | CRITICAL |
920170 | 本文コンテンツがある GET または HEAD 要求です。 | CRITICAL |
920171 | 転送エンコードがある GET または HEAD 要求です。 | CRITICAL |
920180 | POST 要求に Content-Length ヘッダーがありません。 | WARNING |
920190 | 範囲 : 無効な最終バイト値です。 | WARNING |
920200 | 範囲 : フィールドが多すぎます (6 以上)。 | WARNING |
920201 | 範囲 : pdf 要求のフィールドが多すぎます (35 以上)。 | WARNING |
920202 | 範囲 : pdf 要求のフィールドが多すぎます (6 以上)。 | WARNING |
920210 | 複数の/競合している接続ヘッダー データが見つかりました。 | WARNING |
920220 | URL エンコード悪用攻撃が試行されました。 | WARNING |
920230 | 複数の URL エンコードが検出されました。 | WARNING |
920240 | URL エンコード悪用攻撃が試行されました。 | WARNING |
920250 | UTF8 エンコード悪用攻撃が試行されました。 | WARNING |
920260 | Unicode 全/半角悪用攻撃が試行されました。 | WARNING |
920270 | 要求に無効な文字が含まれています (null 文字)。 | CRITICAL |
920271 | 要求に無効な文字が含まれています (印字できない文字)。 | CRITICAL |
920272 | 要求に無効な文字が含まれています (ascii 127 より下の印字できる文字以外)。 | CRITICAL |
920273 | 要求に無効な文字が含まれています (非常に厳格なセット以外)。 | CRITICAL |
920274 | 要求ヘッダーに無効な文字が含まれています (非常に厳格なセット以外)。 | CRITICAL |
920280 | 要求にホスト ヘッダーがありません。 | WARNING |
920290 | ホスト ヘッダーが空です。 | WARNING |
920300 | 要求に Accept ヘッダーがありません。 | NOTICE |
920310 | 要求に空の Accept ヘッダーがあります。 | NOTICE |
920311 | 要求に空の Accept ヘッダーがあります。 | NOTICE |
920320 | User Agent ヘッダーがありません。 | NOTICE |
920330 | User Agent ヘッダーが空です。 | NOTICE |
920340 | 要求にコンテンツは含まれていますが、Content-Type ヘッダーがありません。 | NOTICE |
920341 | コンテンツを含む要求には、Content-Type ヘッダーが必要です。 | CRITICAL |
920350 | ホスト ヘッダーが数値 IP アドレスです。 | WARNING |
920420 | 要求のコンテンツの種類がポリシーによって許可されていません。 | CRITICAL |
920430 | HTTP プロトコルのバージョンがポリシーによって許可されていません。 | CRITICAL |
920440 | URL ファイル拡張子がポリシーによって制限されています。 | CRITICAL |
920450 | HTTP ヘッダーがポリシーによって制限されています (%{MATCHED_VAR})。 | CRITICAL |
920460 | 異常なエスケープ文字です。 | CRITICAL |
920470 | 無効な Content-Type ヘッダーです。 | CRITICAL |
920480 | Content-Type ヘッダー内の文字セット パラメーターを制限します。 | CRITICAL |
REQUEST-921-PROTOCOL-ATTACK
ルール ID | 説明 | 重要度 |
---|---|---|
921110 | HTTP 要求スマグリング攻撃です。 | CRITICAL |
921120 | HTTP 応答分割攻撃です。 | CRITICAL |
921130 | HTTP 応答分割攻撃です。 | CRITICAL |
921140 | ヘッダーによる HTTP ヘッダー インジェクション攻撃です。 | CRITICAL |
921150 | ペイロードによる HTTP ヘッダー インジェクション攻撃です (CR/LF を検出)。 | CRITICAL |
921151 | ペイロードによる HTTP ヘッダー インジェクション攻撃です (CR/LF うぃ検出)。 | CRITICAL |
921160 | ペイロードによる HTTP ヘッダー インジェクション攻撃です (CR/LF および header-name を検出)。 | CRITICAL |
921170 | HTTP パラメーター汚染です。 | 不明 |
921180 | HTTP パラメーター汚染です (%{TX.1})。 | CRITICAL |
REQUEST-930-APPLICATION-ATTACK-LFI
ルール ID | 説明 | 重要度 |
---|---|---|
930100 | パス トラバーサル攻撃です (/../)。 | CRITICAL |
930110 | パス トラバーサル攻撃です (/../)。 | CRITICAL |
930120 | OS ファイル アクセスが試行されました。 | CRITICAL |
930130 | 制限付きファイル アクセスが試行されました。 | CRITICAL |
REQUEST-931-APPLICATION-ATTACK-RFI
ルール ID | 説明 | 重要度 |
---|---|---|
931100 | リモート ファイル インクルード (RFI) 攻撃の可能性あり : IP アドレスを使用している URL パラメーター | CRITICAL |
931110 | リモート ファイル インクルード (RFI) 攻撃の可能性あり : URL ペイロードと共に使用される一般的な RFI 脆弱性パラメーター名 | CRITICAL |
931120 | リモート ファイル インクルード (RFI) 攻撃の可能性あり : 末尾の疑問符 (?) と共に使用される URL ペイロード | CRITICAL |
931130 | 可能性のあるリモート ファイル インクルード (RFI) 攻撃 : ドメイン外参照/リンク | CRITICAL |
REQUEST-932-APPLICATION-ATTACK-RCE
ルール ID | 説明 | 重要度 |
---|---|---|
932100 | リモート コマンド実行 : UNIX コマンド インジェクション | CRITICAL |
932105 | リモート コマンド実行 : UNIX コマンド インジェクション | CRITICAL |
932106 | リモート コマンド実行 : UNIX コマンド インジェクション | CRITICAL |
932110 | リモート コマンド実行 : Windows コマンド インジェクション | CRITICAL |
932115 | リモート コマンド実行 : Windows コマンド インジェクション | CRITICAL |
932120 | リモート コマンド実行 : Windows PowerShell コマンドが見つかりました。 | CRITICAL |
932130 | リモート コマンド実行 : Unix シェル式または Confluence の脆弱性 (CVE-2022-26134) または Text4Shell (CVE-2022-42889) が見つかりました。 | CRITICAL |
932140 | リモート コマンド実行 : Windows FOR/IF コマンドが見つかりました。 | CRITICAL |
932150 | リモート コマンド実行 : Unix コマンドの直接実行が試行されました。 | CRITICAL |
932160 | リモート コマンド実行 : Unix シェル コードが見つかりました。 | CRITICAL |
932170 | リモート コマンド実行 : Shellshock (CVE-2014-6271) | CRITICAL |
932171 | リモート コマンド実行 : Shellshock (CVE-2014-6271) | CRITICAL |
932180 | 制限付きファイル アップロードが試行されました。 | CRITICAL |
932190 | リモート コマンド実行: ワイルドカードのバイパス方法が試行されました。 | CRITICAL |
REQUEST-933-APPLICATION-ATTACK-PHP
ルール ID | 説明 | 重要度 |
---|---|---|
933100 | PHP インジェクション攻撃 : 開始または終了タグが見つかりました。 | CRITICAL |
933110 | PHP インジェクション攻撃 : PHP スクリプト ファイルのアップロードが見つかりました。 | CRITICAL |
933111 | PHP インジェクション攻撃 : PHP スクリプト ファイルのアップロードが見つかりました。 | CRITICAL |
933120 | PHP インジェクション攻撃 : 構成ディレクティブが見つかりました。 | CRITICAL |
933130 | PHP インジェクション攻撃 : 変数が見つかりました。 | CRITICAL |
933131 | PHP インジェクション攻撃 : 変数が見つかりました。 | CRITICAL |
933140 | PHP インジェクション攻撃 : I/O ストリームが見つかりました。 | CRITICAL |
933150 | PHP インジェクション攻撃 : 危険度の高い PHP 関数名が見つかりました。 | CRITICAL |
933151 | PHP インジェクション攻撃 : 危険度が中程度の PHP 関数名が見つかりました。 | CRITICAL |
933160 | PHP インジェクション攻撃 : 危険度の高い PHP 関数呼び出しが見つかりました。 | CRITICAL |
933161 | PHP インジェクション攻撃 : 低い値の PHP 関数呼び出しが見つかりました。 | CRITICAL |
933170 | PHP インジェクション攻撃 : シリアル化されたオブジェクトが挿入されています。 | CRITICAL |
933180 | PHP インジェクション攻撃 : 関数呼び出しが見つかりました。 | CRITICAL |
933190 | PHP インジェクション攻撃 : PHP の終了タグが見つかりました。 | CRITICAL |
933200 | PHP インジェクション攻撃 : ラッパー スキームが検出されました。 | CRITICAL |
933210 | PHP インジェクション攻撃 : 関数呼び出しが見つかりました。 | CRITICAL |
REQUEST-941-APPLICATION-ATTACK-XSS
ルール ID | 説明 | 重要度 |
---|---|---|
941100 | libinjection を経由した XSS 攻撃が検出されました。 | CRITICAL |
941101 | libinjection を経由した XSS 攻撃が検出されました。 このルールでは、Referer ヘッダーを持つ要求が検出されます。 |
CRITICAL |
941110 | XSS フィルター – カテゴリ 1 : スクリプト タグ ベクター | CRITICAL |
941120 | XSS フィルター – カテゴリ 2 : イベント ハンドラー ベクター | CRITICAL |
941130 | XSS フィルター – カテゴリ 3 : 属性ベクター | CRITICAL |
941140 | XSS フィルター – カテゴリ 4 : JavaScript URI ベクター | CRITICAL |
941150 | XSS フィルター – カテゴリ 5 : 許可されていない HTML 属性 | CRITICAL |
941160 | NoScript XSS InjectionChecker : HTML インジェクション | CRITICAL |
941170 | NoScript XSS InjectionChecker : 属性インジェクション | CRITICAL |
941180 | ノード検証コントロールのブラックリスト キーワード | CRITICAL |
941190 | スタイル シートを使用する XSS – 攻撃が検出されました。 | CRITICAL |
941200 | VML フレームを使用する XSS – 攻撃が検出されました。 | CRITICAL |
941210 | 難読化された JavaScript または Text4Shell を使用した XSS (CVE-2022-42889) – 攻撃が検出されました。 | CRITICAL |
941220 | 難読化 VB Script を使用する XSS – 攻撃が検出されました。 | CRITICAL |
941230 | ‘embed’ タグを使用する XSS – 攻撃が検出されました。 | CRITICAL |
941240 | ‘import’ もしくは ‘implementation’ 属性を使用する XSS – 攻撃が検出されました。 | CRITICAL |
941250 | IE XSS フィルター – 攻撃が検出されました。 | CRITICAL |
941260 | ‘meta’ タグを使用する XSS – 攻撃が検出されました。 | CRITICAL |
941270 | ‘link’ href を使用する XSS – 攻撃が検出されました。 | CRITICAL |
941280 | ‘base’ タグを使用する XSS – 攻撃が検出されました。 | CRITICAL |
941290 | ‘applet’ タグを使用する XSS – 攻撃が検出されました。 | CRITICAL |
941300 | ‘object’ タグを使用する XSS – 攻撃が検出されました。 | CRITICAL |
941310 | US-ASCII 非整形式エンコード XSS フィルター – 攻撃が検出されました。 | CRITICAL |
941320 | 可能性のある XSS 攻撃が検出されました – HTML タグ ハンドラー | CRITICAL |
941330 | IE XSS フィルター – 攻撃が検出されました。 | CRITICAL |
941340 | IE XSS フィルター – 攻撃が検出されました。 | CRITICAL |
941350 | UTF-7 エンコード IE XSS – 攻撃が検出されました。 | CRITICAL |
941360 | JavaScript の難読化が検出されました。 | CRITICAL |
REQUEST-942-APPLICATION-ATTACK-SQLI
ルール ID | 説明 | 重要度 |
---|---|---|
942100 | libinjection を経由した SQL インジェクション攻撃が検出されました。 | CRITICAL |
942110 | SQL インジェクション攻撃 : 一般的なインジェクション テストが検出されました | WARNING |
942120 | SQL インジェクション攻撃 : SQL 演算子が検出されました | CRITICAL |
942130 | SQL インジェクション攻撃 : SQL トートロジーが検出されました。 | CRITICAL |
942140 | SQL インジェクション攻撃 : 共通 DB 名が検出されました | CRITICAL |
942150 | SQL インジェクション攻撃 | CRITICAL |
942160 | sleep() または benchmark() を用いた、ブラインド sqli テストを検出しました。 | CRITICAL |
942170 | 条件付きクエリも含めた、SQL ベンチマークとスリープ インジェクション試行を検出しました | CRITICAL |
942180 | 基本的な SQL 認証のバイパスの試行 1/3 を検出しました。 | CRITICAL |
942190 | MSSQL コード実行と情報収集の試行を検出しました。 | CRITICAL |
942200 | MySQL コメント/スペース難読化インジェクションとバッククォートの終了を検出しました。 | CRITICAL |
942210 | チェーンされた SQL インジェクション試行 1/2 を検出しました。 | CRITICAL |
942220 | 整数オーバーフロー攻撃を検出しました。これらは、skipfish から取得されます。ただし、3.0.00738585072007e-308 は “マジック番号” クラッシュであるため除きます。 | CRITICAL |
942230 | 条件付き SQL インジェクション試行を検出しました。 | CRITICAL |
942240 | MySQL 文字セット スイッチと MSSQL DoS 試行を検出しました。 | CRITICAL |
942250 | MATCH AGAINST、MERGE、EXECUTE IMMEDIATE インジェクションを検出しました。 | CRITICAL |
942251 | HAVING インジェクションを検出しました。 | CRITICAL |
942260 | 基本的な SQL 認証のバイパスの試行 2/3 を検出しました。 | CRITICAL |
942270 | 基本的な sql インジェクション (mysql oracle などの共通攻撃文字列) を検出しました。 | CRITICAL |
942280 | Postgres pg_sleep インジェクション、waitfor delay 攻撃、データベース シャットダウン試行を検出しました。 | CRITICAL |
942290 | 基本的な MongoDB SQL インジェクション試行を検出しました。 | CRITICAL |
942300 | MySQL コメント、条件、および ch(a)r インジェクションを検出しました。 | CRITICAL |
942310 | チェーンされた SQL インジェクション試行 2/2 を検出しました。 | CRITICAL |
942320 | MySQL および PostgreSQL ストアド プロシージャ/関数インジェクションを検出しました。 | CRITICAL |
942330 | 従来の SQL インジェクション プローブ 1/2 を検出しました。 | CRITICAL |
942340 | 基本的な SQL 認証のバイパスの試行 3/3 を検出しました。 | CRITICAL |
942350 | MySQL UDF インジェクションと、その他のデータ/構造操作試行を検出しました。 | CRITICAL |
942360 | 連結された基本的な SQL インジェクションと SQLLFI 試行を検出しました。 | CRITICAL |
942361 | キーワード alter または union に基づいて基本的な SQL インジェクションを検出しました。 | CRITICAL |
942370 | 従来の SQL インジェクション プローブ 2/2 を検出しました。 | CRITICAL |
942380 | SQL インジェクション攻撃です。 | CRITICAL |
942390 | SQL インジェクション攻撃です。 | CRITICAL |
942400 | SQL インジェクション攻撃です。 | CRITICAL |
942410 | SQL インジェクション攻撃です。 | CRITICAL |
942420 | 制限された SQL 文字の異常検出 (Cookie) : 特殊文字数を超過しました (8)。 | WARNING |
942421 | 制限された SQL 文字の異常検出 (Cookie) : 特殊文字数を超過しました (3)。 | WARNING |
942430 | 制限された SQL 文字の異常検出 (引数) : 特殊文字数が超過しました (12)。 | WARNING |
942431 | 制限された SQL 文字の異常検出 (引数) : 特殊文字数を超過しました (6)。 | WARNING |
942432 | 制限された SQL 文字の異常検出 (引数) : 特殊文字数を超過しました (2)。 | WARNING |
942440 | SQL コメント シーケンスが検出されました。 | CRITICAL |
942450 | SQL 16 進数エンコードが識別されました。 | CRITICAL |
942460 | メタ文字の異常検出アラート – 反復する非単語文字 | WARNING |
942470 | SQL インジェクション攻撃です。 | CRITICAL |
942480 | SQL インジェクション攻撃です。 | CRITICAL |
942490 | 従来の SQL インジェクション プローブ 3/3 を検出しました。 | CRITICAL |
942500 | MySQL のインライン コメントを検出しました。 | CRITICAL |
REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION
ルール ID | 説明 | 重要度 |
---|---|---|
943100 | 可能性のあるセッション固定攻撃 : HTML への Cookie 値の設定 | CRITICAL |
943110 | 可能性のあるセッション固定攻撃 : SessionID パラメーター名とドメイン外参照元 | CRITICAL |
943120 | 可能性のあるセッション固定攻撃 : 参照元のない SessionID パラメーター名 | CRITICAL |
REQUEST-944-APPLICATION-ATTACK-JAVA
ルール ID | 説明 | 重要度 |
---|---|---|
944100 | リモート コマンドの実行 : Apache Struts、Oracle WebLogic | CRITICAL |
944110 | リモート コマンドの実行 : ペイロード実行の可能性を検出します (CVE-2017-9805) | CRITICAL |
944120 | リモート コマンドの実行 : 可能性のあるペイロード実行とリモート コマンド実行 (CVE-2015-5842) | CRITICAL |
944130 | 不審な Java クラスが検出されました。 | CRITICAL |
944200 | Java 逆シリアル化 Apache Commons の悪用 – マジック パイトが検出されました。 | CRITICAL |
944210 | Java シリアル化の使用の可能性 – マジック パイトが検出されました。 | CRITICAL |
944240 | リモート コマンドの実行 : Java シリアル化 (CVE-2021-44228、CVE-2021-45046) | CRITICAL |
944250 | リモート コマンドの実行 : 疑わしい Java メソッドが検出されました。 | CRITICAL |
Known-CVEs
ルール ID | 説明 | 重要度 |
---|---|---|
800100 | Log4j の脆弱性 (CVE-2021-44228、CVE-2021-45046) を検出、軽減するためのルール。 | 不明 |
800110 | Spring4Shell 相互作用の試行。 | 不明 |
800111 | Spring Cloud ルーティング式インジェクション – CVE-2022-22963 が施行されました。 | 不明 |
800112 | Spring Framework の安全でないクラス オブジェクトの悪用 – CVE-2022-22965 が施行されました。 | 不明 |
800113 | Spring Cloud Gateway Actuator インジェクション – CVE-2022-22947 が施行されました。 | 不明 |
参考・関連リンク
- Azure Web アプリケーション ファイアウォール (WAF) ポリシーの概要 | Microsoft Learn
https://learn.microsoft.com/ja-jp/azure/web-application-firewall/ag/policy-overview - CRS 規則グループと規則 – Azure Web Application Firewall | Microsoft Learn
https://learn.microsoft.com/ja-jp/azure/web-application-firewall/ag/application-gateway-crs-rulegroups-rules - OWASP ModSecurity Core Rule Set | OWASP Foundation
https://owasp.org/www-project-modsecurity-core-rule-set/