ASP漏洞分析和解决方法

解决

ASP漏洞分析和解决方法

有人说一台不和外面联系的电脑是最安全的电脑,一个关闭所有端口,不提供任何服务的电脑也是最安全的。黑客经常利用我
们所开放的端口实施攻击,这些攻击最常见的是DDOS(拒绝服务攻击).下面我会列出ASP的二十几个漏洞,每个漏洞都会有漏洞描
述和解决方法。

1 在ASP程序后加个特殊符号,能看到ASP源程序

  受影响的版本:
  win95+pws
  IIS3.0
  98+pws4 不存在这个漏洞。
  IIS4.0以上的版本也不存在这个漏洞。
  问题描述:
  这些特殊符号包括小数点,%81, :DATA。比如:
http://someurl/somepage.asp.
http:// someurl/somepage.asp%81
http:// someurl/somepage.asp:DATA
http:// someurl/somepage.asp %2e
http:// someurl/somepage %2e%41sp
http:// someurl/somepage%2e%asp
http:// someurl/somepage.asp %2e
http://someurl/msadc/samples/selector/showcode.asp?source=/msadc/samples/../../../../../../boot.ini (可以
看到boot.ini的文件内容)
  那么在安装有IIS3.0和win95+PWS的浏览中就很容易看到somepage.asp的源程序。究竟是什么原因造成了这种可怕的漏洞呢?
究其根源其实是 Windows NT 特有的文件系统在做怪。有一点常识的人都知道在 NT 提供了一种完全不同于 FAT 的文件系统:
NTFS,这种被称之为新技术文件系统的技术使得 NT 具有了较高的安全机制,但也正是因为它而产生了不少令人头痛的隐患。大家
可能不知道, NTFS 支持包含在一个文件中 的多数据流,而这个包含了所有内容的主数据流被称之为"DATA",因此使得在浏览器
里直接访问 NTFS 系统的这个特性而轻易的捕获在文件中的脚本程序成为了可能。然而 直接导致 :DATA 的原因是由于 IIS 在
解析文件名的时候出了问题,它没有很好地规范文件名。

  解决方法和建议:
  如果是Winodws NT用户,安装IIS4.0或者IIS5.0,Windows2000不存在这个问题。如果是win95用户,安装WIN98和PWS4.0。

2 ACCESS mdb 数据库有可能被下载的漏洞

  问题描述:
  在用ACCESS做后台数据库时,如果有人通过各种方法知道或者猜到了服务器的ACCESS数据库的路径和数据库名称,那么他能够
下载这个ACCESS数据库文件,这是非常危险的。比如:如果你的ACCESS数据库book.mdb放在虚拟目录下的database目录下,那么
有人在浏览器中打入:
http:// someurl/database/book.mdb
  如果你的book.mdb数据库没有事先加密的话,那book.mdb中所有重要的数据都掌握在别人的手中。

  解决方法:
  (1) 为你的数据库文件名称起个复杂的非常规的名字,并把他放在几目
录下。所谓"非常规",打个比方:比如有个数据库要保存的是有关书籍的信息,可不要把他起个"book.mdb"的名字,起个怪怪的名
称,比如d34ksfslf.mdb,再把他放在如./kdslf/i44/studi/ 的几层目录下,这样黑客要想通过猜的方式得到你的ACCESS数据库
文件就难上加难了

  (2)不要把数据库名写在程序中。有些人喜欢把DSN写在程序中,比如:

DBPath = Server.MapPath("cmddb.mdb")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DBPath

  假如万一给人拿到了源程序,你的ACCESS数据库的名字就一览无余。因此建议你在ODBC里设置数据源,再在程序中这样写:
conn.open "shujiyuan"

  (3)使用ACCESS来为数据库文件编码及加密。首先在选取"工具->安
全->加密/解密数据库,选取数据库(如:employer.mdb),然后接确定,接着会出现"数据库加密后另存为"的窗口,存为:
employer1.mdb。接着employer.mdb就会被编码,然后存为employer1.mdb..
  要注意的是,以上的动作并不是对数据库设置密码,而只是对数据库文件加以编码,目的是为了防止他人使用别的工具来查看
数据库文件的内容。
  接下来我们为数据库加密,首先以打开经过编码了的employer1.mdb,在打开时,选择"独占"方式。然后选取功能表的"工具-
>安全->设置数据库密码",接着输入密码即可。
  为employer1.mdb设置密码之后,接下来如果再使用ACCEES数据库文件时,则ACCESS会先要求输入密码,验证正确后才能够启
动数据库。
  不过要在ASP程序中的connection对象的open方法中增加PWD的参数即可,例如:
param="driver={Microsoft Access Driver (*.mdb)};Pwd=yfdsfs"
param=param&";dbq="&server.mappath("employer1.mdb")
conn.open param
  这样即使他人得到了employer1.mdb文件,没有密码他是无法看到employer1.mdb的。

