监控安装 ERP

系统集成论坛

 找回密码
 注册通行证

QQ登录

只需一步,快速开始

路由器交换机防火墙系统集成商城 优质产品采购平台
查看: 3085|回复: 0
打印 上一主题 下一主题

wscript.shell等组件卸载保证web服务器安全

[复制链接]
跳转到指定楼层
1
发表于 2012-5-12 16:21:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
华为金牌代理
我们知道法对ASP类危险组件是 wscript.shell等 所以我们必须防止他们

最简单的办法是直接卸载后删除相应的程序文件。将下面的代码保存为一个.BAT文件,( 以下均以 WIN2000 为例,如果使用2003,则系统文件夹应该是 C:\WINDOWS\ )

regsvr32/u C:\WINNT\System32\wshom.ocx
del C:\WINNT\System32\wshom.ocx
regsvr32/u C:\WINNT\system32\shell32.dll
del C:\WINNT\system32\shell32.dll

然后运行一下,WScript.Shell, Shell.application, WScript.Network就会被卸载了。可能会提示无法删除文件,不用管它,重启一下服务器,你会发现这三个都提示“×安全”了。

如何卸载Wscript.Shell等对象
1、卸载wscript.shell对象
在cmd下运行:regsvr32 WSHom.Ocx   /u
2、卸载FSO对象
在cmd下运行:regsvr32.exe scrrun.dll /u
3、卸载stream对象
在cmd下运行:
regsvr32 /s /u "C:\Program Files\Common Files\System\ado\msado15.dll"
如果要重新启用:请把/u参数对掉就行了!

禁止WScript.Shell
防范此类病毒的方法就是将Windows scripting host卸载掉,
具体方法是:我的电脑→控制面板→添加/删除程序→安装WINDOWS→
附件→详细资料→Windows scripting host→确定。其实还有一种方法更简单,
依次键入下面两段命令:regsvr32/u wshom.ocx回车、regsvr32/u wshext.dll回车,
就可以把注册表中.wsh对象的注册值删掉。这样那些必须依靠对象运行的病毒就因
为找不着对象而无法运行下去。

\\\\\\\\\\\\\\\\\\\\\\\\\\
防范Wscript.Shell组件的方法:
可以通过修改注册表,将此组件改名。
HKEY_CLASSES_ROOT\WScript.Shell\及HKEY_CLASSES_ROOT\WScript.Shell.1\
改名为其它的名字,如:改为WScript.Shell_ChangeName或WScript.Shell.1_ChangeName自己以后调用的时候使用这个就可以正常调用此组件了
也要将clsid值也改一下
HKEY_CLASSES_ROOT\WScript.Shell\CLSID\项目的值
HKEY_CLASSES_ROOT\WScript.Shell.1\CLSID\项目的值
也可以将其删除,来防止此类木马的危害。
防范Shell.Application组件的方法:
可以通过修改注册表,将此组件改名。
HKEY_CLASSES_ROOT\Shell.Application\

HKEY_CLASSES_ROOT\Shell.Application.1\
改名为其它的名字,如:改为Shell.Application_ChangeName或Shell.Application.1_ChangeName
自己以后调用的时候使用这个就可以正常调用此组件了。
也要将clsid值也改一下
HKEY_CLASSES_ROOT\Shell.Application\CLSID\项目的值
HKEY_CLASSES_ROOT\Shell.Application\CLSID\项目的值
也可以将其删除,来防止此类木马的危害。

======================================================
以上是海洋中的相关代码,从上面的代码我们不难看出一般ASP木马、Webshell主要利用了以下几类ASP组件:  
  ① 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)  
  ⑤ FileSystem Object (classid:0D43FE01-F093-11CF-8940-00A0C9054228)  
  ⑥ Adodb.stream (classid:{00000566-0000-0010-8000-00AA006D2EA4})  
  ⑦ Shell.applicaiton....  
  hehe,这下我们清楚了危害我们WEB SERVER IIS的最罪魁祸首是谁了!!开始操刀,come on...  
  2:解决办法:  
  ① 删除或更名以下危险的ASP组件:  
  WScript.Shell、WScript.Shell.1、Wscript.Network、Wscript.Network.1、adodb.stream、
Shell.application  
  开始------->运行--------->Regedit,打开注册表编辑器,按Ctrl+F查找,依次输入以上
Wscript.Shell等组件名称以及相应的ClassID,然后进行删除或者更改名称(这里建议大家更名,如
果有部分网页ASP程序利用了上面的组件的话呢,只需在将写ASP代码的时候用我们更改后的组件名
称即可正常使用。当然如果你确信你的ASP程序中没有用到以上组件,还是直  
  接删除心中踏实一些^_^,按常规一般来说是不会做到以上这些组件的。删除或更名后,iisreset
重启IIS后即可升效。)  
  [注意:由于Adodb.Stream这个组件有很多网页中将用到,所以如果你的服务器是开虚拟主机的话,
建议酢情处理。]  
  ② 关于 File System Object (classid:0D43FE01-F093-11CF-8940-00A0C9054228)即常说的FSO的
安全问题,如果您的服务器必需要用到FSO的话,(部分虚拟主机服务器一般需开FSO功能)可以参照本人的另一篇关于FSO安全解决办法的文章:Microsoft Windows 2000 Server FSO 安全隐患解决办法。如果您确信不要用到的话,可以直接反注册此组件即可。  
  ③ 直接反注册、卸载这些危险组件的方法:(实用于不想用①及②类此类烦琐的方法)  
  卸载wscript.shell对象,在cmd下或直接运行:regsvr32 /u %windir%/system32/WSHom.Ocx  
  卸载FSO对象,在cmd下或直接运行:regsvr32.exe /u %windir%/system32/scrrun.dll  
  卸载stream对象,在cmd下或直接运行: regsvr32 /s /u "C:/Program Files/Common Files/System/ado/msado15.dll"  
  如果想恢复的话只需要去掉 /U 即可重新再注册以上相关ASP组件例如:regsvr32.exe %windir%/system32/scrrun.dll  
  ④ 关于Webshell中利用set domainObject = GetObject("WinNT://.")来获取服务器的进程、服务以及
用户等信息的防范,大家可以将服务中的Workstation[提供网络链结和通讯]即Lanmanworkstation服务停止
并禁用即可。此处理后,Webshell显示进程处将为空白。  
  3 按照上1、2方法对ASP类危险组件进行处理后,用阿江的asp探针测试了一下,"服务器CPU详情"和"服务
器操作系统"根本查不到,内容为空白的。再用海洋测试Wsript.Shell来运行cmd命令也是提示Active无法创建
对像。大家就都可以再也不要为ASP木马危害到服务器系统的安全而担扰了。
我分享,我成长!系统集成 XTJC.COM
您需要登录后才可以回帖 登录 | 注册通行证

本版积分规则

联系我们| 手机版|系统集成论坛 ( 京ICP备11008917号 )

GMT+8, 2024-11-28 00:58 , Processed in 0.111440 second(s), 27 queries .

系统集成论坛

BBS.XTJC.COM

快速回复 返回顶部 返回列表