天天加油 - 助您成才
破解Access(*.mdb)目前所有版本的密码
您正在看的Access是:破解Access(*.mdb)目前所有版本的密码。
  关于Access97的密码破解,在很多的网站和杂志上都有过介绍。在这里我简单重复一下。 
在mdb文件第0x42字节处的13个字节分别与0x86,0xfb,0xec,0x37,0x5d,0x44,0x9c,0xfa,0xc6,0x5e,0x28,0xe6,0x13异或后即可得到数据库的密码。但在Access 2000和2002的版本里密钥不再是固定的13个字节.而且加密的方式也有了变化。 
    经过ccrun用一下午的时间研究,终于将Access2000的加密方式搞清楚了。嘿嘿。在此将偶的心得发布。希望对大家有用,如果您发现我的理解有误,请来信告之我们。信箱:info@ccrun.com 版权虽然有没有都没关系,不过如果您要转载,请注明出处,并保证文档的完整性。谢谢。 
我用的分析工具是UltraEdit32 v10.00,编程工具是C++ Builder 6.0 
     经过用UltraEdit32分析,发现Access2000和Access2002的数据库加密方式相同,所以以下只针对Access2000的mdb文件。还有就是我用的是16进制的数表示,所以前面加了0x,如果你用的是VB或其他,要注意数值哦。 
     首先用AccessXP创建了一个空密码的数据库文件db1.mdb,包含一个表,其中有一个字段,没有填任何数据。保存退出然后复制一份为db2.mdb,以独占方式打开2.mdb,并加上密码1324567890123 保存退出。 
    用UltraEdit32打开这两个数据库,并进行比较。我比较的方法也很简单。在UltraEdit32中,快速的来回点击被打开文件的选项卡(就是在两个文件间来回切换,呵呵。笨办法吧),发现从文件头开始0x42字节处发生变化。 
db1.mdb 
00000040h:BC 4E BE 68 EC 37 65 D7 9C FA FE CD 28 E6 2B 25 ; 
00000050h: 8A 60 6C 07 7B 36 CD E1 DF B1 4F 67 13 43 F7 3C ; 
00000060h:B1 33 0C F2 79 5B AA 26 7C 2A 4F E9 7C 99 05 13 ; 
db2.mdb 
00000040h:BC 4E 8F 68 DE 37 56 D7 A8 FA CB CD 1E E6 1C 25 ; 
00000050h: B2 60 55 07 4B 36 FC E1 ED B1 7C 67 13 43 F7 3C ; 
00000060h:B1 33 0C F2 79 5B AA 26 7C 2A 4F E9 7C 99 05 13 ; 
为了看的清楚些,我把不同的字节加了颜色。看出门道了吧,Access97以后的版本里,密码字节不再是连续存放,而是隔一个字节存一个。并且经过加密。到于解密的方法嘛,还是用老办法“异或”!0xBE ^ 0x8F = 0x31,这正好是Ascii码"1"哦。下一个0xEC ^ 0xDE = 0x32 正好是Ascii码"2",呵呵。一直到最后一个不同的0x4F ^ 0x7C =0x33,将取得的字符合成字符串,便是密码明文“1234567890123",千万不要以为这样就收工了。因为这一次是正好碰对了。呵呵。我刚开始也以为就这么简单,于是用CB做了个小程序,试着解了几个mdb密码都还行,可是试到动网论坛的mdb文件时发现取出来的密码不对,晕了。于是用另外一个取mdb密码的工具看了一下,发现人家的就可以正确的取出密码,是Access2000的格式,于是感觉微软加密的方式还是没研究完。继续工作,用UltraEdit32打开动网论坛的数据库dVBbs.mdb,和我前面的加过密的数据库做比较,发现不同的地方很多。只好一个字节一个字节的试。。。。nnn次以后发现第0x62处的这个字节起着关键作用,暂称之为加密标志。 
db1.mdb //空密码 
00000040h:BC 4E BE 68 EC 37 65 D7 9C FA FE CD 28 E6 2B 25 ; 
00000050h: 8A 60 6C 07 7B 36 CD E1 DF B1 4F 67 13 43 F7 3C ; 
00000060h:B1 33 0C F2 79 5B AA 26 7C 2A 4F E9 7C 99 05 13 ; 
db2.mdb //密码为:1234567890123 
00000040h:BC 4E 8F 68 DE 37 56 D7 A8 FA CB CD 1E E6 1C 25 ; 
00000050h: B2 60 55 07 4B 36 FC E1 ED B1 7C 67 13 43 F7 3C ; 
00000060h:B1 33 0C F2 79 5B AA 26 7C 2A 4F E9 7C 99 05 13 ; 
dVBbs.mdb //密码为:yemeng.net 
00000040h:BC 4E DB 6A 89 37 14 D5 F9 FA 8C CF 4F E6 19 27

1 2 3 下一页

排行

  1. VC防止窗口和控件闪烁的方法
  2. 基于Winsock API的VC网络编程实战
  3. 用VC实现动态改变Windows的显示特
  4. VC中利用MFC设计绘图程序初步
  5. Delphi存取图像完整解决方案
  6. vb的属性、方法和事件(二)
  7. vb的属性、方法和事件(一)
  8. vb控件的使用
  9. vb的控件数据
  10. vb控件简介
  11. vb程序设计
  12. vb的工具栏、对话框
  13. vb菜单在应用程序中的使用
  14. vb的用户界面
  15. vb对象的使用
  16. vb的datagrid控件的使用
  1. 听说过WinZip软件也可以“杀毒”
  2. 利用Delphi开发旅游景点微机售票
  3. 在DBGrid组件中显示和编辑MEMO字
  4. 在Delphi编程中使用C语言代码
  5. Delphi编程播放无声音的AVI动画
  6. Visual C++开发工具与调试技巧整
  7. Visual C++设计超强仿QQ自动伸缩
  8. VC6.0下配置boost库使用正则表达
  9. VC开发多语言界面支持的简单方法
  10. 理解MFC控制条窗口布局原理之一
  11. 基于HOOK和MMF的Windows密码渗透
  12. VC++开发PhotoShop插件之选区
  13. 基于OpenGL的三维曲面数据场动态
  14. 最常见的20种VC++编译错误信息集
  15. Visual C++编译器常用选项设置
  16. VC++实现计算机并口的数据采集
  1. 听说过WinZip软件也可以“杀毒”
  2. Delphi存取图像完整解决方案
  3. 利用Delphi开发旅游景点微机售票
  4. 在DBGrid组件中显示和编辑MEMO字
  5. 学好VC++的十大良好习惯
  6. DELPHI数据库应用程序的开发环境
  7. 汇编DEBUG全过程跟踪
  8. 汇编中的管道操作方法(一)
  9. 汇编中的管道操作方法(二)
  10. 汇编中的管道操作方法(三)
  11. 汇编进程控制的实现方法(一)
  12. 汇编进程控制的实现方法(二)
  13. 汇编中使用定时器的方法
  14. 汇编复杂形状的窗口实例学习
  15. 汇编图形界面的操作
  16. 汇编菜单和加速键(一)

最近更新

  • 推荐阅读
  • Access《破解Access(*.mdb)目前所有版本的密码》破解Access(*.mdb)目前所有版本的密码
    关于我们 | 版权申明 | 广告服务 | 友情链接 | 网站地图 | 使用帮助 | ©2006-2008 TTADD.COM