时间: 2024-10-28 13:01:27

ASP漏洞分析和解决方法的相关文章

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

解决 有人说一台不和外面联系的电脑是最安全的电脑,一个关闭所有端口,不提供任何服务的电脑也是最安全的.黑客经常利用我们所开放的端口实施攻击,这些攻击最常见的是DDOS(拒绝服务攻击).下面我会列出ASP的二十几个漏洞,每个漏洞都会有漏洞描述和解决方法. 1 在ASP程序后加个特殊符号,能看到ASP源程序 受影响的版本: win95+pws IIS3.0 98+pws4 不存在这个漏洞. IIS4.0以上的版本也不存在这个漏洞. 问题描述: 这些特殊符号包括小数点,%81, ::$DATA.比如:

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

解决 3 code.asp文件会泄漏ASP代码 问题描述: 举个很简单的例子,在微软提供的 ASP1.0 的例程里有一个 .asp 文件,专门用来查看其它 .asp 文件的源代码,该文件为 ASPSamp/Samples/code.asp.如果有人把这个程序上传到服务器,而服务器端没有任何防范措施的话,他就可以很容易地查看他人的程序.例如 : code.asp?source=/directory/file.asp 不过这是个比较旧的漏洞了,相信现在很少会出现这种漏洞. 下面这命令是比较新的:ht

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

解决 15绕过验证直接进入ASP页面. 漏洞描述: 如果用户知道了一个ASP页面的路径和文件名,而这个文件又是要经过验证才能进去的,但是用户直接输入这个ASP页面的文件名,就有可能通过绕过验证.比如:我在一些网站上这样试过:首先关闭所有的浏览器,窗口,输入:http://someurl/system_search.asp?page=1 就样就看到了只能系统员才能看到的页面.当然有些人为了防止这种情况也会在system_search.asp的开头加个判断,比如:判断session("system_

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

解决 20.利用Activer server explorer可对文件进行读写访问 漏洞描述: chinaasp的Activer server explorer可以很方便的对本地文件在线查看服务器上的目录 在线查看文件的名称.大小.类型.修改时间,在线编辑纯文本文件,如.txt..htm..asp..pl..cgi等等,直接执行服务器上的文件. Activer server explorer要求填写相对路径或者绝对路径,但是假如:有一个攻击者把Activer server explorer上传到

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

解决 21 IIS4.0/IIS5.0超长文件名请求存在漏洞 漏洞描述: 受影响的版本:Microsoft IIS 5.0+ Microsoft Windows NT 2000Microsoft IIS 4.0+ Microsoft Windows NT 4.0+ Microsoft BackOffice 4.5- Microsoft Windows NT 4.0+ Microsoft BackOffice 4.0- Microsoft Windows NT 4.0 当在一个已知的文件名后加23

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

解决 6.ASP程序密码验证漏洞 漏洞描述: 很多网站把密码放到数据库中,在登陆验证中用以下sql,(以asp为例) sql="select * from user where username='"&username&"'and pass='"& pass &'" 此时,您只要根据sql构造一个特殊的用户名和密码,如:ben' or '1'='1 就可以进入本来你没有特权的页面.再来看看上面那个语句吧: sql="

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

解决 18.MS ODBC数据库连接溢出导致NT/9x拒绝服务攻击 漏 洞 描 述: Microsoft ODBC数据库在连接和断开时可能存在潜在的溢出问题(Microsoft ACCESS数据库相关).如果不取消连接而直接和第二个数据库相连接,可能导致服务停止. 影响系统:ODBC 版本: 3.510.3711.0ODBC Access驱动版本: 3.51.1029.00OS 版本: Windows NT 4.0 Service Pack 5, IIS 4.0 (i386)Microsoft

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

解决 18.MS ODBC数据库连接溢出导致NT/9x拒绝服务攻击 漏 洞 描 述: Microsoft ODBC数据库在连接和断开时可能存在潜在的溢出问题(Microsoft ACCESS数据库相关).如果不取消连接而直接和第二个数据库相连接,可能导致服务停止. 影响系统:ODBC 版本: 3.510.3711.0ODBC Access驱动版本: 3.51.1029.00OS 版本: Windows NT 4.0 Service Pack 5, IIS 4.0 (i386)Microsoft

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

解决 19.ASP主页.inc文件泄露问题 漏洞描述: 受影响的版本:任何提供ASP服务的系统 远程:YES / 本地:YES 内容摘要: 当存在asp的主页正在制作并没有进行最后调试完成以前,可以被某些搜索引擎机动追加为搜索对象,如果这时候有人利用搜索引擎对这些网页进行查找,会得到有关文件的定位,并能在浏览器中察看到数据库地点和结构的细节揭示完整的源代码. 具体操作过程是: - 利用搜索引擎查找包含+"Microsoft VBScript 运行时刻错误执行搜索" +".in