0

プレゼンテーション レイヤーで jsf プライムフェイスを使用し、ORM ツールとして休止状態を使用しています。セキュリティ ツールを実行してコードのセキュリティ レベルをチェックしているときに、ブラインド SQL インジェクションの警告がほとんど表示されません。この脆弱性が発生したときの基本的な理由はわかっています。確認するために、作成されたほとんどのクエリをチェックしたところ、すべてのクエリが次の正しいパターンに従っていることがわかりました。

    SELECT col  FROM table  WHERE col = :Identifier

次に、getNamedQuery を使用してクエリを取得します。識別子を設定するには、セッター メソッドを使用します。

セキュリティ チェック ツールによって生成されたレポートには、 などの UI コンポーネント ID が含まれています。

次の変更が元のリクエストに適用されました: - パラメータ「form:someDropDown_input」の値を「0%2B0%2B0%2B1」に設定します - パラメータ「form:someDropDown_input」の値を「12345%2B12345%」に設定します2B1'

また、他のいくつかの場所では、問題を次のように示しています

次の変更が元のリクエストに適用されました: - パラメータ「javax.faces.partial.execute」の値を「%40all%27+and+%27f%27%3D%27f」に設定します

エラーレポートからはほとんど何も理解できません。ですから、どこに問題があるのか​​教えてください。

4

1 に答える 1