A-A+

on err resume next 补上不算漏洞的漏洞

2013年01月07日 计算机技术 暂无评论 阅读 68 views 次

准确来说,“%5c” 暴库法本身不是网页程序的漏洞,而是由于 IIS 解码特性所造成的,如果 IIS 安全设置不周全,而网页设计者未考虑 IIS 错误,就会被人利用。但是“conn.asp”暴库法,却是由于网页程序设计得失误所造成的漏洞了。

如何防范暴库漏洞呢?从程序设计者的角度来说,既然暴库是由于 IIS 出错信息造成的,那么只需要屏蔽出错信息即可。因此,可在“conn.asp”数据库连接文件中,添加如下一条语句:

On Error Resume Next

该条语句的意思是,出错后恢复执行下面的语句,也就是不处理出错信息,也就不会返回出错信息了。如此即可防止暴库漏洞攻击。

一个完整的数据库防暴库代码如下:

[cc lang="asp"]
<% Option Explicit Response.Buffer = True Dim Db Dim ConnStr Db="data/数据库路径" ConnStr="Provide=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath(db) On Error Resume Next Set conn=server.reateObject(ADODB.Connection) conn.open ConnStr If Err Then err.Clear Set Conn=Nothing Response.Write"数据库连接出错,请检查连接字串。" Response.End end if %>
[/code]

使用该数据库连接文件,当进行暴库时,不会返回出错时的数据库信息,只是提示“数据库连接出错,请检查字串。”,这样即能让程序调试者获得足够的调试信息,又可有效地防止暴库漏洞攻击。

标签:

给我留言