广告广告
  加入我的最爱 设为首页 风格修改
首页 首尾
 手机版   订阅   地图  繁体 
您是第 1880 个阅读者
 
发表文章 发表投票 回覆文章
  可列印版   加为IE收藏   收藏主题   上一主题 | 下一主题   
upside 手机 葫芦墩家族
个人头像
个人文章 个人相簿 个人日记 个人地图
特殊贡献奖 社区建设奖 优秀管理员勋章
头衔:反病毒 反诈骗 反虐犬   反病毒 反诈骗 反虐犬  
版主
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片
推文 x0
[病毒蠕虫] ASP木马Webshell安全防范解决办法
ASP木马Webshell安全防范解决办法

注意:本文所讲述之设置方法与环境:适用于Microsoft Windows 2000 Server/Win2003 SERVER   IIS5.0/IIS6.0
  
  1、首先我们来看看一般ASP木马、Webshell所利用的ASP组件有那些?我们以海洋木马为列:
  
  <object runat="server" id="ws" scope="page" classid="clsid:72C24DD5-D70A-438B-8A42-98424B88AFB8">
  
  </object>
  
  <object runat="server" id="ws" scope="page" classid="clsid:F935DC22-1CF0-11D0-ADB9-00C04FD58A0B">
  
  </object>
  
  <object runat="server" id="net" scope="page" classid="clsid:093FF999-1EA0-4079-9525-9614C3504B74">
  
  </object>
  
  <object runat="server" id="net" scope="page" classid="clsid:F935DC26-1CF0-11D0-ADB9-00C04FD58A0B">
  
  </object>
  
  <object runat="server" id="fso" scope="page" classid="clsid:0D43FE01-F093-11CF-8940-00A0C9054228">
  
  </object>
  
  shellStr="Shell"
  
  applicationStr="Application"
  
  if cmdPath="wscriptShell"
  
  set sa=server.createObject(shellStr&"."&applicationStr)
  
  set streamT=server.createObject("adodb.stream")
  
  set domainObject = GetObject("WinNT://.")
  
  以上是海洋中的相关代码,从上面的代码我们不难看出一般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木马危害到伺服器系统的安全而担扰了。
  
  当然伺服器安全远远不至这些,这里为大家介绍的仅仅是本人在处理ASP木马、Webshell上的一些心得体会。在下一篇中将为大家介绍如何简简单单的防止别人在伺服器上执行如net user之类的命令,防溢出类攻击得到cmdshell,以及执行添加用户、改NTFS设置许可权到终端登录等等的最简单有效的防范方法。



爸爸 你一路好走
献花 x0 回到顶端 [楼 主] From:台湾和信超媒体宽带网 | Posted:2006-12-06 03:12 |

首页  发表文章 发表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.053316 second(s),query:15 Gzip disabled
本站由 瀛睿律师事务所 担任常年法律顾问 | 免责声明 | 本网站已依台湾网站内容分级规定处理 | 连络我们 | 访客留言