估计会弹的不只这一家
[EMAIL PROTECTED] <[EMAIL PROTECTED]> 写道: > > 怎么163也是这样,我一打开就弹了。 > > > > > [EMAIL PROTECTED] 写道: > >漏洞说明:QQ Mail是Tencent公司提供的webmail服务,你可以使用你的QQ帐户来登陆使用Mail服务,具体的信息可以访问 > >http://mail.qq.com/。 <http://mail.qq.com/%E3%80%82>但是80sec团队成员在QQ > >Mail里发现存在跨站脚本漏洞,恶意用户可以通过该漏洞在邮件里伪造登陆表 > >单窃取目标用户的密码以及偷取Cookie以取得其他用户的身份,或者使用ajax等技术读取用户的敏感信息。 > > > >漏洞成因:QQ Mail的Javascript Dom部分在处理邮件内容,对邮件内容字符串的处理分为str和code两个流程,通过组合的标签内 > >容可以误导Javascript处理图片内容和文字链接进入str流程,将HTML编码字符串还原为HTML标签。 > > > >漏洞测试:(已经修复) > > > >发送如下内容即可引发XSS > > > > > ><img src="http://src=" onerror="alert(x111)"> > > > > >漏洞解析: > > > >QQ Mail会自动解析邮件内容,发现匹配的链接将转换成HTML内容,由LinkMaker函数实现: > > > > > >function LinkMaker( str ) { > >return str.replace( /(https?:\/\/[\w.]+[^ \f\n\r\t\v\"\\\<\>\[\]\u2100- > >\uFFFF]*)|([EMAIL PROTECTED])/ig, function( s, v1, > >v2 ) { > >if ( v2 ) > >return [ '', v2, ' <',%20v2,%20'>' ].join( "" ); > >else > >return [ '', s, ' > ><http://tg1a117.mail.163.com/a/f/js3/0805191246/',%20s,%20'>' ].join( "" ); > >} ); > > > >SwapImg函数处理邮件中IMG标签: > > > > > >function SwapImg(id, ajustValue) > >{ > >var as = GelTags("img", S(id)); > >for (var i = 0; i < as.length; i++) > >{ > >if (as[i].src) > >{ > >ZoomImgToBody(as[i], ajustValue); > >as[i].onload = function() > >{ > >ZoomImgToBody(this, ajustValue, true); > >}; > >} > >} > >} > > > >进入str流程将会使用DOM中的innerText和textContent处理字符串,邮件中的HTML编码字符串转成HTML标签(<将转 > >换成"<",>将转换成">"),如下的测试: > > > > > > > > ><img src="" onerror="alert(1);"> > > > > > > >漏洞状态: > > > >80sec于7.4号发现此漏洞 > >80sec于7.4号通知官方 > >Tencent于7.4号修复此漏洞 > >80sec于7.7号发布此漏洞公告 > > > >漏洞解决: > > > >QQ Mail已经修补漏洞,转义字符串中的"<" ,">". > > > >修改js在http://res.mail.qq.com/zh_CN/htmledition20080626/js/all.js > > > > > >var str = obj.nodeValue.replace(//g,">"); // > >1993行 > > > >建议程序员使用DOM中的元素的时候要注意安全问题,这些元素还是由用户输入中带来的,使用之前还是需要过滤。 > > > >感谢幻影dummy和luoluo提供和调试该漏洞。 > > > > > >> > > > > ------------------------------ > 渊波阔宅 湖景人生 > > <http://popme.163.com/link/003984_0707_2982.html> > -- I am aking --~--~---------~--~----~------------~-------~--~----~ 要向邮件组发送邮件,请发到 [email protected] 要退订此邮件,请发邮件至 [EMAIL PROTECTED] -~----------~----~----~----~------~----~------~--~---

