有人可以解释为什么VeraCode似乎认为使用name
作为公共财产是一个坏主意并提出一个好的评论缓解?
代码(JavaScript):
var BatchTask = (function () {
function BatchTask(batchOrTask, isBatch) {
if (isBatch) {
...
}
else {
var task = batchOrTask;
this.name = task.name; // flaw identified on this line
}
}
return BatchTask;
}());
缺陷:CWE-80: Improper Neutralization of Script-Related HTML Tags in a Web Page (Basic XSS)
攻击矢量:名称
描述:对name()的此调用包含跨站点脚本(XSS)缺陷。应用程序使用不受信任的方式填充HTTP响应 输入,允许攻击者嵌入恶意内容,例如 Javascript代码,将在受害者的上下文中执行 浏览器。 XSS漏洞通常被用来窃取或窃取 操纵cookie,修改内容的呈现和妥协 机密信息,发现新的攻击媒介 定期。
答案 0 :(得分:1)
在与Veracode协商后,他们已经确认这是假阴性,并且是他们将调查的引擎中的错误。