Zblog数据库的简单安全防护
大部分国内Asp程序使用大多都是Access数据库,例如Zblog。Access是一个桌面级数据库,最大的优点就是维护简单,管理方便。不需要特定的专用空间,只要与程序文件一起直接上传到虚拟主机上就可以了。 作为ASP程序使用最多的数据库类型,ACC数据库也有很多不令人满意的地方,例如他的调用效率和数据安全问题。ACC数据库的本质是微软开发的Office系列软件之一的数据管理系统,既然是桌面办公级,那么就有它的局限性,ACC数据库在大小和并发用户的支持上十分有限,一旦数据库文件过大,并发用户过多就会导致严重的性能问题。(ACC数据库具体的优缺点可以看这篇文章) ACC数据库缺点不止是这些,安全性不够才是ACC最大的弊病。 黑客在攻击此类ASP程序的网站时,首先就是从数据库上下手,由于IIS的报错提示容易暴露数据库的地址,黑客很容易就会获取到数据库。怎样防止数据库被恶意下载,是站长首当其冲,必须高度重视的问题。 今天,小宇就来谈谈防止ACC数据库被恶意下载的几个简单有效的方法。。 一,最简单的办法,文件名混淆复杂加密 1,将数据库放在尽可能深的文件目录里,并将数据库文件名及.MDB后缀改成与该目录文件相似的名称。 以避免有空间权限和FTP被他人登陆后被下载的问题。 缺点,数据库一般较大,很容易区分;IIS的报错提示会暴露数据库的真实地址。 即使是放在默认目录,也要尽可能的将数据库文件名设置的长且复杂一点,最好中英文,符号混合设置,以防被一些黑客工具枚举。 二,数据库名称前或名称后加"#"号 1,数据库文件名之前加上“#”号后,由于浏览器或下载工具只能识别“#”符号前的部分地址,当下载例如http://www.huceo.com/DATA/#123456.mdb时,得到的将是http://www.huceo.com/DATA/index.html首页文件,如果没有该文件,则会出现错误提示。 2,数据库名称里加上#号后,从URL上请求时#只是一个分隔字符,就算知道了数据库名,用浏览器下载时,WEB服务器会忽视#号后面的字符。如:123#456.mdb,当用工具下载时,WEB服务器会认为请求的是123.mdb而不是123#456.mdb,从而就会出现无法找到文件的错误提示。 缺点,由于URL中对于特殊的字符有一个特殊的表示方式,,#的特殊表示就是%23,如果是123%23456.mdb则该文件就会被下载。另外,一些下载工具如迅雷等可以直接下载这种文件。 三,将数据库放在WEB目录以外的目录里面 现在的大多数虚拟主机,空间会有默认的四个目录,例如:wwwroot,databases,logfiles,others。在http环境下,只有wwwroot是开放目录,一般用来存放可以被外部访问程序文件;databases一般就是ACC数据库专用目录;logfiles是系统日志目录;others用来放自己不对外开放的个人文件目录。 只要将数据库移到databases目录,一般就非常安全了,因为在http环境下,databases是完全封闭的目录,只有FTP工具才能找到这个目录。黑客除非直接夺得主机的控制权才能找到到你的数据库。 将数据库从/WEB/123456.MDB移到databases目录后需要更改数据库连接文件里面的数据库连接地址,具体视程序而视,例如Zblog则是这个文件:c_custom.asp,请把数据库连接地址改成这样“ ../databases/123456.mdb”。如果更改了数据库文件名或后缀名也需要更改成相应的地址。 以上介绍的只是一些简单容易操作的防护方法,稍复杂点的还有把数据名改成ASP,asa的,把数据库加密的,还有通过IIS设置给数据库名添加扩展映射的方法。(更多ACC数据库的安全防护方法和对策) 综上所述,第三个办法:将数据库放在WEB目录以外,数据库专用目录里面是最简单,方便,有效的。 本文出自:小宇博客,地址:http://www.huceo.com/post/266.html,转载请注明出处,谢谢! |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |