漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2014-059365
漏洞标题:移动微博交互型XSS的搞基利用
相关厂商:中国移动
漏洞作者: 路人甲
提交时间:2014-05-04 12:41
修复时间:2014-06-18 12:41
公开时间:2014-06-18 12:41
漏洞类型:xss跨站脚本攻击
危害等级:高
自评Rank:15
漏洞状态:已交由第三方合作机构(cncert国家互联网应急中心)处理
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2014-05-04: 细节已通知厂商并且等待厂商处理中
2014-05-07: 厂商已经确认,细节仅向厂商公开
2014-05-17: 细节向核心白帽子及相关领域专家公开
2014-05-27: 细节向普通白帽子公开
2014-06-06: 细节向实习白帽子公开
2014-06-18: 细节向公众公开
简要描述:
交互式xss二次包装
详细说明:
首先说一下这个xss点
移动微博首页发微博的时候 对短地址的包装存在问题 可以用引号闭合封装过程来构造一个交互式的xss
输入http://139url.cn/a"onmouseover="alert(1)"a="提交后此地址将被自动加上<a>标签 如图所示 引号无转移被引入,导致xss
但是这么一条微博 虽然是onmouseover,相信触发概率不会很高,而且太容易被发现了。下面说说怎么来二次包装这个交互型xss变成一条真正的蠕虫。
漏洞证明:
为了不被轻易发觉让虫子胎死腹中,首先想到的办法是用style来隐藏a标签
实际操作如下:
效果:
多写几个a还能增加触发概率,但总觉得还是有点不太蠕的起来。绝大多数的人滚动页面的时候鼠标会放到浏览器右侧 免得指针挡住中间的内容。
所以想到了第二套方案,指针劫持。
onmouseover嘛 鼠标滑过就行了,如果我在某个地方iframe加载这条微博的页面 然后设置iframe为隐藏且跟随鼠标(听起来是不是跟点击劫持很像?没错,确实差不多)。会有什么事发生呢。
包装好后的流程:
1、先去发一条onmouseover=$.getscript('xss.js');的微博 xss.js功能是获取crumb(移动微博的token 有了token想干啥都行了)并转发微博。
2、新建一个html页面,示例代码如下
body里的图片只是个演示 当然可以放任何东西了。
3、发一条诱惑点击的微博加上上面这个html的地址。
4、坐等虫儿慢慢蠕。
这个html的效果如下 打开后在页面任何位置稍微动一下鼠标 就触发xss了,实际测试中,点开微博链接新窗口中移动鼠标去关掉这个窗口 js已经执行了
修复方案:
1、xss修了
2、检查父窗口
版权声明:转载请注明来源 路人甲@乌云
漏洞回应
厂商回应:
危害等级:中
漏洞Rank:10
确认时间:2014-05-07 21:53
厂商回复:
CNVD确认并复现所述情况,已经转由CNCERT直接通报给中国移动集团公司处置
最新状态:
暂无