|
ASP漏洞分析和解决方法(2)
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语句会得到什么相的结果呢? 比如一个留言本,我们留言内容中打入: 你好! 如果你的ASP程序中没有屏蔽html语句,那么就会改变"你好"字体的大小。在留言本中改变字体大小和贴图有时并不是什么坏 事,反而可以使留言本生动。但是如果在输入框中写个 javascript 的死循环,比如:特大新闻 那么其他查看该留言的客人只要移动鼠标到"特大新闻",上就会使用户的浏览器因死循环而死掉。 解决方法和建议: 编写类似程序时应该做好对此类操作的防范,譬如可以写一段程序判断客户端的输入,并屏蔽掉所有的 HTML、 Javascript 语句。 |