JQuery跨站脚本漏洞

原理:

  • jQuery中过滤用户输入数据所使用的正则表达式存在缺陷,可能导致 location.hash 跨站漏洞

影响范围:

  • 版本低于1.7的jQuery过滤用户输入数据所使用的正则表达式存在缺陷,可能导致LOCATION.HASH跨站漏洞

已测试成功版本:

  • jquery-1.6.min.js,jquery-1.6.1.min.js,jquery-1.6.2.min.js
    jquery-1.5所有版本
    jquery-1.4所有版本
    jquery-1.3所有版本
    jquery-1.2所有版本

测试:

启动nginx,并建立index.html页面,内容如下:

漏洞发现者给的测试代码:

<html>

<head>

    <title>JQuery-xss-test</title>

    <script src="https://code.jquery.com/jquery-1.6.1.min.js"></script>

    <script>

    $(function(){

    try { $(location.hash) } catch(e) {}

    })

    </script>

</head>

<body>

    Jquery xss test.

</body>

</html>

访问地址:

http://localhost/jqxss/#

测试截图:
用ie可以成功,其他浏览器未成功
JQuery跨站脚本漏洞_第1张图片

你可能感兴趣的:(web漏洞,安全)