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

ASP
构建你的网站新闻自动发布系统之三
构建你的网站新闻自动发布系统之四
如何用ASP编写网站统计系统一
如何用ASP编写网站统计系统二
如何用ASP编写网站统计系统三
如何用ASP编写网站统计系统四
ASP Error 0115的一些解决办法
ASP 3.0 新特色先睹为快(一)
ASP 3.0 新特色先睹为快(二)
ASP主件中的安全问题
一个汉字转成拼音的代码
使用w3Sockets组件实现域名查询功能
ASP中实现文件上传方法的研究
构建免受FSO组件威胁虚拟主机
用XMLHTTP做一个自己特色的Google
用asp实现的代码批量修改程序
无组件的数据库的备份与还原
用ASPJPEG组件制作图片的缩略图和加水印
解密ASP源代码
XmlHttp异步获取网站数据的例子

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 225 ::
收藏到网摘: 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对象,而我们自己仍然可以使用这个对象来方便的实现网站在线管理等等功能了!