Javascript 选项卡在 HP fortify 扫描中导致严重错误 (XSS)
Javascript tabs cause a critical error (XSS) in HP fortify scan
我有一个 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);
仍然很关键。
有人想通过它吗?
@Carlos Mendieta 我同意你的看法。我认为 Fortify 在这里错误地报告了一个问题。您没有为 window.location.href 赋值,您只是在变量中设置值。关于安全堆栈交换 security stack exchange: JS code giving xss vulnerability 的讨论本质上是相同的。我会看看您是否可以调整 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);
仍然很关键。
有人想通过它吗?
@Carlos Mendieta 我同意你的看法。我认为 Fortify 在这里错误地报告了一个问题。您没有为 window.location.href 赋值,您只是在变量中设置值。关于安全堆栈交换 security stack exchange: JS code giving xss vulnerability 的讨论本质上是相同的。我会看看您是否可以调整 Fortify 以不报告此项目。