SV.SERIAL.NON
SV.SERIAL.NON は、クラスが Serializable インターフェイスを実装している場合に発生します。
脆弱性とリスク
オブジェクトはシリアル化される場合、Java ランタイム環境の制御外、つまり Java によるセキュリティの制御外にあります。リスクは、企業のポリシーで決定されます。
Klocwork セキュリティ脆弱性 (SV) チェッカーは、潜在的に危険なデータを生成する呼び出しを特定します。このような呼び出しは安全でないソースと考えられます。ユーザーは攻撃者になる可能性があり、ヒューマンエラーを取り込む可能性があるため、安全でないソースはユーザーが指定した任意のデータである可能性があります。
軽減と防止
必要がない限り、Serializable の実装は避けます。Serializable を実装する場合には、システムリソースへのハンドルやアドレス空間に関連した情報を含むフィールドに対して transient を使用します。
例 1
コピー
public class SV_SERIAL_NON_Sample_1 implements Serializable {
}
SV.SERIAL.NON が 10 行目のクラス宣言に対して報告されています。クラス 'SV_SERIAL_NON_Sample_1' が 'java.io.Serializable' を実装しています。
セキュリティトレーニング
Secure Code Warrior が提供しているアプリケーションセキュリティトレーニング教材。