Javascript 选择器在我的网站上解释为HTML。攻击者能否轻松利用此漏洞?

Javascript 选择器在我的网站上解释为HTML。攻击者能否轻松利用此漏洞?,javascript,jquery,html,security,Javascript,Jquery,Html,Security,我有一个只能通过https访问的网站 它不会从其他来源加载任何内容。因此,所有内容都在本地Web服务器上 使用Retire.js Chrome插件,我得到一个警告,即我包含的jquery 1.8.3易受“选择器解释为HTML”的攻击 jQuery错误 我正试图激发快速升级的动力,但我需要一些更具体的信息来激发升级的动力。 我的问题是: 鉴于上述情况,我应该担心吗 这会导致XSS类型的攻击吗 这个bug告诉你的是,jQuery可能会错误地识别一个包含的选择器。这个bug告诉你的是,jQuery可能

我有一个只能通过https访问的网站

它不会从其他来源加载任何内容。因此,所有内容都在本地Web服务器上

使用Retire.js Chrome插件,我得到一个警告,即我包含的jquery 1.8.3易受“选择器解释为HTML”的攻击 jQuery错误

我正试图激发快速升级的动力,但我需要一些更具体的信息来激发升级的动力。 我的问题是:

鉴于上述情况,我应该担心吗

这会导致XSS类型的攻击吗


这个bug告诉你的是,jQuery可能会错误地识别一个包含的选择器。这个bug告诉你的是,jQuery可能会错误地识别一个包含的选择器。作为Retire.js的作者,让我来解释一下。jQuery的旧版本中有两个弱点,但它们本身并不是漏洞。这取决于jQuery的使用方式。这里展示了两个滥用bug的例子:research.securelabs.org/jquery/test/

这两个例子是:

$("#<img src=x onerror=...>") 
当单页web站点开始出现时,这是许多web站点的一种相当常见的模式

因此,当且仅当您将不受信任的用户数据放入jQuery选择器函数中时,这就会成为一个问题


是的,如果站点确实易受攻击,那么最终结果就是XSS。https不会保护您免受这些缺陷的侵害。

作为Retire.js的作者,让我来解释一下这一点。jQuery的旧版本中有两个弱点,但它们本身并不是漏洞。这取决于jQuery的使用方式。这里展示了两个滥用bug的例子:research.securelabs.org/jquery/test/

这两个例子是:

$("#<img src=x onerror=...>") 
当单页web站点开始出现时,这是许多web站点的一种相当常见的模式

因此,当且仅当您将不受信任的用户数据放入jQuery选择器函数中时,这就会成为一个问题



是的,如果站点确实易受攻击,那么最终结果就是XSS。https无法保护您免受此类缺陷的侵害。

既然该缺陷已经修复,为什么不使用过去三年发布的任何版本的jQuery?!例如,或者更高版本,你知道,在我写这篇文章的时候,理想的情况是v1.11.3或v2.1.4。很好的一点@T.J.Crowder,不幸的是,我从其他人那里接管了这个网站,而且它是一个大型网站,测试人员需要手动重新测试:看看自v1.8.3以来API的变化,你不会发现有什么让你担心的。使用旧东西总是让门开着。@T.J.克劳德。如果由我决定,我现在就升级。不幸的是,它们需要在正常的开发周期中进行数周的测试。我想知道如何使升级更快地达到预期的效果,并说攻击者可以很容易地利用这一点。现在我所拥有的只是jQuery的bug,这个bug并没有太大的发展空间。@T.J.Crowder PS stackoverflow.com使用jQuery 1.7.1,它也有同样的问题。既然这个bug已经修复,为什么不使用过去三年发布的任何版本的jQuery呢?!例如,或者更高版本,你知道,在我写这篇文章的时候,理想的情况是v1.11.3或v2.1.4。很好的一点@T.J.Crowder,不幸的是,我从其他人那里接管了这个网站,而且它是一个大型网站,测试人员需要手动重新测试:看看自v1.8.3以来API的变化,你不会发现有什么让你担心的。使用旧东西总是让门开着。@T.J.克劳德。如果由我决定,我现在就升级。不幸的是,它们需要在正常的开发周期中进行数周的测试。我想知道如何使升级更快地达到预期的效果,并说攻击者可以很容易地利用这一点。现在我只剩下jQuery的bug了,这并没有太多问题。@T.J.Crowder PS stackoverflow.com使用jQuery 1.7.1,它也容易出现同样的问题。谢谢@T.J.Crowder。因此,会话可能会被这种漏洞劫持?@rjdkolb:您的代码是否会存储用户提供的选择器,然后在其他用户的会话中使用它们?再次感谢。据我所知,没有,但是有很多页要看。在我的第一次搜索中,所有选择器仅在本地浏览器上下文中。谢谢@T.J.Crowder。因此,会话可能会被这种漏洞劫持?@rjdkolb:您的代码是否会存储用户提供的选择器,然后在其他用户的会话中使用它们?再次感谢。据我所知,没有,但是有很多页要看。在我的第一次搜索中,所有选择器仅在本地浏览器上下文中。谢谢@Erlend。所以,即使我的网站使用了这些功能,里面的内容也需要是动态的,才能有这样的弱点?是的,但记住什么是动态的很重要。它可以是服务器端数据,也可以是客户端浏览器属性,如位置、window.name等。谢谢@Erlend。所以,即使我的网站使用了这些功能,里面的内容也需要是动态的,才能有这样的弱点?是的,但记住什么是可以的是很重要的 e动态。它可以是服务器端数据,也可以是客户端浏览器属性,如位置、window.name等。
$(location.hash)