首先我有程序经验,学过汇编,只太久没用了,忘得差不多了:o
说上面这句费话,只是怕大家嫌我菜,不想花时间下来。
言归正题:
环境:win2k3,Ollydbg1.10(本站下载,解压就用了,好象是没加插件吧)
目标:riijj CrackMe(1)
情况:
用Ollydbg1.10打开ncrackme.exe,设定 bp MessageBoxA ->F9 ->录入注册码
当按下 "Register",转回Ollydbg,但停下来的位置跟riijj说明那完全不一样,内容如下:
00401064 . E8 C7010000 CALL ncrackme.00401230 //->(1)为什么停在这了呢?没管它,F8再往下走
00401069 . 85C0 TEST EAX,EAX //(2)这时看到EAX的值是我录入的"1"
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 //(3)到这就跳到Registration fail.这个信息提示去了
00401074 . A1 B8564000 MOV EAX,DWORD PTR DS:[4056B8] ; |
00401079 . 68 64504000 PUSH ncrackme.00405064 ; |Text = "Registration successful."
0040107E . 50 PUSH EAX ; |hOwner => 000F0882 ('Newbie smallsize crackme - v1',class='myWindowClass')
0040107F . FF15 C0404000 CALL DWORD PTR DS:[<&USER32.MessageBoxA>>; \MessageBoxA
00401085 . E8 A6020000 CALL ncrackme.00401330
搞不清楚是上面标的:
(1)是不是win2003的原因,所以我的是跳到这来呢?(估计是,程序是正常的)
(2)看到是我录入的Name字符,那相应的code放在那跟Name比较呢?(这样才能知道当Name为'1'时,CODE是什么吧)
(3)这是叫关键跳转吗?如果我要暴力破解我该如何做?(试过没找到门,另想说是暴力破解应是初学者的第一步吧)
请各位给与帮助,TKS!
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课