アプリケーションキャッシュオブジェクト=>セッションオブジェクトを取得し、変更して使用する必要があります。すべて正常に動作していますが、Fortify から Trust Boundary Violation の脅威を受けています (詳細はこちら) https://www.fortify.com/vulncat/en/vulncat/sql/trust_boundary_violation.html .
これを修正する方法についてのアイデアはありますか?
多くの場合、信頼境界違反は簡単に修正できるものではありません。これを本当に理解するには、セキュリティ監査者とアーキテクトに相談して、信頼境界とは何かを判断する必要があります。これを行うには、キャッシュ、エンド ユーザー、およびアプリケーションが接続する必要がある他のすべてのシステムを含む、アプリケーションの論理アーキテクチャを描画します。
次に、保護する必要があるアプリケーションの部分を点線で囲みます。この行内のすべては、チェックする必要のないものです...おそらく開発者によって作成されたすべてのデータであるか、入力検証関数によってスクラブされたものであり、それが唯一の種類のデータであると確信していますあなたが期待します。( https://www.owasp.org/index.php/Data_Validationを参照)
さて、キャッシュはどこにありますか?
信頼境界内にある場合、この信頼境界違反は誤検知であり、ソースがそのファイルまたはパッケージからのものである場合に問題が隠されるようにフィルターを作成できます。フィルターは次のようになります。
カテゴリ:「信頼境界違反」 パッケージ:com.example.mycachepackage
また
カテゴリ:「信頼境界違反」 ファイル:MyCacheObject.java
キャッシュが信頼境界の外にある場合、攻撃者がプログラムまたはユーザーを攻撃するためのメカニズムとしてキャッシュを使用する可能性があると想定されます。次に、データをキャッシュに入れたり、キャッシュから何かを取り出したりするたびに、すべてのデータをチェックする必要があります。
キャッシュ メカニズムの検証関数を定義したら、セキュリティ監査人または Fortify コンサルタントがカスタム検証ルールを作成し、修正された問題をすべて非表示にします。