WAF での誤検出と検出漏れはどのようにトラブルシューティングすればよいですか?
デフォルトでは、Web アプリケーション・ファイアウォール (WAF) はダッシュボードを介して完全に管理されており、ほとんどの Web サイトおよび Web アプリケーションと互換性があります。 しかし、誤検出および検出漏れが発生することもあります。
誤検出とは、許可された要求が悪意あるものとして検出されてフィルタリングされることです。 検出漏れとは、悪意ある要求がフィルタリングされないことです。
WAF 誤検出のトラブルシューティング
疑わしいコンテンツの定義は Web サイトごとに異なります。 例えば、Web サイトに投稿された PHP コードは、その Web サイトがコーディングの仕方を教えていて、訪問客による PHP コードの実行依頼を求めているのでもない限り、疑わしいものと見なされます。 したがって、そのような Web サイトでは、通常の操作を妨げる WAF 関連ルールは無効にする必要があります。
誤検出をテストするために、WAF を「シミュレート」モードに設定して、起こり得る攻撃への応答をチャレンジやブロックを行わずに記録します。 また、ファイアウォール・アナリティクスのアクティビティー・ログを使用して、誤検出を引き起こした WAF ルールを判別します。
誤検出が見つかった場合は、考えられるいくつかの対処方法があります。
- クライアントの IP アドレスを IP アクセス・ルール許可リストに追加します。ブラウザーまたはクライアントが同一の IP アドレスから訪問している場合は、許可することをお勧めします。
- 対応する WAF ルールを無効にします。 これを行う場合、誤検出によるブロックまたはチャレンジは停止しますが、全体的なサイトのセキュリティーは低下します。 WAF ルール ID 981176 によってブロックされる要求は OWASP ルールを指しています。 この問題を解決するには、OWASP の感度を下げます。
- ファイアウォール・ルールを使用して WAF をバイパスします。バイパス・アクションを含むファイアウォール・ルールを作成して、特定のパラメーターの組み合わせで WAF を使用不能にします。 例えば、特定の URL および特定の IP アドレスまたはユーザー・エージェントで WAF をバイパスします。
- URL へのトラフィックの WAF を無効にします (非推奨)。 ページ・ルールを使用して WAF を無効にすると、特定の URL エンドポイントのセキュリティーが低下します。
WAF ルールが期待通りにトリガーされているかどうかを確認する目的で IBM サポートにお問い合わせいただく場合は、対象となる特定の要求の送信中にキャプチャーした HAR ファイルをご提供ください。
ある特定のルールが原因で誤検出が発生する場合は、そのルール・グループ全体をオフにするのではなく、ルールの「モード」を「無効化」に設定します。 Web サイト上の管理者コンテンツでの誤検出の場合は、サイト・リソースの管理セクションのセキュリティーを無効にするページ・ルール (yoursite.com/admin
など) を作成します。
WAF の検出漏れのトラブルシューティング
検出漏れを識別するには、起点 Web サーバーの HTTP ログを確認します。
検出漏れを減らすには、次のチェックリストを使用してください。
- ファイアウォール・アプリの「マネージド・ルール」で「Web アプリケーション・ファイアウォール」が
On
になっていますか? - 「Web アプリケーション・ファイアウォール」でページ・ルールの使用が
Off
になっていますか? - デフォルトではすべての WAF ルールは有効になってはいないので、個々の WAF ルールのデフォルト・アクションを確認してください。 例えば、CIS はユーザー・エージェントが空である要求をデフォルトで許可します。
ユーザー・エージェントが空である要求をブロックするには、WAF ルールの「モード」をBlock
に変更します。
- HTTP トラフィックを処理する DNS レコードは CIS でプロキシーされていますか?
- ファイアウォール・ルールは CIS 管理のルールをバイパスしますか?
- IP アクセス・ルールまたはファイアウォール・ルールで許可されている国、ASN、IP 範囲または IP は攻撃トラフィックと一致していますか?
- CIS 保護をバイパスするために悪意のあるトラフィックが起点 IP アドレスに向けられていますか? 起点 Web サーバーで CIS の IP アドレス以外からのすべてのトラフィックをブロックしてください。