月之精灵 发表于 2006-11-14 21:20:24

一个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:
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:,eax
00401439   |.50                push eax
0040143A   |.E8 95000000       call ncrackme.004014D4
0040143F   |.8B45 EC         mov eax,dword ptr ss:
00401442   |.8B08            mov ecx,dword ptr ds:
00401444   |.8B09            mov ecx,dword ptr ds:
00401446   |.894D 98         mov dword ptr ss:,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:
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:   ; |
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:   ; |
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至此,工作完成。

月之精灵 发表于 2006-11-15 11:56:23

http://yinguilin968.gbaopan.com/files/b6ee2e6199e948b798746c80af62e0d8.gbp

chadd 发表于 2006-11-20 18:57:45

看过,最好将crackme文件一同贴出

[ 本帖最后由 chadd 于 2006-11-20 19:05 编辑 ]

skyjiayang 发表于 2006-11-21 23:05:10

看了不怎么明白哦~

coolpeople 发表于 2006-11-22 22:31:25

爆破....感觉爆破用w32dasm这个就行

ZHOU2X 发表于 2006-11-23 12:31:48

原帖由 月之精灵 于 2006-11-14 21:20 发表
……
弹出:"Registration fil" 点确定。

应该弹出:"Registration successful."才算成功吧?;P

myselfsky 发表于 2006-12-6 06:52:13

原帖由 ZHOU2X 于 2006-11-23 12:31 发表


应该弹出:"Registration successful."才算成功吧?;P


同意楼上说法:P
页: [1]
查看完整版本: 一个crackme的破解