繁体   English   中英

在Java中动态创建的order by子句在Vercode扫描中显示为sql注入问题

[英]Dynamically created order by clause in java showing as sql injection issue in Vercode scan

我目前正在按照veracode标准重构现有代码。 我有一段代码,其中Order By子句是根据用户输入动态创建的。 在Veracode中,建议使用命名参数,但这是不可能的。 下面是代码库。 请提供可能的解决方案。

orderClauses.append("ORDER BY ");
orderClauses.append(report.getSortColumn1()));
orderClauses.append(" ");
orderClauses.append(report.getSortOrder1());

更改

orderClauses.append(report.getSortColumn1()));

...
Set<String> columnsSet; 
// fill columnsSet for your query
...
String col = report.getSortColumn1();
col = columnsSet.has(col) ? col : "";
...
orderClauses.append(col);
...
//etc

或为带有反射,注释等的报告编写出色的类。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM