当前位置: 首页 > 图文教程 > 网络编程 > ASP > [漏洞]利用Activer server explorer可对文件进行读写访问

ASP
IIS访问ASP页面时报错The requested resource is in use.的解决办法
错误类型:Provider (0x80004005)未指定的错误 的一个处理方法
关于asp+access的安全问题分析
把RS.GetRows看得更清楚
asp下UTF-8页面乱码的解决方法
解决使用良精企业建站7.0未注册问题
在ASP中连接MySQL数据库的方法,最好的通过ODBC方法
flash与js通讯方法
ASP操作Excel相关技术总结
解决用Access数据库建站维护不便的问题的方法
ASP实现GB2312字符与区位码的相互转换的代码
对于ASP编码问题的深入研究与最终解决方案
ASP生成UTF-8编码的代码
删除A表中在B表中不存在的数据
动网防恶意广告比较有效的办法附asp代码
asp磁盘缓存技术使用的代码
网页语言编码及asp乱码问题解决方案
FSO遍历目录实现全站插马的代码
关于无限分级(ASP+数据库+JS)的实现代码
如何写ASP入库小偷程序

ASP 中的 [漏洞]利用Activer server explorer可对文件进行读写访问


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 103 ::
收藏到网摘: n/a

       漏洞描述:
    chinaasp的Activer server explorer可以很方便的对本地文件在线查看服务器上的目录 在线查看文件的名称、大小、类
  型、修改时间,在线编辑纯文本文件,如.txt、.htm、.asp、.pl、.cgi等等,直接执行服务器上的文件。
    Activer server explorer要求填写相对路径或者绝对路径,但是假如:有一个攻击者把Activer server explorer上传到
  目标服务器上的某个目录,并且这个目录支持ASP的话,那么他就可以通过Activer server explorer修改、执行目标服务器上的
  文件。这种情况可以发生在一个攻击者拥有目标NT服务器上的一个可写目录帐号,并且这个目录又支持ASP。比如一些支持ASP的个
  人免费主页服务器,把Activer server explorer先传上你申请的免费主页空间,再通过各种方法得到目标服务器的路径,(比如
  可通过漏洞:"请求不存在的扩展名为idq或ida 文件,会暴露文件在服务器上的物理地址.").或者直接在相对路径上填".",一般
  是默认。这样攻击者就能任意修改,执行目标服务器上的文件,不管他对这个文件有无读写访问权。
  
    所以那些提供有ASP服务的个人主页或者其它服务的服务器,就要加倍小心这种攻击了。
  
    漏洞解决方法
    其实Activer server explorer就是利用了上面讲的漏洞 4 filesystemobject 组件篡改下载 fat 分区上的任何文件的
  漏洞。
    那么我们如何才能限制用户使用FileSystemObject对象呢?一种极端的做法是完全反注册掉提供FileSystemObject对象的那
  个组件,也就是Scrrun.dll。具体的方法如下:
  
    在MS-DOS状态下面键入:
  
  Regsvr32 /u c:\windows\system\scrrun.dll
  
  (注意:在实际操作的时候要更改成为你本地的实际路径)
  
    但是这样的话,就不能使用FileSystemObject对象了,有时利用FileSystemObject对象来管理文件是很方便,有什么办法能
  两全其美呢?
  
    我们可以做到禁止他人非法使用FileSystemObject对象,但是我们自己仍然可以使用这个对象.
    方法如下:
    查找注册表中
  
    HKEY_CLASSES_ROOT\Scripting.FileSystemObject 键值
  
    将其更改成为你想要的字符串(右键-->"重命名"),比如更改成为
  
    HKEY_CLASSES_ROOT\Scripting.FileSystemObject2
  
    这样,在ASP就必须这样引用这个对象了:
  
    Set fso = CreateObject("Scripting.FileSystemObject2")
  
    而不能使用:
  
    Set fso = CreateObject("Scripting.FileSystemObject")
  
    如果你使用通常的方法来调用FileSystemObject对象就会无法使用了。
  
    只要你不告诉别人这个更改过的对象名称,其他人是无法使用FileSystemObject对象的。这样,作为站点管理者我们就杜绝了
  他人非法使用FileSystemObject对象,而我们自己仍然可以使用这个对象来方便的实现网站在线管理等等功能了!