03Access密码破解实验范文Word下载.docx
《03Access密码破解实验范文Word下载.docx》由会员分享,可在线阅读,更多相关《03Access密码破解实验范文Word下载.docx(23页珍藏版)》请在冰豆网上搜索。
数据库
MicrosoftOfficeAccess
是由微软
1994
年发布的关联式数据库管理系统。
它结合了MicrosoftJetDatabaseEngine
和图形用户界面两项特点,是
MicrosoftOffice
的系统程式之一。
它具有界面友好、易学易用、开发简单、接口灵活等特点,是典型的新一代桌面数据库管理系统。
特点
(1)完善地管理各种数据库对象,具有强大的数据组织、用户管理、安全检查等功能。
(2)强大的数据处理功能,在一个工作组级别的网络环境中,使用
开发的多用户数据库管理系统具有传统的
XBASE(DBASE、FoxBASE
的统称)数据库系统所无法实现的客户服务器(Cient/Server)结构和相应的数据库安全机制,Access
具备了许多先进的大型数据库管理系统所具备的特征,如事务处理/出错回滚能力等。
(3)可以方便地生成各种数据对象,利用存储的数据建立窗体和报表,可视性好。
(4)作为
Office
套件的一部分,可以与
集成,实现无缝连接。
(5)能够利用
Web
检索和发布数据,实现与
Internet
的连接。
主要适用于中小型应用系统,或作为客户机/服务器系统中的客户端数据库。
用途
(1)用来进行数据分析:
access
有强大的数据处理、统计分析能力,利用
的查询功能,可以方便地进行各类汇总、平均等统计。
并可灵活设置统计的条件。
MSACCESS
以它自己的格式将数据存储在基于
AccessJet
的数据库引擎里。
它还可以直接导入或者链接数据(这些数据存储在其他应用程序和数据库)。
(2)用来开发软件:
软件开发人员和数据架构师可以使用
MicrosoftAccess
开发应用软件,“高级用户”可以使用它来构建软件应用程序。
和其他办公应用程序一样,ACCESS
支持VisualBasic
宏语言,它是一个面向对象的编程语言,可以引用各种对象,包括
DAO(数据访问对象),ActiveX
数据对象,以及许多其他的
ActiveX
组件。
可视对象用于显示表和报表,他们的方法和属性是在
VBA
编程环境下,VBA
代码模块可以声明和调用
操作系统函数。
另外,在开发一些小型网站
WEB
应用程序时,用来存储数据。
例如
ASP+Access。
这些应用程序都利用
ASP
技术在InternetInformationServices
运行.比较复杂的
应用程序则使用PHP/MySQL
或者
ASP/MicrosoftSQLServer
数据库文件加密
(1)数据库加密原理
MSAccess
数据库是以
MDB
为文件扩展名的单个文件形式存储的,加密后的文件可以再不同计算机上以相同的密码打开,说明该数据库的密码一定存在于文件之中。
通过使用UltraEdit
软件对加密前后的同一个数据库文件进行比对,就可以确定加密后的密码在文件中的大概位置。
数据库系统通过将用户输入的密码与某一密匙进行异或来形成一个加密串,并将其存储在.mdb
文件中从地址&
H42
开始的区域内。
就
MSAccess97
来说,其
文件的密码最多能设置
14
位,是存放在这个文件头部第
66
个字节至第
79
个字节共
字节的固定序列。
由于异或操作的特点是“经过两次异或就恢复原值”,因此,用这一密匙与.mdb
文件中的加密串进行第二次异或操作,就可以轻松地得到
数据库密码。
对于
Access97
数据库,密匙是固定的。
Access2000
和
Access2002
的数据库加密方式相同。
的数据库加密系统进行了较大的改进,它的密钥是按日期随机生成的。
也就是说,不同的时间产生的
文件,其密钥是不同的。
但
还是把加密的密码字串放在以第
字节开始的文件区域内。
提供让用户可以设定最多20
位的密码,其密码区域不是连续存储的,而是隔位放置密码串。
40
位的字节长度内,有用的有
20
字节,其中的
10个字节的密钥是固定的,它们不是按日期随机生成的。
因为密钥是按日期随机生成的,日期相同,密钥也相同。
因此,破解
数据库密码,只要建一个与该数据库同日期的没有密码的
数据库,找到密匙,那么还是可以得到数据库密码的。
另外,Access
的加密密钥虽然是按日期随机生成的,但随机密钥序列式相互关联的,共有256
组密钥。
所以,只要获取了这个序列中任何一组密钥,根据其相互关系也可以找到序列中其他组的密钥,用穷举法,瞬间可以通过校验获得正确的密码。
但是,在
MicrosoftOfficeAccess2007
中,其数据库的文件格式变更为.accdb,并采取了与之前.mdb文件完全不同的加密方式。
由于其加密原理并不透明,目前并没有比较有效的方式/工具能够对.accdb
格式的
Access数据库文件进行破解。
(2)使用
为数据库文件编码及加密
在
编辑窗口,选择“工具”菜单,单击“安全”,再单击“加密/解密数据库”,在“加密/解密数据库”窗口中选取数据库,然后点“确定”,接着会出现“数据库加密后另存为”窗口,保存为
data1.mdb。
接着数据库会被编码并保存。
以上的动作并不是对数据库设置密码,而只是对数据库文件加以编码,目的是为了防止他人使用别的工具来查看数据库文件的内容。
为数据库加密时,打开经过编码的
data1.mdb,选择“独占”方式,然后选择“工具”菜单-“安全”-“设置数据库密码”。
输入密码后的数据库文件在打开时会要求输入密码,在验证正确后才能启动。
(3)用随机加密算法加密
随机加密算法是一种利用随机函数的随机序列与数据进行异或等运算,实现对数据加密的方法。
在随机加密算法中,加密所用的数据是随机数且不重复使用,实现了“一次一密”的加密。
随机加密算法简单,容易实现,并且加密后的数据量没有明显增加。
加密数据时,调用
Encrypt()函数,参数为需要加密的数据;
解密数据时,调用Decrypt()函数,参数为需要解密的数据。
例如,在
数据库
DB1.MDB
中,建立表
Member,其结构为:
id(int,4)、name(char,20)和
password(nvarchar,50)。
在表
Member
中添加一条记录,其中,利用随机加密算法对
Password
字段的内容进行加密(这一功能可用
VB
代码实现)。
查询表Member
的数据,并利用随机加密算法对
字段的内容进行解密(可由
实验内容
1、
首先创建一个加密的access文件
2、使用
soft_vap
破解.mdb
文件
3、使用
Cain
破解
mdb
文件密码
4、使用
aopr
实验步骤
1、学生单击“试验环境试验”按钮,出现如教材所示图1网络拓扑
图1
2、使用默认用户名;
administrator,密码:
进入windowsxp系统。
3、加密
数据库文件
在桌面新建一个
数据库文件,命名为test内容自己定义,如教材图2所示
图2
4、打开Access,如教材图3所
图3
5、设置用access打开的独占方式打开test.mdb,如教材图4,5,6所示
图4
点击“否”
点击“是”
点击“打开”
图5
图6
6、点击工具——选项
7、点击“高级”——“独占”
8、按照以上步骤重新打开文件,然后111点击工具——安全——设置数据库密码。
如教材图7所示
图7
9、在弹出的窗口中输入数据库密码,如教材图8所示,设置的密码为“111”
图8
10、再次打开test.mdb时需要输入密码才能打开,如教材图9所示
图9
11、使用
进入目录d:
\tools,找到soft_vap.exe,双击运行,如教材图10所示,运行界面如教材图11所示
图10
图11
12、点击“选择文件”,选择桌面的test.mdb,则可破译test.mdb的密码,如教材图12所示
图12
13、使用
进入d:
\tools\cain目录如图13所示
图13
14、默认安装cain,安装完成后运行。
教材图14所示。
图14
15、点击tools——Accessdatabasepassworddecoder,如教材图15所示,弹出如教材图16所示窗口,选中桌面的test.mdb文件,即可解密test.mdb文件。
图15
图16
16、使用
\tools,双击aopr.exe运行aopr,如教材图17所示,aopr的安装过程如教材图18,19,20所示
图17
图18
图19
图20
17、点击选中暴力中的字符集如教材图21所示,点击“打开文件”,打开桌面的test.mdb文件,点击continue即可破译test.mdb文件的密码,如教材图22所示。
图21
图22
18、实验到此结束,关闭实验场景。