CheckmarxはSQLインジェクションの脆弱性として以下のコードスニペットを示します。 checkmarxレポートにCheckmarxハイライトコードをsqlinjectionの脆弱性として
「のreadLine要素からのユーザ入力を取得
下に示すように、以下のコードスニペットをdescibe。この要素の値は、 が適切 これを消毒又は検証されずにコードが流れる可能にすることができますSQLインジェクション攻撃」
簡潔さのために、私は完全なテキストを含んでいません。
InputStreamReader isr = null;
BufferedReader br = null;
try{
ClassPathResource defaultReports = new ClassPathResource(dbVendor + "/sql_inserts.sql");
isr = new InputStreamReader(defaultReports.getInputStream());
br = new BufferedReader(isr);
c = session.connection();
String sqlLine = null;
while((sqlLine = br.readLine()) != null) {
sqlLine = sqlLine.trim();
Statement st = null;
try{
st = c.createStatement();
st.execute(sqlLine);
}catch(SQLException e){
}catch(Exception e){
}finally{
if (st != null)
st.close();
}
}
}
//sql_inserts.sqlファイルには、私はそのチェックマークがコードスニペットとして高いSQLインジェクションの脆弱性を強調すべきではないway.After優しいcheckmarxするためのコードの上に変換するINSERTステートメントの
を設定する含まれています。
「これらのクエリのソースは正確に何か」 - コードパスに従って、クラスパス。 – Trejkaz