Azure Application Gateway に Azure Web Application Firewall をデプロイすると、Web アプリケーションが一般的な悪用や脆弱性から積極的に保護されます。 Web アプリケーションが悪意のある攻撃の対象となる頻度が高くなるにつれて、これらの攻撃は、SQL インジェクションやクロスサイト スクリプティングなどの既知の脆弱性を悪用することが多くなっています。
Application Gateway 上の Azure Web アプリケーション ファイアウォールは、Open Web Application Security Project (OWASP ) のコア ルール セット (CRS) に基づいています。
次の Azure Web アプリケーション ファイアウォール機能はすべて、Web アプリケーション ファイアウォール (WAF) ポリシー内に存在します。 複数のポリシーを作成し、アプリケーション ゲートウェイ、個々のリスナー、またはアプリケーション ゲートウェイのパスベースのルーティング規則に関連付けることができます。 この関連付けにより、必要に応じて、アプリケーション ゲートウェイの背後にあるサイトごとに個別のポリシーを定義できます。 WAF ポリシーの詳細については、「 Application Gateway の WAF ポリシーを作成する」を参照してください。
注意
Application Gateway には、WAF_v1とWAF_v2の 2 つのバージョンの Web アプリケーション ファイアウォールがあります。 WAF ポリシーの関連付けは、WAF_v2でのみサポートされます。
Application Gateway は、アプリケーション配信コントローラーとして動作します。 トランスポート層セキュリティ (TLS) (旧称 Secure Sockets Layer または SSL) 終了、Cookie ベースのセッション アフィニティ、ラウンド ロビン負荷分散、コンテンツ ベースのルーティング、複数の Web サイトをホストする機能、セキュリティの強化が提供されます。
Application Gateway は、TLS ポリシー管理とエンド ツー エンド TLS サポートを通してセキュリティを強化します。 Azure Web Application Firewall を Application Gateway に統合すると、アプリケーションのセキュリティが強化されます。 この組み合わせは、Web アプリケーションを一般的な脆弱性から積極的に防御し、一元的に管理できる場所を提供します。
メリット
このセクションでは、Application Gateway 上の Azure Web Application Firewall が提供する主な利点について説明します。
保護
バックエンド コードを変更することなく、Web アプリケーションを Web の脆弱性や攻撃から保護するのに役立ちます。
複数の Web アプリケーションを同時に保護するのに役立ちます。 Application Gateway のインスタンスは、Web アプリケーション ファイアウォールを使用する最大 40 個の Web サイトをホストできます。
同じ WAF の内側にある各種サイト用にカスタム WAF ポリシーを作成できます。
IP 評判規則セットを使用して、悪意のあるボットから Web アプリケーションを保護します。
DDoS 攻撃からアプリケーションを保護します。 詳細については、「 アプリケーション (レイヤー 7) DDoS 保護」を参照してください。
監視
リアルタイムの WAF ログを使用して、Web アプリケーションに対する攻撃を監視できます。 ログは Azure Monitor と統合され、WAF アラートを追跡し、傾向を監視します。
Application Gateway の WAF は Microsoft Defender for Cloud と統合されています。 Defender for Cloud を使用すると、Azure、ハイブリッド、マルチクラウドのすべてのリソースのセキュリティ状態を一元的に把握できます。
カスタマイズ
ご使用のアプリケーションの要件に合わせて WAF の規則と規則グループをカスタマイズし、誤検出を排除できます。
WAF の背後にある各サイトの WAF ポリシーを関連付けて、サイト固有の構成を許可します。
アプリケーションのニーズに合わせてカスタム ルールを作成します。
特徴
- SQL インジェクションに対する保護。
- クロスサイト スクリプティングに対する保護。
- その他の一般的な Web 攻撃からの保護 (コマンド インジェクション、HTTP 要求スマグリング、HTTP レスポンス スプリッティング、リモート ファイル インクルードなど)。
- HTTP プロトコル違反に対する保護。
- 不足している
Host
、User-Agent
、Accept
ヘッダーなどの HTTP プロトコルの異常に対する保護。 - クローラーおよびスキャナーに対する保護。
- 一般的なアプリケーション構成ミスの検出 (Apache や IIS など)。
- 下限と上限を指定した、構成可能な要求サイズ制限。
- WAF 評価から特定の要求属性を省略できる除外リスト。 一般的な例として、認証フィールドまたはパスワード フィールドにおいて使用される、Active Directory で挿入されたトークンが挙げられます。
- アプリケーションの特定のニーズに合わせてカスタム ルールを作成する機能。
- トラフィックを geo フィルター処理し、特定の国/地域がアプリケーションへのアクセスを許可またはブロックする機能。
- ボットからアプリケーションを保護するのに役立つ Bot Manager ルール セット。
- 要求本文で JSON と XML を検査する機能。
WAF のポリシーと規則
Application Gateway で Web アプリケーション ファイアウォールを使用するには、WAF ポリシーを作成する必要があります。 このポリシーは、すべてのマネージド ルール、カスタム ルール、除外、およびその他のカスタマイズ (ファイル アップロード制限など) が存在する場所です。
WAF ポリシーを構成し、そのポリシーを保護のために 1 つ以上のアプリケーション ゲートウェイに関連付けることができます。 WAF ポリシーは、2 種類のセキュリティ規則で構成されます。
- 作成したカスタム ルール
- Azure で管理される事前構成済み規則のコレクションであるマネージド ルール セット
両方が存在する場合、WAF は、マネージド ルール セット内のルールを処理する前にカスタム ルールを処理します。
ルールは、一致条件、優先度、およびアクションで構成されます。 サポートされているアクションの種類は、 ALLOW
、 BLOCK
、および LOG
です。 マネージドルールとカスタムルールを組み合わせることで、アプリケーション保護の特定の要件を満たす完全にカスタマイズされたポリシーを作成できます。
WAF は、ポリシー内の規則を優先順位で処理します。 優先順位は、規則の処理順序を定義する一意の整数です。 整数値が小さい場合は優先度が高いことを示し、より高い整数値を持つ規則の前に WAF によってそれらの規則が評価されます。 WAF は、要求を持つルールに一致した後、ルールが定義する対応するアクションを要求に適用します。 WAF がこのような一致を処理した後、優先順位の低いルールはそれ以上処理されません。
Application Gateway が提供する Web アプリケーションには、グローバル レベル、サイト単位、または URI レベルで WAF ポリシーを関連付けることができます。
カスタム規則
Application Gateway では、独自のカスタム 規則の作成がサポートされています。 Application Gateway は、WAF を通過する各要求のカスタム 規則を評価します。 これらの規則は、マネージド規則セット内の他の規則よりも高い優先度を持ちます。 要求が一連の条件を満たしている場合、WAF は許可またはブロックするアクションを実行します。 カスタム規則の詳細については、「 Application Gateway のカスタム規則」を参照してください。
Geomatch
演算子がカスタム ルールで使用できるようになりました。 詳細については、「 Geomatch カスタム ルール」を参照してください。
ルール セット
Application Gateway では、CRS 3.2、CRS 3.1、CRS 3.0 など、複数のルール セットがサポートされています。 これらのルールは、悪意のあるアクティビティから Web アプリケーションを保護するのに役立ちます。 詳細については、 Web アプリケーション ファイアウォールの DRS および CRS ルール グループとルールを参照してください。
Bot Manager ルール セット
マネージド Bot Manager ルール セットを有効にして、すべてのボット カテゴリからの要求に対してカスタム アクションを実行できます。
Application Gateway では、次の 3 つのボット カテゴリがサポートされています。
不正なボット: 悪意のある IP アドレスを持つボット、または ID を改ざんしたボット。 悪意のある IP アドレスは、Microsoft Threat Intelligence フィードの高信頼 IP 侵害インジケーターと IP 評判フィードから取得される可能性があります。 不正なボットには、自分自身を適切なボットとして識別するが、正当なボット発行元に属していない IP アドレスを持つボットも含まれます。
適切なボット: 信頼されたユーザー エージェント。 適切なボットのルールは複数のカテゴリに分類され、WAF ポリシー構成をきめ細かく制御できます。 これらのカテゴリには次のものが含まれます。
- 検証済みの検索エンジン ボット (Googlebot や Bingbot など)。
- 検証済みのリンク チェッカー ボット。
- 検証済みのソーシャル メディア ボット (FacebookBot や LinkedInBot など)。
- 検証済みの広告ボット。
- 検証済みのコンテンツ チェッカー ボット。
- 検証済みのその他のボット。
不明なボット: 追加の検証を行わないユーザー エージェント。 不明なボットには、Microsoft Threat Intelligence フィードの中程度の信頼度の IP 侵害インジケーターから取得された悪意のある IP アドレスが含まれている可能性もあります。
Azure Web Application Firewall は、ボットの署名をアクティブに管理し、動的に更新します。
ボット保護を有効にすると、構成されたアクションに基づいてボット ルールに一致する受信要求がブロック、許可、またはログに記録されます。 これは既定で、悪意のあるボットをブロックし、検証済みの検索エンジン クローラーを許可し、不明な検索エンジン クローラーをブロックし、不明なボットをログに記録します。 さまざまな種類のボットをブロック、許可、ログに記録するようにカスタム アクションを設定できます。
ストレージ アカウント、イベント ハブ、または Log Analytics から WAF ログにアクセスできます。 パートナー ソリューションにログを送信することもできます。
Application Gateway ボット保護の詳細については、Application Gateway ボット保護の Web アプリケーション ファイアウォールの概要に関するページを参照してください。
WAF のモード
Application Gateway WAF は、次のモードで実行するように構成できます。
- 検出モード:すべての脅威アラートを監視してログに記録します。 [診断] セクションで Application Gateway の診断ログの記録をオンにしてください。 また、必ず WAF のログを選択してオンにしてください。 Web アプリケーション ファイアウォールは、検出モードで動作しているときに受信要求をブロックしません。
- 防止モード:規則で検出された侵入や攻撃をブロックします。 攻撃者に "403 不正アクセス" の例外が送信され、接続が終了します。 防止モードでは、このような攻撃を WAF ログに記録します。
注意
運用環境では、新しくデプロイされた WAF を検出モードで短時間実行することをお勧めします。 これにより、ファイアウォール ログ を取得し、防止モードに移行する前に例外または カスタム規則 を更新できます。 また、予期しないブロックされたトラフィックの発生を減らすのにも役立ちます。
WAF エンジン
WAF エンジンは、トラフィックを検査し、潜在的な攻撃を示す署名が要求に含まれているかどうかを検出するコンポーネントです。 CRS 3.2 以降を使用すると、Web アプリケーション ファイアウォールによって新しい WAF エンジンが実行され、パフォーマンスが向上し、一連の機能が向上します。 旧バージョンの CRS を使用すると、以前のエンジンが WAF により実行されます。 新機能は、新しい WAF エンジンでのみ使用できます。
WAF のアクション
要求がルールの条件と一致したときに WAF が実行するアクションを選択できます。 Application Gateway では、次のアクションがサポートされています。
- 許可: 要求は WAF を通過し、バックエンドに転送されます。 これ以上優先順位の低い規則では、この要求をブロックできません。 これらのアクションは、Bot Manager ルール セットにのみ適用されます。 CRS には適用されません。
- ブロック: 要求はブロックされます。 WAF は、要求をバックエンドに転送せずに、クライアントに応答を送信します。
- ログ: 要求は WAF ログに記録されます。 WAF は引き続き優先順位の低い規則を評価します。
- 異常スコア: このアクションは CRS の既定値です。 要求がこのアクションでルールと一致すると、合計異常スコアがインクリメントされます。 異常スコアリングは、Bot Manager ルール セットには適用されません。
異常スコアリング モード
OWASP には、トラフィックをブロックするかどうかを決定するための 2 つのモードがあります。従来のスコアリングと異常スコアリングです。
従来のモードでは、任意のルールに一致するトラフィックは、他のルールの一致とは無関係に考慮されます。 このモードは簡単に理解できますが、特定の要求に一致するルールの数に関する情報が不足しているのが制限事項です。 そのため、異常スコアリング モードが OWASP 3 の既定値として導入されました。x。
異常スコアリング モードでは、ファイアウォールが防止モードの場合、ルールに一致するトラフィックはすぐにはブロックされません。 規則には特定の重大度があります。 [重大] 、 [エラー] 、 [警告] 、または [通知] です。 この重大度は、要求の数値 (異常スコア) に影響します。 たとえば、1つの [警告] 規則の一致によって、スコアに 3 が与えられます。 1つの [重大] 規則の一致では 5 が与えられます。
重大度 | 値 |
---|---|
危うい | 5 |
エラー | 4 |
警告 | 3 |
注意事項 | 2 |
トラフィックをブロックする異常スコアのしきい値は 5 です。 そのため、Application Gateway WAF で防止モードで要求をブロックするには、1 つの 重大な ルールの一致で十分です。 ただし、1 つの 警告 ルールが一致すると、異常スコアが 3 だけ増加します。これは、トラフィックをブロックするのに単独では不十分です。
注意
WAF ルールがトラフィックと一致したときにログに記録されるメッセージには、 一致したアクション値が含まれます。 一致したすべてのルールの合計異常スコアが 5 以上で、WAF ポリシーが防止モードで実行されている場合、要求はアクション値 Blocked を使用して必須の異常ルールをトリガーし、要求は停止されます。 WAF ポリシーが検出モードで実行されている場合、要求はアクション値 Detected をトリガーし、要求がログに記録され、バックエンドに渡されます。 詳細については、「 WAF ログについて」を参照してください。
構成
Azure portal、REST API、Azure Resource Manager テンプレート、Azure PowerShell を使用して、すべての WAF ポリシーを構成してデプロイできます。 Azure Firewall Manager 統合を使用して、WAF ポリシーを大規模に構成および管理することもできます。 詳細については、「 Azure Firewall Manager を使用して WAF ポリシーを構成する」を参照してください。
WAF の監視
アプリケーション ゲートウェイの正常性の監視は重要です。 これを実現するには、WAF (および保護に役立つアプリケーション) と Microsoft Defender for Cloud、Azure Monitor、Azure Monitor ログを統合します。
Azure Monitor
Application Gateway ログは Azure Monitor と統合されているため、WAF アラートやログなどの診断情報を追跡できます。 この機能には、Azure portal の Application Gateway リソースの [ 診断 ] タブからアクセスできます。 または、Azure Monitor で直接アクセスすることもできます。
ログの使用の詳細については、 Application Gateway の診断ログを参照してください。
Microsoft Defender for Cloud
Defender for Cloud は、脅威の防御、検出、対応に役立ちます。 Azure リソースのセキュリティの可視性と制御が向上します。 Application Gateway は Defender for Cloud と統合されています。
Defender for Cloud では、環境をスキャンして、保護されていない Web アプリケーションを検出します。 これらの脆弱なリソースの保護に役立つ Application Gateway WAF を推奨できます。
Defender for Cloud から直接ファイアウォールを作成します。 これらの WAF インスタンスは Defender for Cloud と統合されます。 それらによって、アラートおよび正常性情報がレポートとして Defender for Cloud に送信されます。
Microsoft Sentinel
Microsoft Sentinel は、セキュリティ情報イベント管理 (SIEM) とセキュリティ オーケストレーション自動応答 (SOAR) を含む、スケーラブルなクラウドネイティブ ソリューションです。 Microsoft Sentinel は、インテリジェントなセキュリティ分析と脅威インテリジェンスを企業全体に提供します。 アラート検出、脅威の可視性、プロアクティブハンティング、脅威対応のための単一のソリューションを提供します。
Azure Web Application Firewall に組み込まれているファイアウォール イベント ブックを使用すると、WAF のセキュリティ イベントの概要を確認できます。 概要には、一致したルール、ブロックされたルール、およびその他のすべてのログに記録されたファイアウォール アクティビティが含まれます。
WAF 用 Azure Monitor ブック
WAF 用 Azure Monitor ブックを使用すると、複数のフィルター可能なパネルでセキュリティ関連の WAF イベントをカスタムで視覚化できます。 Application Gateway、Azure Front Door、Azure Content Delivery Network など、すべての WAF の種類で動作します。
WAF の種類または特定の WAF インスタンスに基づいて、このブックをフィルター処理できます。 Azure Resource Manager テンプレートまたはギャラリー テンプレートを使用してインポートします。
このブックをデプロイするには、 Azure Web Application Firewall の GitHub リポジトリを参照してください。
ログ記録
Application Gateway WAF は、検出した各脅威に関する詳細なレポートを提供します。 ログ記録は Azure 診断ログに統合されています。 アラートは JSON 形式で記録されます。 これらのログは 、Azure Monitor ログと統合できます。
{
"resourceId": "/SUBSCRIPTIONS/{subscriptionId}/RESOURCEGROUPS/{resourceGroupId}/PROVIDERS/MICROSOFT.NETWORK/APPLICATIONGATEWAYS/{appGatewayName}",
"operationName": "ApplicationGatewayFirewall",
"time": "2017-03-20T15:52:09.1494499Z",
"category": "ApplicationGatewayFirewallLog",
"properties": {
{
"instanceId": "ApplicationGatewayRole_IN_0",
"clientIp": "203.0.113.145",
"clientPort": "0",
"requestUri": "/",
"ruleSetType": "OWASP",
"ruleSetVersion": "3.0",
"ruleId": "920350",
"ruleGroup": "920-PROTOCOL-ENFORCEMENT",
"message": "Host header is a numeric IP address",
"action": "Matched",
"site": "Global",
"details": {
"message": "Warning. Pattern match \"^[\\\\d.:]+$\" at REQUEST_HEADERS:Host ....",
"data": "127.0.0.1",
"file": "rules/REQUEST-920-PROTOCOL-ENFORCEMENT.conf",
"line": "791"
},
"hostname": "127.0.0.1",
"transactionId": "16861477007022634343"
"policyId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/drewRG/providers/Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies/globalWafPolicy",
"policyScope": "Global",
"policyScopeName": " Global "
}
}
}
Application Gateway WAF の価格
価格モデルは、WAF_v1バージョンとWAF_v2バージョンによって異なります。 詳細については、「 Application Gateway の価格」を参照してください。
新機能
Azure Web Application Firewall の新機能については、「Azure の更新情報」を参照してください。