当前位置:  首页  >  PHP教程  >  PHP 应用  >  知识库

谈使用Access数据库应对的安全策略

MicrosoftOfficeAccess(前名MicrosoftAccess)是由微软发布的关联式数据库管理系统。它结合了MicrosoftJetDatabaseEngine和图形用户界面两项特点,是MicrosoftOffice的成员之一。Access能够存取AccessJet、MicrosoftSQLServer、Oracle(甲

Microsoft Office Access(前名 Microsoft Access)是由微软发布的关联式数据库管理系统。它结合了 Microsoft Jet Database Engine 和 图形用户界面两项特点,是 Microsoft Office的成员之一。 Access能够存取 Access/Jet、Microsoft SQL Server、Oracle(甲

  Microsoft Office Access(前名 Microsoft Access)是由微软发布的关联式管理系统。它结合了 Microsoft Jet Database Engine 和 图形用户界面两项特点,是 Microsoft Office的成员之一。

  Access能够存取 Access/Jet、Microsoft SQL Server、Oracle(甲骨文软件公司),或者任何 ODBC 兼容数据库内的资料。熟练的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的"进阶用户"则能使用它来开发简单的应用软件。虽然它支援部份面向对象(OO)技术,但是未能成为一种完整的面向对象开发工具。

  其实Access 也是微软公司另一个通讯程序的名字,想与 ProComm 以及其他类似程序来竞争。可是事后微软证实这是个失败计划,并且将它中止。数年后他们把名字重新命名于数据库软件。

攻略篇:  

  一、发挥你的想象力 修改数据库文件名,从理论上讲不一定能防止被.

   修改数据库名,其目的就是防止我们猜到数据库而被下载.

   但是万一我们猜到数据库名,就直接可以下载了.所以这不能保证100%不能被下载.

   猜解数据库的常用的办法就是写程序去猜解数据库名,判断WEB返回的是不是404错误,如果提交一个MDB文件,没有返回404错误,那就猜对了,就直接下载.

   当然这有一定的局限性,因为如果数据库名非常复杂,会产生大量的日志.管理员可能早 发现了.并且还有猜解的时间会变得很长.  

  二:数据库名后缀改为ASA、ASP等,不一定能防止被下载.

   IIS在通过asp.dll处理.asp扩展名文件的时候,对以外的内容,不做任何处理就直接输出,但是MDB文件中如果没有之类的ASP标实符,我们直接在IE中输入URL返回在IE中的数据,就是MDB文件的数据,我们直接用FLASHGET之类的软件就可以下载,下载后改名这后就可以用了.
  
  如图1:  

  三: 数据库名前加“#”,一定能防止被下载.  

  有些人误认为:

  "只需要把数据库文件前名加上#、然后修改数据库连接文件(如conn.asp)中的数据库地址。原理是下载的时候只能识别 #号前名的部分,对于后面的自动去掉."  

  这样是比较安全的.这只是对于一般的人无法下载.因为他们不知道,也没有去了解有关IE编码的技术.在编码中我们用%23来代替#号.所以我们如果有一个数据库是:

  http://www.xxx.com/data/#datapro.mdb

  我们直接在IE中输入:

  http://www.xxx.com/data/%23datapro.mdb

  就可以下载了.

  如图2:
吐了个 "CAO" !
扫码关注 PHP1 官方微信号
PHP1.CN | 中国最专业的PHP中文社区 | PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | PHP问答
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有