因此,当我们在Web应用程序中扫描Veracode时,我发现许多跨站点脚本缺陷,
“网页中与脚本相关的HTML标记的不正确中和(基本XSS)”(CWE ID 80)。
而且,由于存在一些缺陷,我不知道如何解决此特定情况。 下面是我的代码-
$(".ui-dialog-buttonset .ui-button:visible").each(function(index, item) {
var label = $(item).text();
if (label == "Save" || label == "Create")
$(item).click();
});
我可以看到在$(item).text();
和$(item).click();
行上报告了缺陷。
我了解,对于文本,我可以使用DOMPurify.sanitize
之类的东西来清洁字符串。
但是,我不明白,为什么Veracode为$(item).click();
报告
是因为$(item)
本身不安全吗?
如果是,那我该如何解决?
在此方面的任何帮助,我将不胜感激。
答案 0 :(得分:0)
好的,可以从DOMPurify库中找到修复程序。
您也可以使用DOMPurify清理DOM元素。
因此,下面的代码有效-
item = DOMPurify.sanitize(item, {SAFE_FOR_JQUERY:true});