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

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

缺陷编号:wooyun-2013-022595

漏洞标题:浏览器解析问题造成的存储型跨站漏洞

相关厂商:DVBBS

漏洞作者: 杀戮

提交时间:2013-04-27 11:54

修复时间:2013-04-28 21:57

公开时间:2013-04-28 21:57

漏洞类型:设计错误/逻辑缺陷

危害等级:中

自评Rank:20

漏洞状态:未联系到厂商或者厂商积极忽略

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

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2013-04-27: 积极联系厂商并且等待厂商认领中,细节不对外公开
2013-04-28: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

就是要带感~~~
据说DVBBS自己都懒得维护,哥您看着给点Rank就行了。。。。。。。

详细说明:

先说说浏览器的对于标签的解析。

<A>文本段 1<B>文本段 2</B>文本段 3</A>


1.解析中解析到<b>的时候先把文本段1入栈。
2.解析到b的结束标签后把文本2入栈。
3.解析出a的结束标签再把文本3入栈。
所以一些流行的技术是通过一些优先级高的标签截断。
这里谈的是关于DOM解析和渲染造成的XSS。
DOM渲染就是,标签和属性正确闭合。
先来看一个例子,DVBBS的
对输出在属性的内容习惯性的做法是编码单引号和双引号,这里的例子将两者都编码了。

360软件小助手截图20130426220642.jpg


现在我们看下如何绕过,一般编码了这两玩意都没救了,但是结合下浏览器的特性。
我们输入

<a test=onclick=alert(1);//


360软件小助手截图20130426221130.jpg


这是为什么,很简单。
浏览器解析的时候遇到

<a

视为标签,然后就会去试图找到结束标签。
我们在属性中插入 <a 会被浏览器视为标签 然后我们输入<a test= test就会被视为属性名,因为DOM的渲染,所以test标签在重构的时候自动闭合 但是然后前面的属性就会被闭合掉 就是test=重构的时候成为了test="" 但是因为输出在属性中 所以 src会被闭合,我们后面输入的onclick=alert(1);// 会被再次闭合 XSS插入成功。

<img src="&lt;a test=" onclick="alert(1);//&quot;&quot;" onload="imgresize(this);">


漏洞证明:

上面上面

修复方案:

这是广告
http://t.qq.com/SlaughterSain

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


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