Javascript选项卡会在HP fortify扫描中导致严重错误(XSS)

时间:2017-02-22 17:40:33

标签: javascript xss fortify

我有一个javascript标签库我一直都很好,但是随着我们最近升级的Fortify,我们在代码的window.location部分遇到了一个严重的错误(编辑,应该已经提到了这是原始代码,在修改之前):

var b=window.location.href;

我们的第一个修改是:

var b = (escape(window.location.href.toString()));

当失败时,我们发现并尝试了以下内容:

var b = (encodeID(window.location.href.toString()));

function encodeID(s) {
    if (s==='') return '_';
    return s.replace(/[^a-zA-Z0-9.-]/g, function(match) {
    return '_'+match[0].charCodeAt(0).toString(16)+'_';
    });
}

但Fortify的另一次运行仍然会引发严重错误。 还尝试过:

var b=encodeURIComponent(window.location.href);

仍然很关键 有人想让它通过吗?

1 个答案:

答案 0 :(得分:1)

@Carlos Mendieta我同意你的看法。我认为Fortify在这里错误地报道了一个问题。您没有为window.location.href赋值,只需在变量中设置值即可。关于安全堆栈交换security stack exchange: JS code giving xss vulnerability的讨论基本上是相同的。我想看看你是否可以调整Fortify以便不报告这个项目。