zwmwcj 发表于 2022-11-6 12:47

玩玩破解,写给新人看(第九集)学习小结

程序加载到OD找不到字符串。

先OD加载软件,运行到注册界面,进行注册,在弹窗注册失败窗口。返回OD窗口,在内存映射查找“登录失败”。

程序会跳转到“数据窗口”,显示查找到的字符串。在这个字符串设置断点,右击->断点->内存访问,。

在次软件注册,程序会断下来,在“CPU窗口”记录下地址,单步运行,到RETN,返回上一个调用程序。
00402363 |. 8B45 08 MOV EAX,
00402366 |. 8A08 MOV CL, BYTE PTR DS:
00402368 |. 8A45 10 MOV AL, BYTE PTR SS:;od断下
.......
00402398 |. 5D POP EBP
00402399 \. C3 RETN;返回上一级代码
记录地址,上下看一下有没有能跳个这个Call的跳转添加,返回上一个程序
0040159A   .57            PUSH EDI                                 ; |Arg1
0040159B   .E8 B00D0000   CALL CM(有错.00402350                      ; \CM(有错.00402350
004015A0   .83C4 0C       ADD ESP, 0xC ;od断下
.....
004015BD   .83C4 64       ADD ESP, 0x64
004015C0   .C3            RETN;返回上一级代码
一步一步往主程序走,返回上一级程序。
00419F7E   .52            PUSH EDX
00419F7F   .FFD3          CALL EBX
00419F81   .8B4424 0C   MOV EAX, DWORD PTR SS:;od断下
00419F85   .8B5424 10   MOV EDX, DWORD PTR SS:
00419F89   .8B4C24 14   MOV ECX, DWORD PTR SS:
00419F8D   .83C4 18       ADD ESP, 0x18
00419F90   .C3            RETN;返回上一级代码
一步一步往主程序走,到主程序了。
004011ED |. E8 31020000 CALL CM(有错.00401423 ; 对话框跟踪到主程序
004011F2 |. 83C4 10 ADD ESP, 0x10;od断下
......
004012E0 |> B8 00000000 MOV EAX, 0x0
004012E5 |> 85C0 TEST EAX, EAX
004012E7 0F84 72000000 JE CM(有错.0040135F ; 跳过登录成功je跳转决定的。修改不跳,成功。
......
00401342 |. E8 DC000000 CALL CM(有错.00401423 ; 登录成功
......
0040135A |> E9 6D000000 JMP CM(有错.004013CC ; 跳过登录失败
........
004013B4 |. E8 6A000000 CALL CM(有错.00401423 ; 登录失败提示

39571899kou 发表于 2022-12-5 15:54

zwmwcj 发表于 2022-12-7 12:15

不是,我是学别人的,你可以关注https://www.52pojie.cn/home.php?mod=space&uid=396495,是他的教学
页: [1]
查看完整版本: 玩玩破解,写给新人看(第九集)学习小结