ASP漏洞分析和解决方法(2)

发表于:2007-06-30来源:作者:点击数: 标签:
3 code.asp文件会泄漏ASP代码 问题描述: 举个很简单的例子,在微软提供的 ASP1.0 的例程里有一个 .asp 文件,专门用来查看其它 .asp 文件的源代码,该文件为 ASPSamp/Samples/code.asp。如果有人把这个程序上传到 服务器 ,而服务器端没有任何防范措施的话,
3 code.asp文件会泄漏ASP代码

  问题描述:
  举个很简单的例子,在微软提供的 ASP1.0 的例程里有一个 .asp 文件,专门用来查看其它 .asp 文件的源代码,该文件为
ASPSamp/Samples/code.asp。如果有人把这个程序上传到服务器,而服务器端没有任何防范措施的话,他就可以很容易地查看他
人的程序。例如 :
  code.asp?source=/directory/file.asp
  不过这是个比较旧的漏洞了,相信现在很少会出现这种漏洞。
  下面这命令是比较新的:
http://someurl/iissamples/exair/howitworks/code.asp?/lunwen/soushuo.asp=xxx.asp
  最大的危害莫过于asa文件可以被上述方式读出;数据库密码以明文形式暴露在黑客眼前;

  问题解决或建议:
  对于IIS自带的show asp code的asp程序文件,删除该文件或者禁止访问该目录即可

4、filesystemobject 组件篡改下载 fat 分区上的任何文件的漏洞

  问题描述:
  IIS3、 IIS4 的 ASP 的文件操作都可以通过 filesystemobject 实现,包括文本文件的读写目录操作、文件的拷贝改名删
除等,但是这个强大的功能也留下了非常危险的 "后门"。利用 filesystemobjet 可以篡改下载 fat 分区上的任何文件。即使
是 ntfs 分区,如果权限没有设定好的话,同样也能破坏,一不小心你就可能遭受"灭顶之灾 "。遗憾的是很多 webmaster 只知
道让 web 服务器运行起来,很少对 ntfs 进行权限 设置,而 NT 目录权限的默认设置偏偏安全性又低得可怕。因此,如果你是
Webmaster,建议你密切关注服务器的设置,尽量将 web 目录建在 ntfs 分区上,目录不要设定 everyone full control,即使
是是管理员组的成员一般也没什么必要 full control,只要有读取、更改权限就足够了。 也可以把filesystemobject的组件删
除或者改名。

5、输入标准的HTML语句或者javascript语句会改变输出结果

  问题描述:
  在输入框中打入标准的HTML语句会得到什么相的结果呢?
  比如一个留言本,我们留言内容中打入:
<font size=10>你好!</font>
  如果你的ASP程序中没有屏蔽html语句,那么就会改变"你好"字体的大小。在留言本中改变字体大小和贴图有时并不是什么坏
事,反而可以使留言本生动。但是如果在输入框中写个 javascript 的死循环,比如:<a herf="http://someurl"
onMouseover="while(1){window.close(‘’/‘’)}">特大新闻</a>
  那么其他查看该留言的客人只要移动鼠标到"特大新闻",上就会使用户的浏览器因死循环而死掉。

  解决方法和建议:
  编写类似程序时应该做好对此类操作的防范,譬如可以写一段程序判断客户端的输入,并屏蔽掉所有的 HTML、 Javascript
语句。

原文转自:http://www.ltesting.net