首页
社区
课程
招聘
[旧帖] [邀请码已发][原创]原创:破解鸿飞日记本密码(申请邀请码) 0.00雪花
发表于: 2010-5-16 10:11 2429

[旧帖] [邀请码已发][原创]原创:破解鸿飞日记本密码(申请邀请码) 0.00雪花

2010-5-16 10:11
2429
没有功劳也有苦劳吧

软件是从360安全卫士的软件库下载的。版本是2010.0411
破解的不是注册码,而是进入日记的密码。
用peid0.94 查壳nSpack v2.x -> LiuXingPing by wynney *
用OD载入 用esp定律 找到oep
00401000    E8 06000000     call 鸿飞日记.0040100B
00401005    50              push eax
00401006    E8 BB010000     call 鸿飞日记.004011C6            ; jmp 到
0040100B    55              push ebp
0040100C    8BEC            mov ebp,esp
0040100E    81C4 F0FEFFFF   add esp,-110

我觉得这个oep应该是0040100B 我看这这个头好像是也不知道对不对,请高手指点。因为我破解全凭感觉。
然后lordpe拖壳。Importrec修复。
重新载入拖壳后的软件
直接f9运行起来
默认用户名是 鸿飞  我输入pediy 密码7878吧
密码错误
不要点错误提示  在OD中f12暂停  然后alt+k
然后找到  图1
中的错误提示messageboxa  双击
10062C80    FF15 9C360C10   call dword ptr ds:[<&USER32.M>; user32.MessageBoxA
10062C86    5F              pop edi
10062C87    83F8 03         cmp eax,3
10062C8A    5E              pop esi
10062C8B    75 0F           jnz short krnln.10062C9C
10062C8D    8B4C24 68       mov ecx,dword ptr ss:[esp+68]
10062C91    B8 02000000     mov eax,2
10062C96    8901            mov dword ptr ds:[ecx],eax
10062C98    83C4 64         add esp,64
10062C9B    C3              retn

来到10062c80  这个call就是调用了错误对话框吧
在他下面下个断点  10062c86 吧
F9继续运行  点  错误对话框的确定  被断下来了
F8单步走 一直走到主线程,模块 出现鸿飞日记本程序(就是我们载入的程序)的时候
也就是来到0063CE7E

0063CE79    E8 96020000     call Unpack_.0063D114
0063CE7E    83C4 28         add esp,28
0063CE81    6A 00           push 0
0063CE83    68 0A7D4000     push Unpack_.00407D0A
0063CE88    6A FF           push -1
0063CE8A    6A 08           push 8
0063CE8C    68 58020116     push 16010258
0063CE91    68 55020152     push 52010255
0063CE96    E8 6D020000     call Unpack_.0063D108
0063CE9B    83C4 18         add esp,18
0063CE9E    E9 00000000     jmp Unpack_.0063CEA3
0063CEA3    8BE5            mov esp,ebp
0063CEA5    5D              pop ebp
0063CEA6    C3              retn

那么上面这个call也就是我们刚刚出来的call了,也就是在这里出现了错误提示,注释一下记住他。
往上找有个jmp 可以无条件跳过去,不可能是这个了,肯定有个跳 跳到jmp跟这个call之间才对啊,继续往上找。
上面的跳太多了,实在是不好找,干脆来到这段程序的开头吧。

0063CC47    55              push ebp
0063CC48    8BEC            mov ebp,esp
0063CC4A    81EC 0C000000   sub esp,0C
0063CC50    6A FF           push -1
0063CC52    6A 08           push 8
0063CC54    68 57020116     push 16010257
0063CC59    68 55020152     push 52010255
0063CC5E    E8 B7040000     call Unpack_.0063D11A
**********************************
**********************************
**********************************
0063CE3A    68 02000000     push 2
0063CE3F    BB 60030000     mov ebx,360
0063CE44    E8 CB020000     call Unpack_.0063D114
0063CE49    83C4 1C         add esp,1C
0063CE4C    E9 52000000     jmp Unpack_.0063CEA3
0063CE51    6A 00           push 0
0063CE53    6A 00           push 0
0063CE55    6A 00           push 0
0063CE57    68 01030080     push 80000301
0063CE5C    6A 00           push 0
0063CE5E    68 00000000     push 0
0063CE63    68 04000080     push 80000004
0063CE68    6A 00           push 0
0063CE6A    68 5DBC5A00     push Unpack_.005ABC5D
0063CE6F    68 03000000     push 3
0063CE74    BB 00030000     mov ebx,300
0063CE79    E8 96020000     call Unpack_.0063D114         ; 错误对话框
0063CE7E    83C4 28         add esp,28
0063CE81    6A 00           push 0
0063CE83    68 0A7D4000     push Unpack_.00407D0A
0063CE88    6A FF           push -1
0063CE8A    6A 08           push 8
0063CE8C    68 58020116     push 16010258
0063CE91    68 55020152     push 52010255
0063CE96    E8 6D020000     call Unpack_.0063D108
0063CE9B    83C4 18         add esp,18
0063CE9E    E9 00000000     jmp Unpack_.0063CEA3
0063CEA3    8BE5            mov esp,ebp
0063CEA5    5D              pop ebp
0063CEA6    C3              retn

程序太多了为了节约,中间部分用**********代替了。
在这段程序的开头0063CC47    55              push ebp  下短
点运行重新注册
中断在0063CC47    55              push ebp
我们一步一步走,每一个跳都在后面标出来,同时注意看寄存器
下面我把表了注释的贴上

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (20)
雪    币: 29
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
0063CC47    55              push ebp
0063CC48    8BEC            mov ebp,esp
0063CC4A    81EC 0C000000   sub esp,0C
0063CC50    6A FF           push -1
0063CC52    6A 08           push 8
0063CC54    68 57020116     push 16010257
0063CC59    68 55020152     push 52010255
0063CC5E    E8 B7040000     call Unpack_.0063D11A         ; 取用户名
0063CC63    83C4 10         add esp,10
0063CC66    8945 FC         mov dword ptr ss:[ebp-4],eax
0063CC69    68 0A7D4000     push Unpack_.00407D0A
0063CC6E    FF75 FC         push dword ptr ss:[ebp-4]
0063CC71    E8 4F45FFFF     call Unpack_.006311C5
0063CC76    83C4 08         add esp,8
0063CC79    83F8 00         cmp eax,0
0063CC7C    B8 00000000     mov eax,0
0063CC81    0F94C0          sete al
0063CC84    8945 F8         mov dword ptr ss:[ebp-8],eax
0063CC87    8B5D FC         mov ebx,dword ptr ss:[ebp-4]
0063CC8A    85DB            test ebx,ebx
0063CC8C    74 09           je short Unpack_.0063CC97     ; 没跳
0063CC8E    53              push ebx
0063CC8F    E8 68040000     call Unpack_.0063D0FC
0063CC94    83C4 04         add esp,4
0063CC97    837D F8 00      cmp dword ptr ss:[ebp-8],0
0063CC9B    0F84 35000000   je Unpack_.0063CCD6           ; 跳了
0063CCA1    6A 00           push 0
0063CCA3    6A 00           push 0
0063CCA5    6A 00           push 0
0063CCA7    68 01030080     push 80000301
0063CCAC    6A 00           push 0
0063CCAE    68 00000000     push 0
0063CCB3    68 04000080     push 80000004
0063CCB8    6A 00           push 0
0063CCBA    68 3DBC5A00     push Unpack_.005ABC3D
0063CCBF    68 03000000     push 3
0063CCC4    BB 00030000     mov ebx,300
0063CCC9    E8 46040000     call Unpack_.0063D114
0063CCCE    83C4 28         add esp,28
0063CCD1    E9 00000000     jmp Unpack_.0063CCD6
0063CCD6    6A FF           push -1
0063CCD8    6A 08           push 8
0063CCDA    68 58020116     push 16010258
0063CCDF    68 55020152     push 52010255
0063CCE4    E8 31040000     call Unpack_.0063D11A         ; 取密码
0063CCE9    83C4 10         add esp,10
0063CCEC    8945 FC         mov dword ptr ss:[ebp-4],eax
0063CCEF    68 0A7D4000     push Unpack_.00407D0A
0063CCF4    FF75 FC         push dword ptr ss:[ebp-4]
0063CCF7    E8 C944FFFF     call Unpack_.006311C5
0063CCFC    83C4 08         add esp,8
0063CCFF    83F8 00         cmp eax,0
0063CD02    B8 00000000     mov eax,0
0063CD07    0F94C0          sete al
0063CD0A    8945 F8         mov dword ptr ss:[ebp-8],eax
0063CD0D    8B5D FC         mov ebx,dword ptr ss:[ebp-4]
0063CD10    85DB            test ebx,ebx
0063CD12    74 09           je short Unpack_.0063CD1D     ; 没跳
0063CD14    53              push ebx
0063CD15    E8 E2030000     call Unpack_.0063D0FC
0063CD1A    83C4 04         add esp,4
0063CD1D    837D F8 00      cmp dword ptr ss:[ebp-8],0
0063CD21    0F84 35000000   je Unpack_.0063CD5C           ; 跳了
0063CD27    6A 00           push 0
0063CD29    6A 00           push 0
0063CD2B    6A 00           push 0
0063CD2D    68 01030080     push 80000301
0063CD32    6A 00           push 0
0063CD34    68 00000000     push 0
0063CD39    68 04000080     push 80000004
0063CD3E    6A 00           push 0
0063CD40    68 4EBC5A00     push Unpack_.005ABC4E
0063CD45    68 03000000     push 3
0063CD4A    BB 00030000     mov ebx,300
0063CD4F    E8 C0030000     call Unpack_.0063D114
0063CD54    83C4 28         add esp,28
0063CD57    E9 00000000     jmp Unpack_.0063CD5C
0063CD5C    6A FF           push -1
0063CD5E    6A 08           push 8
0063CD60    68 E8020116     push 160102E8
0063CD65    68 55020152     push 52010255
0063CD6A    E8 AB030000     call Unpack_.0063D11A         ; 得到乱码1
0063CD6F    83C4 10         add esp,10
0063CD72    8945 FC         mov dword ptr ss:[ebp-4],eax
0063CD75    6A FF           push -1
0063CD77    6A 08           push 8
0063CD79    68 56020116     push 16010256
0063CD7E    68 55020152     push 52010255
0063CD83    E8 92030000     call Unpack_.0063D11A         ; 得到乱码2
0063CD88    83C4 10         add esp,10
0063CD8B    8945 F8         mov dword ptr ss:[ebp-8],eax
0063CD8E    8B45 F8         mov eax,dword ptr ss:[ebp-8]
0063CD91    50              push eax
0063CD92    FF75 FC         push dword ptr ss:[ebp-4]
0063CD95    E8 2B44FFFF     call Unpack_.006311C5
0063CD9A    83C4 08         add esp,8
0063CD9D    83F8 00         cmp eax,0
0063CDA0    B8 00000000     mov eax,0
0063CDA5    0F94C0          sete al
0063CDA8    8945 F4         mov dword ptr ss:[ebp-C],eax
0063CDAB    8B5D FC         mov ebx,dword ptr ss:[ebp-4]
0063CDAE    85DB            test ebx,ebx
0063CDB0    74 09           je short Unpack_.0063CDBB     ; 没跳
0063CDB2    53              push ebx
0063CDB3    E8 44030000     call Unpack_.0063D0FC
0063CDB8    83C4 04         add esp,4
0063CDBB    8B5D F8         mov ebx,dword ptr ss:[ebp-8]
0063CDBE    85DB            test ebx,ebx
0063CDC0    74 09           je short Unpack_.0063CDCB     ; 没跳
0063CDC2    53              push ebx
0063CDC3    E8 34030000     call Unpack_.0063D0FC
0063CDC8    83C4 04         add esp,4
0063CDCB    837D F4 00      cmp dword ptr ss:[ebp-C],0
0063CDCF    0F84 7C000000   je Unpack_.0063CE51           ; 跳了
0063CDD5    68 02000080     push 80000002
0063CDDA    6A 00           push 0
0063CDDC    68 01000000     push 1
0063CDE1    6A 00           push 0
0063CDE3    6A 00           push 0
0063CDE5    6A 00           push 0
0063CDE7    68 01000100     push 10001
0063CDEC    68 00000106     push 6010000
0063CDF1    68 01000152     push 52010001
0063CDF6    68 03000000     push 3
0063CDFB    BB 20030000     mov ebx,320
0063CE00    E8 0F030000     call Unpack_.0063D114
0063CE05    83C4 28         add esp,28
0063CE08    6A 00           push 0
0063CE0A    68 01000000     push 1
0063CE0F    6A FF           push -1
0063CE11    6A 05           push 5
0063CE13    68 00000106     push 6010000
0063CE18    68 01000152     push 52010001
0063CE1D    E8 E6020000     call Unpack_.0063D108
0063CE22    83C4 18         add esp,18
0063CE25    6A 00           push 0
0063CE27    6A 00           push 0
0063CE29    6A 00           push 0
0063CE2B    68 01000100     push 10001
0063CE30    68 54020106     push 6010254
0063CE35    68 55020152     push 52010255
0063CE3A    68 02000000     push 2
0063CE3F    BB 60030000     mov ebx,360
0063CE44    E8 CB020000     call Unpack_.0063D114
0063CE49    83C4 1C         add esp,1C
0063CE4C    E9 52000000     jmp Unpack_.0063CEA3
0063CE51    6A 00           push 0
0063CE53    6A 00           push 0
0063CE55    6A 00           push 0
0063CE57    68 01030080     push 80000301
0063CE5C    6A 00           push 0
0063CE5E    68 00000000     push 0
0063CE63    68 04000080     push 80000004
0063CE68    6A 00           push 0
0063CE6A    68 5DBC5A00     push Unpack_.005ABC5D
0063CE6F    68 03000000     push 3
0063CE74    BB 00030000     mov ebx,300
0063CE79    E8 96020000     call Unpack_.0063D114         ; 错误对话框
0063CE7E    83C4 28         add esp,28
0063CE81    6A 00           push 0
0063CE83    68 0A7D4000     push Unpack_.00407D0A
0063CE88    6A FF           push -1
0063CE8A    6A 08           push 8
0063CE8C    68 58020116     push 16010258
0063CE91    68 55020152     push 52010255
0063CE96    E8 6D020000     call Unpack_.0063D108
0063CE9B    83C4 18         add esp,18
0063CE9E    E9 00000000     jmp Unpack_.0063CEA3
0063CEA3    8BE5            mov esp,ebp
0063CEA5    5D              pop ebp
0063CEA6    C3              retn
2010-5-16 10:12
0
雪    币: 29
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
可以看到最后一个跳是在
0063CDCF    0F84 7C000000   je Unpack_.0063CE51           ; 跳了
要是不跳就会运行到jmp
那么就跳过去错误对话框了。
要爆破就把这个跳改了吧。把84改成85吧。
保存就ok了

我知道我的水平也就是到这里了,要分析算法我还真不是这块料,不过我看到出现过两次乱码。也实在想看看分析一下他怎么弄的算法。跟踪了很多次这个算乱码的call 也没弄明白什么意思,不过也有一点收获就是我换了好几次用户名 密码 得到一些信息

下面的格式是:  
用户名   密码
乱码1
乱码2

3800cc   7878
21c3134ee5edcb618c4f9aae358d73a7
c4ca4238a0b923820dcc509a6f75849b
pediy    7878
21c3134ee5edcb618c4f9aae358d73a7
c4ca4238a0b923820dcc509a6f75849b
pediy    pediy
4dd466d0e1e0cc123afbe504da2462ca
c4ca4238a0b923820dcc509a6f75849b
3800cc   3800cc
566525601ab0f8109fdacbcad8f9c33f
c4ca4238a0b923820dcc509a6f75849b
7878     7878
21c3134ee5edcb618c4f9aae358d73a7
c4ca4238a0b923820dcc509a6f75849b

通过上面我们看到乱码2总是一样,这里说一下这个日记本的初始密码是1
所以乱码2是日记本密码通过加密得到的值
乱码1  通过比较当用户名变密码一样的时候乱码1就一样,看来是吧密码加密的。用户名没有加密
很好玩,也就是说我们可以不知道用户名只要知道密码我们就可以进入日记了。
到这里第一天也就没再有什么进展了。

第二天早上我本来想卸载了吧 ,卸载完了以后我一看,晕还留下一些东西
其中一个文件  rj.fdb  这个fdb我记得以前编程是数据库文件rj 不就是日记嘛
也就是说 这是个日记数据库文件  我想看看里面有什么东西。电脑没装access数据库
我又不想再装太麻烦了。网上找了个   MDB打开工具  把我们的rj.fdb改成rj.mdb
打开要密码  很郁闷  再找access数据库密码破解吧。最后找到了AOXPPR这个东西
可以破解了 就是密码太长不显示,因为我下载的是未注册的。本来想把这个也给破解了算了,弄来弄去暴力破解了可是还是没法用提示注册成功,再打开还是没注册。我还是网上找个注册号先用着吧。
找了个注册号。把这个数据库文件密码破解出来了   hongfei.250118591.ww
这么个鬼密码。太多了。记不住复制下来吧。打开数据库文件
里面有个用户:密码:不过密码是加密的   c4ca4238a0b923820dcc509a6f75849b   这不就是我们乱码2嘛
没办法有网络就是好,我在百度里百度一下
百度还真好一片一片的出来了,一看1的md5值就是这个乱码
那就好说了也就是说我输入的7878密码加密后的md5值是
21c3134ee5edcb618c4f9aae358d73a7
我去http://www.cmd5.com/ 测试了一下,就是md5加密的

这样我们只要找到了乱码2再去网上把乱码2破解出来不就可以了吗。
到这里就该结束了,不过我又去他们网站上看了看发现有个比这个新的版本,用peid也没看出是什么东西。可能没加壳吧。通过0411版本我就知道入口了,新版本入口应该一样吧。破解起来应该都差不多。
上面用的的软件
Peid  OD大家都有
MDB打开工具  http://www.5uwl.net/Soft/down200/down1000/200610/2906.html   别点了广告烦人啊,下载地址好好找找。
杀毒软件可能会报毒,可以先关掉。我用的360报毒
AOXPPR  查mdb数据库密码的 http://p2s.newhua.com/down/HB-AOXPPR24-fxj.ZIP
注册码:AOXPPR-PRO-LWXFW-46678-FTDBV-66344
解密网址  http://www.cmd5.com/
2010-5-16 10:13
0
雪    币: 295
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
没有功劳也有苦劳 还真是如此。。
2010-5-16 10:24
0
雪    币: 29
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
我做事情总是虎头蛇尾。这次总算是有点苦劳吧 吼吼。。。
给自己个奖励。。。
2010-5-16 10:30
0
雪    币: 295
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
建议楼主你多发发这样的文章   一定可以弄到邀请码。。
2010-5-16 13:13
0
雪    币: 118
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
呵呵,看LZ的大的用户名3800CC  天草的教程看多了吧
2010-5-16 13:25
0
雪    币: 32
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
!!!!!!!!!!
2010-5-16 13:40
0
雪    币: 29
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
以前是黑鹰的会员呢,不过那时候还没有看破解,刚弄了没多少天后来就搬家上不去网了再后来网站上不去了。。。。
现在看天草的视频呢。。。。
2010-5-16 14:08
0
雪    币: 9
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
不错很详细,学习了
2010-5-16 16:02
0
雪    币: 36
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
好好学习 向高手看起
2010-5-16 17:50
0
雪    币: 58
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
支持楼主
2010-5-16 18:21
0
雪    币: 39
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
有苦劳 还真是如此。。
2010-5-16 18:33
0
雪    币: 16
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
估计得不到邀请码   我破解了些小软件都不好意思发上来
2010-5-16 18:58
0
雪    币: 4
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
看看自己有多少的份 呵呵
2010-5-16 19:08
0
雪    币: 9
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
谢谢了,慢慢来学习
2010-5-16 20:52
0
雪    币: 118
活跃值: (106)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
17
不明白。。。
2010-5-17 08:58
0
雪    币: 74
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
虽然不会 但顶一个
2010-5-17 09:59
0
雪    币: 274
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
先看看
2010-5-17 16:00
0
雪    币: 780
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
发了才有机会.不发连机会都没了
2010-5-17 16:04
0
雪    币: 29
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
现在看来根本不用这么麻烦直接看数据库的md5码,然后网上就可以破解了。唉太失败了。下次弄个好的再贴出来。
2010-5-17 18:03
0
游客
登录 | 注册 方可回帖
返回
//