冥界3大法王 发表于 2014-3-11 22:40

1题多解之 时间限制的多种玩法:

http://www.52pojie.cn/thread-63357-1-1.html


006CF849|.E8 5EE8FFFF   call    006CE0AC

ds:=76AEFECF (user32.MessageBoxW)
本地调用来自 005AA088, 006CF86D, 006F4356

00414017   .BA 52B5B000   mov   edx, 00B0B552                  ;regDate

0044E0D0   . /7F 7F         jg      short 0044E151

以TimeLeft3为切入点
00413423   .8B4D C0       mov   ecx, dword ptr
可以看到信息窗口中
堆栈 ss:=00000032    准备写入50次了,实际上写入49次
ecx=056002DC, (UNICODE "TimesLeft3")

0041340D   .BA 74B3B000   mov   edx, 00B0B374                  ;TimesLeft3
00413412   .8D45 F0       lea   eax, dword ptr
00413415   .E8 92616E00   call    00AF95AC
0041341A   .FF45 E0       inc   dword ptr
0041341D   .8B08          mov   ecx, dword ptr
0041341F   .8D45 B8       lea   eax, dword ptr
00413422   .51            push    ecx
00413423   .8B4D C0       mov   ecx, dword ptr       ;实际上写入49次
00413426   .49            dec   ecx                            ;   这句上是减1,故此注册表键值实际写入是49,我们娱乐改成INC +1,破法1
0044E0D0   . /7F 7F         jg      short 0044E151       破法2,传统搞法JMP
00413441   .E8 62811600   call    0057B5A8
00413446   .FF4D E0       dec   dword ptr 这句F8时,可看到regworkshop中键值被写入 ,破法3

由于反调试,内部带壳,所以,还是搞个内存补丁,省的死更多的脑细胞。






0057B375|.8BC6          mov   eax, esi 可能重要,下一句看到任务栏出现程序图标了,说明该下手了


:403cad call jmp .kernel32.isdebuggerpresent 反调试信息出现

as944208014 发表于 2014-3-11 23:07

新手不明白

YsGer 发表于 2014-3-11 23:40

我就看懂个 dec inc哪里还有一个jmp跳转 感谢楼主分享你的思路

shu810687117 发表于 2014-3-11 23:44

又学习了一中破解方法
页: [1]
查看完整版本: 1题多解之 时间限制的多种玩法: