当我们对项目进行安全审核时,我们得到了损坏的链接“ / a”漏洞。

在搜索整个项目的链接之后,我们在项目中使用的JQuery-1.9.js java-script文件中找到了链接。

该JQuery-1.9.js中的一小段代码-

// Make sure that URLs aren't manipulated
// (IE normalizes it by default)
hrefNormalized: a.getAttribute("href") === "/a",


根据我的理解,此代码部分有助于使其(JQuery)与IE 6/7/8兼容。
hrefNormalized用于检查锚标记是否将href值提供为完整URL或确切的href,这是IE版本中的问题。
这部分的更好解释在
https://www.inkling.com/read/jquery-cookbook-cody-lindley-1st/chapter-4/recipe-4-1

我想删除此漏洞,但我不想删除或更改JQuery js文件中的代码。

所以,我的问题是,为什么JQuery设计人员不使用“ /#”而不是“ / a”。在该代码中使用“ /#”是什么问题。

之前有人向JQuery团队询问了相同的问题,但他们告诉Jquery并不是问题。
供该票参考
http://bugs.jquery.com/ticket/10149

帮助我解决还是存在其他解决方案?

谢谢

最佳答案

这不是漏洞,而是误报。安全扫描程序将“ / a”字符串解释为链接,但不是。

即使jQuery在DOM中创建链接,用户也无法点击或看到该链接。您的网站实际上没有任何地方到/ a的真实链接。

我将不更改任何问题而忽略该问题。

10-07 19:24
查看更多