如何防止ASP木马
作者:小七 日期:2008-06-27
ASP木马攻击原理一般是通过文件上传漏洞,传送木马文件到服务器里,然后运行就可以读取你系统里的所有资料了。一般的ASP木马文件是利用FSO组件进行操作的,也有不用FSO组件的。针对如上情况,要如何去防止ASP木马,就必须做好如下三方面:
- 服务器的权限设置
- 做好ASP程序的验证功能,防止有漏洞被利用
- 关闭或更改相关的组件名称
前面两方面可以查阅创新网站的相关文章,在这里主要是说第3个方面
1.针对利用FSO写的ASP木马的防止办法是最好的防止方式是把FSO功能关掉
在开始--运行处输入:Regsvr32 /u c:\windows\system32\scrrun.dll 。如果想再用该组件可以在运行处再输入Regsvr32 c:\windows\system32\scrrun.dll 重新注册一下便可以用了。
网络上现在有些文章在说,查找注册表中 HKEY_CLASSES_ROOT\Scripting.FileSystemObject 键值
将其更改成为你想要的字符串(右键-->"重命名"),比如更改成为HKEY_CLASSES_ROOT\Scripting.FileSystemObject2这样,在ASP就必须这样引用这个对象了:Set fso = CreateObject("Scripting.FileSystemObject2") 而不能使用: Set fso = CreateObjec("Scripting.FileSystemObject")
这种方法是行不通的,因为FSO除了用对象调用,还可以用调用classid
比如:<object runat="server" id="fso" scope="page" classid="clsid:0D43FE01-F093-11CF-8940-00A0C9054228"></object>
这样也能调用
所以说要改的话还行查找0D43FE01-F093-11CF-8940-00A0C9054228这个键值,然后改掉,但是这样改完以后FSO也就不能用了。所以推荐还是把组件关掉,如果要上传的话可以自行编写一个上传组件。这样会安全一些。
2.免FSO对像就能使用的ASP木马防范方法
通过上面的代码,我们可以看出这段代码的SHELL是通过shell.application 建立 shell 对像的,我们只要在注册表里查找键值 shell.application,shell.application.1和 wscript.shell,wscript.shell.1 键值,然后把这些键值删除,就能防止这一类的ASP木马攻击了,删除这些键值对你的服务器及ASP支持等不会造成影响的,所以请放心删除。各黑客网站上还有各种各样的WEBSHELL下载,除了ASP的WEBSHELL以外,还有CGI、PHP、JSP的等等。基本上都是大同小异的,还有一些WEBSHELL是调用系统下的CMD.EXE命令运行的。但这些调用服务器系统CMD.EXE的WEBSHELL木马在 Win2003下没法运行了,能调用CMD.EXE命令的WEBSHELL只在Win2K下测试通过,在Win2003下,那些ASP、CGI、PHP、 JSP的WEBSHELL已经不能调用CMD.EXE的命令了。原因很简单,因为Win2K下的CMD.EXE命令在默认情况下是能以匿名及来宾权限访问的,而Win2003系统下,CMD.EXE命令却禁止了“Everyone”匿名访问及“Guests”组的访问权限了,所以各种调用CMD.EXE的 WEBSHELL木马都没法运行了,这也算是Win2003系统安全上的一点进步吧。
当然第个对像都有相应的classid值,一样找出来进行删除
wscript.shell (classid:72c24dd5-d70a-438b-8a42-98424b88afb8)
wscript.shell.1 (classid:f935dc22-1cf0-11d0-adb9-00c04fd58a0b)
wscript.network (classid:093ff999-1ea0-4079-9525-9614c3504b74)
wscript.network.1 (classid:093ff999-1ea0-4079-9525-9614c3504b74)
adodb.stream (classid:{00000566-0000-0010-8000-00aa006d2ea4})
|
经过如上处理后,哪怕是有ASP木马传到你的服务器,也能阻止它的一些破坏行为
上一篇
下一篇

文章来自:
Tags: