如何修复来自 getResultList 元素的 Checkmarx 存储 XSS 问题
How to Fix Checkmarx Stored XSS issue from a getResultList element
在Java中,在下面一行中:
TypedQuery<T> query=entityManger.createQuery(queryString, clazz);
List<T> result =query.getResultList();
意思是需要对变量结果进行适当的过滤或编码,否则可能会引发跨站脚本攻击。
我已经使用了 HtmlUtils.htmlEscape(queryString)
字符串对象。
如有任何帮助和建议,我们将不胜感激。谢谢
Checkmarx 最终会查看接收器(输出)。然后,您将必须在列表中的每个结果项目中执行 htmlEscape
List<T> newResult = new ArrayList<T>();
for (T temp : result) {
newResult.add(HtmlUtils.htmlEscape((String) temp));
}
在Java中,在下面一行中:
TypedQuery<T> query=entityManger.createQuery(queryString, clazz);
List<T> result =query.getResultList();
意思是需要对变量结果进行适当的过滤或编码,否则可能会引发跨站脚本攻击。
我已经使用了 HtmlUtils.htmlEscape(queryString)
字符串对象。
如有任何帮助和建议,我们将不胜感激。谢谢
Checkmarx 最终会查看接收器(输出)。然后,您将必须在列表中的每个结果项目中执行 htmlEscape
List<T> newResult = new ArrayList<T>();
for (T temp : result) {
newResult.add(HtmlUtils.htmlEscape((String) temp));
}