SV.CLLOADER

このエラーは、プログラムがクラスローダーによってクラスをロードしようとしている場合に表示されます。

脆弱性とリスク

カスタムクラスローダーを使用してクラスを直接ロードする場合、悪意のあるコードのシステムへの侵入を許す可能性があります。

Klocwork セキュリティ脆弱性 (SV) チェッカーは、潜在的に危険なデータを生成する呼び出しを特定します。このような呼び出しは安全でないソースと考えられます。ユーザーは攻撃者になる可能性があり、ヒューマンエラーを取り込む可能性があるため、安全でないソースはユーザーが指定した任意のデータである可能性があります。

軽減と防止

既知の安全なクラスローダーを使用します。

例 1

10    public void loadMyClass(String maliciousClass) {
11      ClassLoader cLoader = ClassLoader
12          .getSystemClassLoader();
13      try {
14        cLoader.loadClass(maliciousClass);
15      } catch (ClassNotFoundException e) {
16        // TODO Auto-generated catch block
17        e.printStackTrace();
18      }
19    }

SV.CLLOADER が 14 行目の呼び出しに対して報告されています。クラスローダーが直接 'loadClass' の呼び出しに使用されています。