首页
社区
课程
招聘
[旧帖] [转帖]一个crackme的破解过程 0.00雪花
发表于: 2006-11-15 10:07 4613

[旧帖] [转帖]一个crackme的破解过程 0.00雪花

2006-11-15 10:07
4613
一个crackme的破解

昨晚下载的一个crackme程序,我是一个新手,下来只是想试一下,看能不能破了。
首先声明,这是我第一次破解,请高手指正。
文件名是ncrackme。用PEID查壳,无壳,显示:Microsoft Visual C++6.0.
用OD载入停在:
00401368 n>/$  55                push ebp
00401369   |.  8BEC              mov ebp,esp
0040136B   |.  6A FF             push -1
0040136D   |.  68 E8404000       push ncrackme.004040E8
00401372   |.  68 9C1E4000       push ncrackme.00401E9C            ;  SE handler installation
00401377   |.  64:A1 00000000    mov eax,dword ptr fs:[0]
0040137D   |.  50                push eax
按F9运行软件
弹出对话框:
Reg name  输入asdfg
Reg key    输入123456
按Register
弹出对话框:Registration file
重新载入软件,一路F8,至00401431

00401431   |.  E8 AAFCFFFF       call ncrackme.004010E0            ; \ncrackme.004010E0
00401436   |.  8945 A0           mov dword ptr ss:[ebp-60],eax
00401439   |.  50                push eax
0040143A   |.  E8 95000000       call ncrackme.004014D4
0040143F   |.  8B45 EC           mov eax,dword ptr ss:[ebp-14]
00401442   |.  8B08              mov ecx,dword ptr ds:[eax]
00401444   |.  8B09              mov ecx,dword ptr ds:[ecx]
00401446   |.  894D 98           mov dword ptr ss:[ebp-68],ecx
00401449   |.  50                push eax
0040144A   |.  51                push ecx
0040144B   |.  E8 59010000       call ncrackme.004015A9

弹出对话框,同上输入:Reg name  输入asdfg
           Reg key    输入123456
按Register,显示:Registration file
重新载入软件,向上找到“注释'Text=REgistration fill'

00401058    . /75 74             jnz short ncrackme.004010CE
0040105A    . |8B4424 0C         mov eax,dword ptr ss:[esp+C]
0040105E    . |66:3D EA03        cmp ax,3EA
00401062    . |75 42             jnz short ncrackme.004010A6
00401064    . |E8 C7010000       call ncrackme.00401230
00401069    . |85C0              test eax,eax
0040106B    . |6A 00             push 0                            ; /Style = MB_OK|MB_APPLMODAL
0040106D    . |68 80504000       push ncrackme.00405080            ; |Title = "ncrackme"
00401072      |75 1B             jnz short ncrackme.0040108F
00401074    . |A1 B8564000       mov eax,dword ptr ds:[4056B8]     ; |
00401079    . |68 64504000       push ncrackme.00405064            ; |Text = "Registration successful."
0040107E    . |50                push eax                          ; |hOwner => NULL
0040107F    . |FF15 C0404000     call dword ptr ds:[<&USER32.Messa>; \MessageBoxA
00401085    . |E8 A6020000       call ncrackme.00401330
0040108A    . |33C0              xor eax,eax
0040108C    . |C2 1000           retn 10
0040108F    > |8B0D B8564000     mov ecx,dword ptr ds:[4056B8]     ; |
00401095    . |68 50504000       push ncrackme.00405050            ; |Text = "Registration fail."

向上看
00401072      |75 1B             jnz short ncrackme.0040108F这一行
我认为就是这个跳引出的这个”注册文件“

右键00401072,汇编jnzn改为jz。即75改74。
再右键00401072,选复制到可执行文件-选择部分。
在弹出的第一个窗口中右键-保存文件。
选择覆盖文件。存盘。
退出OD。
运行软件,弹出对话框。输入:Reg name  输入asdfg
              Reg key    输入123456
按Register
弹出:"Registration fil" 点确定。
l至此,工作完成。

[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 226
活跃值: (11)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
应该弹出"Registration successful."的,怎么还是注册失败呀,是不是你写错了?
2006-11-15 17:14
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
好幼稚啊,只是简单的爆破
2006-11-15 17:25
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
最初由 SmileBoy 发布
好幼稚啊,只是简单的爆破


不要这么说啊,反正破了敢拿上来就是好的啊,应当支持啊~~
2006-11-15 22:54
0
雪    币: 697
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
最初由 yumikeyabc 发布
应该弹出"Registration successful."的,怎么还是注册失败呀,是不是你写错了?

是的,是我写错了。
2006-11-16 17:10
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
就这我还不会呢?
多学习学习一下。
谢谢。
2006-11-19 08:47
0
雪    币: 226
活跃值: (11)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
7
最初由 SmileBoy 发布
好幼稚啊,只是简单的爆破


学破解都是从爆破开始的,你不要对我说你一开始就会算法分析。
2006-11-19 11:16
0
游客
登录 | 注册 方可回帖
返回
//