友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
喜书网 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

asp基础入门篇(DOC格式)-第17章

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!



载下来。 IIS3 也存在同样的问题,如果你目前还在使用 IIS3 一定要测试一下。
     二、 iis2、 iis3、 iis4 的一个广为人知的漏洞就是 ::DATA,通过它使用 ie 的 view source 或 netscape 直接访问该 asp 文件就能轻而易举地看到 asp 代码。 win98+pws4 不存在这个漏洞。
      究竟是什么原因造成了这种可怕的漏洞呢?究其根源其实是 Windows NT 特有的文件系统在做怪。有一点常识的人都知道在 NT 提供了一种完全不同于 FAT 的文件系统: NTFS,这种被称之为新技术文件系统的技术使得 NT 具有了较高的安全机制,但也正是因为它而产生了不少令人头痛的隐患。大家可能不知道, NTFS 支持包含在一个文件中的多数据流,而这个包含了所有内容的主数据流被称之为〃DATA〃,因此使得在浏览器里直接访问 NTFS 系统的这个特性而轻易的捕获在文件中的脚本程序成为了可能。然而直接导致 ::DATA 的原因是由于 IIS 在解析文件名的时候出了问题,它没有很好地规范文件名。
    我们该如何解决这个问题呢?办法有几种:
  a、是将 。asp 文件存放的目录设置为不可读(ASP 仍能执行),这样 html、 css 等文件就不能放在这个目录下,否则它们将不能被浏览。
  b、是安装微软提供的补丁程序,下载的地址如下(注意针对不同的系统有不同的补丁):
  该补丁是针对 IIS3, Intel 平台
  ftp。microsoft。/bussys/iis/iis…public/fixes/cht/security/iis3…datafix/iis3fixi。exe
  该补丁是针对 IIS3, Intel 平台
  ftp。microsoft。/bussys/iis/iis…public/fixes/cht/security/iis3…datafix/iis3fixa。exe
  该补丁是针对 IIS4, Alpha 平台
  ftp。microsoft。/bussys/iis/iis…public/fixes/cht/security/iis4…datafix/iis4fixi。exe
  该补丁是针对 IIS4, Alpha 平台
  ftp。microsoft。/bussys/iis/iis…public/fixes/cht/security/iis4…datafix/iis4fixa。exe
  c、是在服务器上安装 ie4。01sp1,这个是否有效,作者本人没具体试过。
  d、存粹作者的个人意见,尽量安装英文版的 NT,而不要使用中文版,究其原因作者也说不清,只是根据实践经验英文版的 NT 较中文版 bug 少,如果哪位朋友知道原因千万要告诉我。
      三 。 支持 ASP 的免费主页空间以及虚拟主机服务的服务器面临的问题
      1、服务器上的 ASP 代码很可能被人其他拥有 asp 权限的人非法获取。
举个很简单的例子,在微软提供的 ASP1。0 的例程里有一个 。asp 文件专门用来查看其它 。asp 文件的源代码,该文件为 ASPSamp/Samples/code。asp。如果有人把这个程序上传的服务器,而服务器端没有任何防范措施的话,他就可以很容易地查看他人的程序。
例如 :
  code。asp?source=/directory/file。asp
       2、使用的 ACCESS mdb 数据库可能被人下载一般来说在提供 asp 权限的免费主页服务器上不可能提供代为设定 DSN 的服务,因此 asp 程序使用的数据库通常都局限在使用 mdb 库,而 mdb 远端数据库所在的位置是使用我们在第十四期中讲到过的 DSN…less 方法直接在 asp 中指定的,方法如下 :
《 %connstr = 〃DBQ=〃+server。mappath(〃database/source。mdb〃)+〃;DefaultDir=;DRIVER={Microsoft Access Driver (*。mdb)};DriverId=25;FIL=MS Access;ImplicitmitSync=Yes;MaxBufferSize=512;MaxScanRows=8;PageTimeout=5; SafeTransactions=0;Threads=3;UsermitSync=Yes;〃%》
       正如前文所言,在这种情况下 mdb 库很可能被他人下载,从而造成诸如密码等的泄露。
       所以,作为 webmaster 应该采取一定的措施,严禁 code。asp 之类的程序(似乎很难办到 ; 但可以定期检索特征代码),限制 mdb 的下载。
       3、来自强大的 filesystemobject 组件的威胁
       IIS3、 IIS4 的 ASP 的文件操作都可以通过 filesystemobject 实现,包括文本文件的读写目录操作、文件的拷贝改名删除等,但是这个强大的功能也留下了非常危险的〃后门〃。利用 filesystemobjet 可以篡改下载 fat 分区上的任何文件。即使是 ntfs 分区,如果权限没有设定好的话,同样也能破坏,一不小心你就可能遭受〃灭顶之灾〃。遗憾的是很多 webmaster 只知道让 web 服务器运行起来,很少对 ntfs 进行权限设置,而 NT 目录权限的默认设置偏偏安全性又低得可怕。因此,如果你是 Webmaster,作者强烈建议你密切关注服务器的设置,尽量将 web 目录建在 ntfs 分区上,目录不要设定 everyone full control,即使是是管理员组的成员一般也没什么必要 full control,只要有读取、更改权限就足够了。
     四、 ASP 应用程序可能面临的攻击过去许多 Internet 上 CGI 写的留言本或 BBS 是把客户输入的留言变为一个变量,然后再把这个变量插入到显示留言的 HTML 文件里,因此客户输入的文本如要在 HTML 文件里显示就得符合 HTML 标准,而 CGI 程序里一般都加入了特定的 HTML 语言。当客户输入内容,插入 HTML 文件时,即同时插入到了头尾 HTML 语句中,如:
   《 font》客户输入的变量 《 /font》但如果把前后的 HTML 标记给敝屏了,就可以做很多事情了。
  如输入时打上:
 《 /font》符合 HTML 标准的语句 《 font》前后的 《 font》是用来敝屏 CGI 中的 HTML 语句用的。插入到 HTML 文件里的就变成了:
 《 font》《 /font》符合 HTML 标准的语句 《 font》《 /font》由于这样一个特性,使得写个 javascript 的死循环变得非常容易,只要在输入框中输入:
 《 a href=〃URL〃 onMouseover=〃while(1){window。close(')}〃》或 《 a herf=〃URL〃 onMousever=〃while(ture){window。close(')}〃》
      那么就能让其他查看该留言的客户的浏览器因死循环而死掉。 ASP 开发的程序同样可能存在这个问题,因此当你用 asp 编写类似程序时应该做好对此类操作的防范,譬如可以写一段程序判断客户端的输入,并屏蔽掉所有的 HTML、 Javascript 语句。
     看完本期后,如果你非常的震惊,那么你必须彻底对你现有的网站或 asp 程序进行一翻检测,看看是否存在上述漏洞。如果你对文中所谈到的漏洞都有所了解并已有足够的对策,那么在恭喜你的同时,还是要提醒你经常查看你的网站和 asp 程序,如果你有数据库也应该经常查看,以防他人利用一些我们未知的漏洞进行攻击。最后,如果你对本文所谈论的 asp 安全性问题有什么独特的见解,或对漏洞有新的发现,希望能来信同我探讨。

??

??

??

??














………………………………………………………………………用户上传之内容结束……………………………………………………………………………………

返回目录 上一页 回到顶部 0 0
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!