您好,欢迎来到思海网络,我们将竭诚为您提供优质的服务! 诚征网络推广 | 网站备案 | 帮助中心 | 软件下载 | 购买流程 | 付款方式 | 联系我们 [ 会员登录/注册 ]
促销推广
客服中心
业务咨询
有事点击这里…  531199185
有事点击这里…  61352289
点击这里给我发消息  81721488
有事点击这里…  376585780
有事点击这里…  872642803
有事点击这里…  459248018
有事点击这里…  61352288
有事点击这里…  380791050
技术支持
有事点击这里…  714236853
有事点击这里…  719304487
有事点击这里…  1208894568
有事点击这里…  61352289
在线客服
有事点击这里…  531199185
有事点击这里…  61352288
有事点击这里…  983054746
有事点击这里…  893984210
当前位置:首页 >> 技术文章 >> 文章浏览
技术文章

堵塞Web漏洞(下)

添加时间:2010-11-7  添加: admin 
解决方法:

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

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

DBPath=Server.MapPath(“cmddb.mdb”)

conn.Open“driver={MicrosoftAccessDriver(*.mdb)};dbq=”&DBPath

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

conn.open“shujiyuan”

(3)使用Access来为数据库文件编码及加密。首先在选取“工具”→“安全”→“加密/解密数据库”,选取数据库(如:employer.mdb),然后接确定,接着会出现“数据库加密后另存为”的窗口,存为:employer1.mdb。接着“employer.mdb”就会被编码,然后存为:employer1.mdb。

注意:以上的动作并不是对数据库设置密码,而只是对数据库文件加以编码,目的是为了防止他人使用别的工具来查看数据库文件的内容。

接下来我们为数据库加密,首先以打开经过编码了的“employer1.mdb”,在打开时,选择“独占”方式。然后选取功能表的“工具”→“安全”→“设置数据库密码”,接着输入密码即可。

为“employer1.mdb”设置密码之后,接下来如果再使用Access数据库文件时,则Access会先要求输入密码,验证正确后才能够启动数据库。

不过要在ASP程序中的Connection对象的open方法中增加PWD的参数即可,例如:


以下为引用的内容:
  param=“driver={MicrosoftAccessDriver(*.mdb)};Pwd=yfdsfs”
  param=param&“;dbq=”&server.mappath(“employer1.mdb”)
  conn.openparam


这样即使他人得到了Fmployer1.mdb文件,没有密码他是无法看到employer1.mdb的。

5.asp程序密码验证漏洞

漏洞描述:

很多网站把密码放到数据库中,在登陆验证中用以下Sql,(以ASP为例)

sql=“select*fromuserwhereusername=”&username&“andpass=”&pass&”

此时,您只要根据SQL构造一个特殊的用户名和密码,如:benor1=1

就可以进入本来你没有特权的页面。再来看看上面那个语句吧:

sql=“select*fromuserwhereusername=”&username&“andpass=“&pass&”

or是一个逻辑运算符,作用是在判断两个条件的时候,只要其中一个条件成立,那么等式将会成立。而在语言中,是以1来代表真的(成立)。那么在这行语句中,原语句的“and”验证将不再继续,而因为“1=1”和“or”令语句返回为真值。
另外我们也可以构造以下的用户名:

username=aaorusername<>aa

pass=aaorpass<>aa

相应的在浏览器端的用户名框内写入:aaorusername<>aa口令框内写入:aaorpass<>aa,注意这两个字符串两头是没有的。这样就可以成功的骗过系统而进入。

后一种方法理论虽然如此,但要实践是非常困难的,下面两个条件都必须具备。

(1)你首先要能够准确的知道系统在表中是用哪两个字段存储用户名和口令的,只有这样你才能准确的构造出这个进攻性的字符串。实际上这是很难猜中的。

(2)系统对你输入的字符串不进行有效性检查。

问题解决和建议:对输入的内容验证和“”号的处理。

6.IIS4或者IIS5中安装有IndexServer服务会漏洞ASP源程序


问题描述:

在运行IIS4或者IIS5的IndexServer,输入特殊的字符格式可以看到ASP源程序或者其它页面的程序。甚至以及添打了最近关于参看源代码的补丁程序的系统,或者没有.htw文件的系统,一样存在该问题。获得ASP程序,甚至global.asp文件的源代码,无疑对系统是一个非常重大的安全隐患。往往这些代码中包含了用户密码和ID,以及数据库的源路径和名称等等。这对于攻击者收集系统信息,进行下一步的入侵都是非常重。

通过构建下面的特殊程序可以参看该程序源代码:

http://202.116.26.38/null.htwCiWebHitsFile=/default.asp&CiRestriction=none&CiHiliteTyp-e=Full

这样只是返回一些HTML格式的文件代码,但是当你添加%20到CiWebHitsFile的参数后面,如下:

http://someurl/null.htw?CiWebHitsFile=/default.asp%20&CiRestriction=none&CiHiliteType=Full

这将获得该程序的源代码。(注意:/default.asp是以Web的根开始计算。如某站点的http://XXXXXX/welcome.asp)


那么对应就是:

http://someurl/null.htwCiWebHitsFile=/XXXXXX/wel
分享到:

顶部 】 【 关闭
版权所有:佛山思海电脑网络有限公司 ©1998-2024 All Rights Reserved.
联系电话:(0757)22630313、22633833
中华人民共和国增值电信业务经营许可证: 粤B1.B2-20030321 备案号:粤B2-20030321-1
网站公安备案编号:44060602000007 交互式栏目专项备案编号:200303DD003  
察察 工商 网安 举报有奖  警警  手机打开网站