《生活宝典shenghuobaodian.com》在ASP编程中,主要用的还是ACCESS数据库。可是,这种数据库因为特有的因素容易被人非法下载。一旦数据库被下载。网站的所有信息将暴露无疑。这给网站的安全和用户的信息带来了极大的危协。
多数人用的是服务器的空间。对于服务器的配置我是无法更改。即便如此,我们也可以通过一些操作来增加数据库不会被下载的安全性。
1:将数据库改成非常复杂的名字
为什么要改名呢?现在大部分都是从网上下载的源代码的。数据库路径,数据库名只要到网上一查就全知道了。那就可以直接输入数据库的URL,后果是什么自己想想看。至于改成什么,你自己看着办,至少要保证文件名复杂,不可猜测性。当然这个时候你的数据库所在目录是不能开放目录浏览权限的!
2:数据库名后缀改为ASA、ASP等
有很多人都流行这种做法。也确实可以做到防下载的目的。但是我不得不提醒一句的是,一旦服务器中毒。有些病毒专改ASP文件。要是你的数据库被改了的话。那就一切完了。数据库被破坏了。谁也打不开。这种方法尽量不要用。
3:数据库名前加“#”
只需要把数据库文件前名加上#、然后修改数据库连接文件(如conn.asp)中的数据库地址。原理是下载的时候只能识别#号前名的部分,对于后面的自动去掉,比如你要下载:http://www.yiyunnet.cn/#123.mdb(假设存在的话)。无论是IE还是FLASHGET等下到的都是http://www.yiyunnet.cn/index.htm(index.asp、default.jsp等你在IIS设置的首页文档)
另外在数据库文件名中保留一些空格也起到类似作用,由于HTTP协议对地址解析的特殊性,空格会被编码为"%",如http://www.yiyunnet.cn/date/123;456.mdb,下载的时http://www.yiyunnet.cn/date/123%456.mdb。而我们的目录就根本没有123%456.mdb这个文件,所以下载也是无效的这样的修改后,即使你暴露了数据库 地址,一般情况下别人也是无法下载!
4:加密数据库
把数据库加密,让下载到也打不开。当然这一点有点太被动了。由于Access数据库的加密机制比较简单,即使设置了密码,解密也很容易。该数据库系统通过将用户输入的密码与某一固定密钥进行“异或”来形成一个加密串,并将其存储在*.mdb文件从地址“amp;H42”开始的区域内。所以一个好的程序员可以轻松制作一个几十行的小程序就可以轻松地获得任何Access数据库的密码。因此,只要数据库被下载,其信息安全依然是个未知数。
没有最安全的数据库,只有相对更安全的。请时时记住这一点。对于一些敏感的信息进行MD5加密。就算数据库被下载了。危协也会减小。 从手机浏览器访问《生活宝典》 |