漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2012-06605
漏洞标题:搜狐微博:1个内容存储型XSS+1×N个反射型XSS
相关厂商:搜狐
漏洞作者: gainover
提交时间:2012-05-02 14:34
修复时间:2012-06-16 14:34
公开时间:2012-06-16 14:34
漏洞类型:xss跨站脚本攻击
危害等级:高
自评Rank:20
漏洞状态:厂商已经确认
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2012-05-02: 细节已通知厂商并且等待厂商处理中
2012-05-02: 厂商已经确认,细节仅向厂商公开
2012-05-12: 细节向核心白帽子及相关领域专家公开
2012-05-22: 细节向普通白帽子公开
2012-06-01: 细节向实习白帽子公开
2012-06-16: 细节向公众公开
简要描述:
之前看到皮鞋啊,老酸奶,胶囊的新闻的时候,看到 郁闷的小崔 在搜狐发的微博, 有个跳转,随手试了下,又看了下源码,没过滤。
那时候本来打算发到乌云来的, 就看了下搜狐对反射型的XSS的评价,基本都在5分,我想着啊,我这个估计也就能换个5分,就攒着以后再发吧~~
今天又随手测试了下,发现了另外一个存储型XSS。内容里的哦,危害大家都知道的~~
详细说明:
1. 漏洞1: 反射型XSS。
漏洞URL:http://t.sohu.com/m/3398041534 (任何一条微博都可以的啦~~)
漏洞函数:
URL跳转时候没有过滤 toUrl
漏洞利用, 随便发一条微博,内容为
让人震撼的XXX电影,史上最强大雷人的阵容, @谁谁谁,@谁谁谁, http://t.sohu.com/m/3398041534/#javascript:alert%28document.cookie%29%3B
点击即可中招。 具体图片见漏洞证明!
这第一个漏洞的更强大的位置在于。。
几乎所有整个搜狐微博的各个页面,都有上面这段漏洞函数。
比如: http://t.sohu.com/home (登录后,直接 http://t.sohu.com/home#javascript:alert(document.cookie);可见效果。)
因为 http://t.sohu.com/m/\d+ 以及 http://t.sohu.com/.+ 都存在该XSS,
所以俺说 是1×N 个反射型XSS。
平台:IE及Chrome下均有效。
Besides,
相比传统的反射型漏洞,加个<script>xxx</script>什么的, 容易被IE和其他浏览器自带的防护拦截。
这种 location.href="javascript:xxxx" 不会受到这种影响。 所以此洞更有优势。
-------------------------华丽的分割线--------------------
2. 漏洞2:内容存储型XSS。
提交微博内容时:pics 字段为JSON数据, JSON数据里的 url 过滤了双引号,但是没过滤单引号。 导致跨站。
构造以下理由代码: 即在地址后面 xxx.png',a:(function(){alert('xx');})(),b:'
发送此微博后, 其它用户点击内容图片即可触发。
图片长度有一定限制, 查看了下源码,搜狐微博用了jquery, 直接调用jQuery的getScript函数。调用站外JS。
剩下的事情,就在我们的JS里完成即可咯~~ 蠕虫神马的~
具体效果见图片证明。
漏洞证明:
修复方案:
1. 反射型的那个,修改漏洞函数,对#后面来源的地址拿正则判断下咯。
2. 存储型的这个,过滤url里的单引号
版权声明:转载请注明来源 gainover@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:15
确认时间:2012-05-02 14:57
厂商回复:
thanks.
最新状态:
暂无