【发布时间】:2019-05-25 07:30:03
【问题描述】:
我目前正在按照 veracode 标准重构现有代码。我有一段代码,其中 Order By 子句是根据用户输入动态创建的。在 veracode 中建议使用命名参数,但这是不可能的。下面是代码库。请帮助解决可能的问题。
orderClauses.append("ORDER BY ");
orderClauses.append(report.getSortColumn1()));
orderClauses.append(" ");
orderClauses.append(report.getSortOrder1());
【问题讨论】:
-
好吧,不要将用户提交的值附加到您的查询中。将用户输入用作已知有效值映射的键,并将这些已知有效值附加到您的查询中。
-
@JBNizet 不适合我。它仍然显示为veracode中的sql注入问题。
-
然后该工具通过向您显示潜在问题来完成其工作,现在您已经解决了实际问题,它会向您显示误报。所以忽略这个误报。它只是一个工具
标签: java sql-injection named-parameters veracode