首页
社区
课程
招聘
简单crackeme追注册码
发表于: 2012-10-31 22:52 4953

简单crackeme追注册码

2012-10-31 22:52
4953
为冒泡为继续反汇编学习,练手而做,没什么技术含量。
peid侦查结果为MASM32 / TASM32,那就直接OD载入。停在如下:

00401000 >/$  6A 00         push 0x0                                 ; /(Initial CPU selection)
00401002  |.  E8 C9000000   call <jmp.&kernel32.GetModuleHandleA>    ; \GetModuleHandleA
00401007  |.  A3 40304000   mov dword ptr ds:[0x403040],eax
0040100C  |.  6A 00         push 0x0                                 ; /lParam = NULL
0040100E  |.  68 28104000   push Crackme2.00401028                   ; |DlgProc = Crackme2.00401028
00401013  |.  6A 00         push 0x0                                 ; |hOwner = NULL
00401015  |.  6A 65         push 0x65                                ; |pTemplate = 65
00401017  |.  FF35 40304000 push dword ptr ds:[0x403040]             ; |hInst = NULL
0040101D  |.  E8 90000000   call <jmp.&user32.DialogBoxParamA>       ; \DialogBoxParamA
00401022  |.  50            push eax                                 ; /ExitCode
00401023  \.  E8 A2000000   call <jmp.&kernel32.ExitProcess>         ; \ExitProcess
00401028  /.  55            push ebp

右键查找当前模块中的名称,找到GetDlgItemTextA函数,或者直接BP GetDlgItemTextA,F9之后单步走几次,如下:

00401063  |.  52            push edx                                 ; /String2 = "Serial"
00401064  |.  53            push ebx                                 ; |String1 => "123456"
00401065  |.  E8 6C000000   call <jmp.&kernel32.lstrcmpA>            ; \lstrcmpA

123456为输入的假密码,真密码就是Serial,很明显调用了一个strcmpA作比较!

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

上传的附件:
收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 508
活跃值: (202)
能力值: ( LV9,RANK:160 )
在线值:
发帖
回帖
粉丝
2
还在玩这个啊
2012-10-31 23:00
0
雪    币: 112
活跃值: (56)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
3
等级好高 -_-
2012-10-31 23:56
0
雪    币: 193
活跃值: (1225)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
学习一下,谢谢分享
2012-11-1 07:23
0
雪    币: 91
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
好厉害啊,大神教我
2012-12-20 15:56
0
游客
登录 | 注册 方可回帖
返回
//