Javaミドルウェア脆弱性の重複排除
Javaエージェントの6.11.1以降、フィルタなどのミドルウェアコンポーネントを使用するアプリケーションで発生する重複した脆弱性を軽減する拡張機能が含まれています。このアップデートにより、ミドルウェア層に起因する検出結果の重複を排除することで、Contrastの脆弱性報告の精度と効率が向上します。
ミドルウェアコンポーネントは、Webアプリケーションで重要な役割を果たします。リクエストがサーブレットやコントローラに到達する前に、それをインターセプトして処理したり、サーブレットやコントローラの処理が完了した後のレスポンスを処理したりします。
フィルタは、サーブレットに渡される前にリクエストを受け取り、 クライアントに返される前にレスポンスを処理するコンポーネントです。フィルタは、リクエストのルーティングデータ、現在のコントローラ、 その他のコンテキスト情報にアクセスできます。
なぜこのアップデートが重要なのですか?
多くの場合、ルートとミドルウェアの両方に関連付けられた脆弱性によって、重複した検出結果が生じ、セキュリティ担当が確認する必要のある脆弱性の数が膨れ上がります。このような状況では、修復作業において時間の浪費、優先順位の見落とし、非効率性を引き起こします。新しい重複排除機能を有効にすることで、不要なノイズが削減し、アプリケーションの全体的なセキュリティ体制が改善されます。
機能
ミドルウェアのインストゥルメンテーション:Javaエージェントは、フィルタやミドルウェアを固有のソースとして認識するようになり、これらの層内で特定された脆弱性を適切に分類して報告できるようになりました。
脆弱性の名前に、ミドルウェアコンポーネントで脆弱性が検出されたことを示すものが含まれます。例えば、フィルタで検出された脆弱性は、次の例のようになります。
重複排除のプロセス:ミドルウェアの脆弱性が検出されると、それらに関連付けられているルートベースの脆弱性から自動的に重複排除されます。
自動検証のサポート:ミドルウェアで検出された脆弱性は、時間ベースの自動検証の対象となります(脆弱性の管理ポリシーを参照)。この時間ベースの自動検証により、解決された脆弱性を検証するプロセスが合理化され、手動による介入が削減します。
ルートベースおよびセッションベースの自動検証は、現在サポートされていません。
包括的なレポートの作成:ミドルウェアの脆弱性が脆弱性レポートとテレメトリに反映され、これらの検出結果のステータスとライフサイクルを明確に把握できます。
仕組み
フィルタの処理:Javaエージェントはフィルタを監視し、フィルタに関連付けられている可能性のある脆弱性に関する情報を収集します。このプロセスでは、リクエストのライフサイクルのコンテキスト(特にこれらの脆弱性が発生するフィルタ)において、脆弱性を特定します。
重複排除ロジックと脆弱性の特定:ミドルウェア/フィルタとルートは、それぞれ別の脆弱性ソースとして扱われます。エージェントは、ルートに起因する脆弱性とミドルウェアコンポーネントに起因する脆弱性を区別します。
自動検証:ミドルウェアベースの脆弱性は自動検証のワークフローに自動的に含まれます。包括的なカバレッジを確保するために、時間ベースの自動検証の使用を推奨します。脆弱性の自動検証ポリシーの設定で、時間ベースの自動検証を設定する方法について説明しています。
セッションベースの自動検証(SBAV)とルートベースの自動検証(RBAV)は、現在のところワークフローには含まれていません。
アップグレードに関する考慮事項
オンプレミス版のお客様:Javaエージェントをアップグレードする前に、Contrastのバージョンを3.11.8以降にアップグレードしてください。Contrastをアップグレードする前にエージェントをアップグレードすると、新しいミドルウェアのルートが表示され、ルートカバレッジメトリクスに大きな変更が生じる可能性があります。
既存の脆弱性への影響:Javaエージェントをアップグレードすると、脆弱性レポートの精度が向上します。
ただし、更新前に重複していた既存の脆弱性はシステムに残ります。自動検証ポリシーを設定していない場合は、古い脆弱性を手動で削除することを検討してください。重複の可能性がある脆弱性を特定するには、Contrast Webインターフェイスの「脆弱性」ページでシンクごとにグループ化オプションを選択してください。
さらにサポートが必要な場合は、担当のカスタマーサクセスマネージャーまたはContrastサポートにお問い合わせください。