OWASP CRSの欠陥により、エンコードされた攻撃がWAFをすり抜ける

新たに公表されたOWASP Core Rule Setの重大な欠陥により、攻撃者は文字セット検証を回避し、Webアプリケーションに対してクロスサイトスクリプティング(XSS)攻撃を密かに仕掛けることが可能になります。 

この欠陥は、多くの組織がWebアプリケーションファイアウォール(WAF)層でエンコードされた攻撃を検知・遮断するために依存している重要な防御制御を弱体化させます。 

OWASP CRSチームは、この脆弱性について「…ModSecurityのチェーンルールがコレクションを処理する方法を悪用することで、攻撃者が文字セット検証を回避できるようになる」と 述べています

OWASP CRSの文字セット回避が機能する仕組み

CVE-2026-21876として追跡されているこの脆弱性は、Apache ModSecurity、ModSecurity v3、Coraza環境で広く導入されているOWASP Core Rule Setの中核ルールに影響します。 

CRSはWebアプリケーションの第一防衛線として一般的に使用されているため、この欠陥により、エンコードされた攻撃ペイロードを遮断するよう設計されたWAF保護の有効性が低下し、バックエンドのアプリケーション制御への依存が高まります。

この問題はCRS 3.3.x〜3.3.7および4.0.0〜4.21.0に影響し、多数の本番環境が潜在的にリスクにさらされる可能性があります。  

問題の中心にあるのはルール922110で、これはmultipartフォームリクエスト内のUTF-7やUTF-16などの危険な文字エンコーディングを検知して遮断することを目的としています。 

これらのエンコーディングは、入力フィルタを回避し、単純な検証ロジックをすり抜けられる形で クロスサイトスクリプティング(XSS) ペイロードを送り込むために、攻撃者によって長年利用されてきました。

研究者は、このルールがmultipart HTTPリクエストのすべての部分を一貫して評価していないことを突き止めました。代わりに、最後のセグメントのみを検証し、それ以前のコンポーネントは完全に無視します。 

この挙動により、攻撃者は、悪意のあるUTF-7エンコードのJavaScriptペイロードをリクエストの早い段階のパートに配置し、最後のパートには無害なUTF-8コンテンツを続けるmultipartリクエストを構成できます。 

ルールが最後のセグメントしか検査しないため、リクエストはアラートを発生させることなく WAF を通過してしまう可能性があります。

この脆弱性にはCVSSスコア9.3が割り当てられており、リモートから悪用可能で、認証要件がないことを反映しています。 

現時点で能動的な悪用は報告されていませんが、この手法はよく知られたエンコーディングベースのXSS手法を用いており、実行に必要な労力は最小限です。 

OWASP CRSルールの不備によるリスクを低減する

最新のOWASP CRSアップデートを適用することが最も重要なステップですが、追加の制御により回避の試行を検知し、潜在的な影響を抑えることができます。

  • OWASP CRSの導入環境を直ちにアップグレードして、バージョン4.22.0(CRS 4.x)または3.3.8(CRS 3.3.x)にし、更新されたルールが実際に強制適用されていることを確認してください。
  • WAFの設定とログを確認し、multipartリクエストの検査が正しく機能していること、古いルールが残って読み込まれていないことを確認してください。
  • 受け入れる文字エンコーディングをUTF-8に制限し、Webサーバーおよびアプリケーション層でUTF-7などのレガシーエンコーディングを明示的にブロックしてください。
  • カスタムまたは代替の WAF ルールを実装し、文字セット宣言が混在している、または異常なmultipartリクエストを検知・遮断してください。
  • アプリケーション層の防御を強化し、堅牢な入力検証、コンテキストに応じた出力エンコーディング、制限的なContent Security Policy(CSP)ヘッダーを適用してください。
  • 監視とインシデント対応準備を強化し、異常なmultipartトラフィックパターンを追跡して保護策を検証してください。
  • 机上演習や攻撃シミュレーションを通じて、インシデント対応計画テストし、改善してください。

これらの対策を組み合わせることで、個々のルールに制約がある場合でも、WAF保護の有効性を維持するのに役立ちます。

セキュリティツールが常に機能すると想定するリスク

十分に確立され広く信頼されているセキュリティ制御であっても、日常的な運用だけでは検知しにくい微妙なロジックや実装上の欠陥によって損なわれる可能性があります。 

攻撃者がセキュリティツールのエッジケースを探ることにますます注力するにつれ、「設定して放置」型の保護に依存することは、時間の経過とともに効果が薄れていきます。 

この現実は、防御制御が進化する攻撃手法に直面しても意図どおりに機能し続けることを確実にするために、定期的な更新、検証、テストが必要であることを浮き彫りにしています。

その結果、多くの組織がセキュリティに関する前提を見直し、暗黙の信頼よりも継続的な検証を重視する ゼロトラスト原則 へと舵を切っています。

翻訳元: https://www.esecurityplanet.com/threats/owasp-crs-flaw-lets-encoded-attacks-slip-past-wafs/

ソース: esecurityplanet.com