冥界3大法王 发表于 2014-3-12 23:47

一款反调试OD的破解之旅

本帖最后由 冥界3大法王 于 2014-3-12 23:49 编辑

德语助手 11.21,终极内存补丁彻底注册版,新鲜出炉:

图片:
http://bbs.crsky.com/1236983883/Mon_1403/83_215916_15711e7537d31d1.gif
http://bbs.crsky.com/1236983883/Mon_1403/219_215916_18df5bedbcd5b39.gif
http://bbs.crsky.com/1236983883/Mon_1403/219_215916_93df43cbb237bba.gif

http://bbs.crsky.com/1236983883/Mon_1403/83_215916_adf3630e0c917c2.gif
昨天没有彻底成功,今天看会了反调试部分,茅塞顿开,又努力了下,终于彻底成功了。








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
00413441   .E8 62811600   call    0057B5A8
00413446   .FF4D E0       dec   dword ptr 这句F8时,可看到regworkshop中键值被写入 ,破法3

0041414C   .BA B4B5B000   mov   edx, 00B0B5B4                  ;LicenseCode 显然这句很重要,启动时拦下!!

009AB0E2   .68 8ED9BA00   push    00BAD98E                         ;@local_timestamp








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


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






=====================
004627CC/$55            push    ebp                   ;断在这里可以看到我们的假码!
004627CD|.8BEC          mov   ebp, esp
004627CF|.81C4 14FFFFFF add   esp, -0xEC
004627D5|.53            push    ebx
004627D6|.56            push    esi
004627D7|.57            push    edi
004627D8|.8955 FC       mov   dword ptr , edx
004627DB|.8985 3CFFFFFF mov   dword ptr , eax
004627E1|.8DB5 40FFFFFF lea   esi, dword ptr
004627E7|.B8 D48EB500   mov   eax, 00B58ED4
004627EC|.E8 A3406800   call    00AE6894
004627F1|.C746 1C 01000>mov   dword ptr , 0x1
004627F8|.8D55 FC       lea   edx, dword ptr
004627FB|.8D45 FC       lea   eax, dword ptr
004627FE|.E8 E96D6900   call    00AF95EC
00462803|.FF46 1C       inc   dword ptr
00462806|.66:C746 10 0C>mov   word ptr , 0xC
0046280C|.66:C746 10 18>mov   word ptr , 0x18
00462812|.E8 A9B9FAFF   call    0040E1C0
00462817|.50            push    eax
00462818|.8D55 D4       lea   edx, dword ptr
0046281B|.52            push    edx
0046281C|.E8 331AFBFF   call    00414254
00462821|.83C4 08       add   esp, 0x8
00462824|.FF46 1C       inc   dword ptr
00462827|.66:C746 10 0C>mov   word ptr , 0xC
0046282D|.66:C746 10 24>mov   word ptr , 0x24
00462833|.8D45 D0       lea   eax, dword ptr
00462836|.E8 C516FAFF   call    00403F00
0046283B|.8BD0          mov   edx, eax
0046283D|.FF46 1C       inc   dword ptr
00462840|.8B8D 3CFFFFFF mov   ecx, dword ptr
00462846|.8B81 B4030000 mov   eax, dword ptr
0046284C|.E8 67012300   call    006929B8
00462851|.8D45 D0       lea   eax, dword ptr
00462854|.E8 1FCDFAFF   call    0040F578
00462859|.50            push    eax
0046285A|.8D55 A8       lea   edx, dword ptr
0046285D|.52            push    edx
0046285E|.E8 11CBFAFF   call    0040F374
00462863|.83C4 08       add   esp, 0x8
00462866|.FF46 1C       inc   dword ptr
00462869|.8D4D A8       lea   ecx, dword ptr
0046286C|.51            push    ecx
0046286D|.8D7D 80       lea   edi, dword ptr
00462870|.57            push    edi
00462871|.E8 4A1D5B00   call    00A145C0
00462876|.83C4 08       add   esp, 0x8
00462879|.8D45 80       lea   eax, dword ptr
0046287C|.50            push    eax
0046287D|.FF46 1C       inc   dword ptr
00462880|.E8 1B78FAFF   call    0040A0A0
00462885|.59            pop   ecx
00462886|.50            push    eax
00462887|.8D55 D4       lea   edx, dword ptr
0046288A|.52            push    edx
0046288B|.E8 1078FAFF   call    0040A0A0
00462890|.59            pop   ecx
00462891|.50            push    eax
00462892|.E8 09A06600   call    00ACC8A0
00462897|.83C4 08       add   esp, 0x8
0046289A|.8BD8          mov   ebx, eax
0046289C|.FF4E 1C       dec   dword ptr
0046289F|.8D45 80       lea   eax, dword ptr
004628A2|.6A 02         push    0x2
004628A4|.50            push    eax
004628A5|.E8 760FFAFF   call    00403820
004628AA|.83C4 08       add   esp, 0x8
004628AD|.FF4E 1C       dec   dword ptr
004628B0|.6A 02         push    0x2
004628B2|.8D55 A8       lea   edx, dword ptr
004628B5|.52            push    edx
004628B6|.E8 8D0FFAFF   call    00403848
004628BB|.83C4 08       add   esp, 0x8
004628BE|.FF4E 1C       dec   dword ptr
004628C1|.8D45 D0       lea   eax, dword ptr
004628C4|.BA 02000000   mov   edx, 0x2
004628C9|.E8 466F6900   call    00AF9814
004628CE|.66:C746 10 0C>mov   word ptr , 0xC
004628D4|.84DB          test    bl, bl
004628D6|.0F84 43010000 je      00462A1F                           ;跳走了,肯定不能让它走~~~ NOP了
004628DC|.B2 01         mov   dl, 0x1
004628DE|.A1 58955700   mov   eax, dword ptr
004628E3|.E8 BC7D1100   call    0057A6A4
004628E8|.66:C746 10 30>mov   word ptr , 0x30
004628EE|.8BF8          mov   edi, eax
004628F0|.8D85 7CFFFFFF lea   eax, dword ptr
004628F6|.BA 4486B500   mov   edx, 00B58644                  ;Software\Francophonie\Dehelper\Customer Info
004628FB|.E8 246E6900   call    00AF9724
00462900|.FF46 1C       inc   dword ptr
00462903|.8B10          mov   edx, dword ptr
00462905|.B1 01         mov   cl, 0x1
00462907|.8BC7          mov   eax, edi
00462909|.E8 6E801100   call    0057A97C
0046290E|.FF4E 1C       dec   dword ptr
00462911|.8D85 7CFFFFFF lea   eax, dword ptr
00462917|.BA 02000000   mov   edx, 0x2
0046291C|.E8 F36E6900   call    00AF9814
00462921|.66:C746 10 0C>mov   word ptr , 0xC
00462927|.33DB          xor   ebx, ebx                            ;要清,到底要不要让它清? 结果尝试NOP 成功
00462929|>66:C746 10 48>/mov   word ptr , 0x48
0046292F|.BA 9E86B500   |mov   edx, 00B5869E                      ; 确实是注册表键值 SerialCode
00462934|.8D85 78FFFFFF |lea   eax, dword ptr
0046293A|.E8 6D6C6900   |call    00AF95AC
0046293F|.FF46 1C       |inc   dword ptr
00462942|.66:C746 10 3C>|mov   word ptr , 0x3C
00462948|.85DB          |test    ebx, ebx
0046294A|.7E 3A         |jle   short 00462986
0046294C|.66:C746 10 54>|mov   word ptr , 0x54
00462952|.8D85 74FFFFFF |lea   eax, dword ptr
00462958|.8BD3          |mov   edx, ebx
0046295A|.E8 E915FBFF   |call    00413F48
0046295F|.FF46 1C       |inc   dword ptr
00462962|.8D95 74FFFFFF |lea   edx, dword ptr
00462968|.8D85 78FFFFFF |lea   eax, dword ptr
0046296E|.E8 DD6E6900   |call    00AF9850
00462973|.FF4E 1C       |dec   dword ptr
00462976|.8D85 74FFFFFF |lea   eax, dword ptr
0046297C|.BA 02000000   |mov   edx, 0x2
00462981|.E8 8E6E6900   |call    00AF9814
00462986|>8B95 78FFFFFF |mov   edx, dword ptr
0046298C|.8BC7          |mov   eax, edi
0046298E|.E8 318F1100   |call    0057B8C4
00462993|.84C0          |test    al, al
00462995|.75 25         |jnz   short 004629BC
00462997|.8B4D FC       |mov   ecx, dword ptr
0046299A|.8B95 78FFFFFF |mov   edx, dword ptr
004629A0|.8BC7          |mov   eax, edi
004629A2|.E8 29891100   |call    0057B2D0
004629A7|.FF4E 1C       |dec   dword ptr
004629AA|.8D85 78FFFFFF |lea   eax, dword ptr
004629B0|.BA 02000000   |mov   edx, 0x2
004629B5|.E8 5A6E6900   |call    00AF9814
004629BA|.EB 23         |jmp   short 004629DF
004629BC|>FF4E 1C       |dec   dword ptr
004629BF|.8D85 78FFFFFF |lea   eax, dword ptr
004629C5|.BA 02000000   |mov   edx, 0x2
004629CA|.E8 456E6900   |call    00AF9814
004629CF|.66:C746 10 0C>|mov   word ptr , 0xC
004629D5|.43            |inc   ebx
004629D6|.83FB 64       |cmp   ebx, 0x64
004629D9|.^ 0F8C 4AFFFFFF \jl      00462929
004629DF|>8BDF          mov   ebx, edi
004629E1|.899D 6CFFFFFF mov   dword ptr , ebx
004629E7|.85DB          test    ebx, ebx
004629E9|.74 24         je      short 00462A0F                               ;这里又一个不知如何处理?不用理会
004629EB|.8B03          mov   eax, dword ptr
004629ED|.8985 70FFFFFF mov   dword ptr , eax
004629F3|.66:C746 10 78>mov   word ptr , 0x78
004629F9|.BA 03000000   mov   edx, 0x3
004629FE|.8B85 6CFFFFFF mov   eax, dword ptr
00462A04|.8B08          mov   ecx, dword ptr
00462A06|.FF51 FC       call    dword ptr
00462A09|.66:C746 10 60>mov   word ptr , 0x60
00462A0F|>8B85 3CFFFFFF mov   eax, dword ptr
00462A15|.E8 76070000   call    00463190
00462A1A|.E9 89000000   jmp   00462AA8
00462A1F|>6A 30         push    0x30
00462A21|.8D85 64FFFFFF lea   eax, dword ptr
00462A27|.E8 D414FAFF   call    00403F00
00462A2C|.8BD0          mov   edx, eax
00462A2E|.FF46 1C       inc   dword ptr
00462A31|.A1 5C83C800   mov   eax, dword ptr
00462A36|.E8 395C6900   call    00AF8674
00462A3B|.8D85 64FFFFFF lea   eax, dword ptr
00462A41|.E8 42CBFAFF   call    0040F588
00462A46|.50            push    eax
00462A47|.66:C746 10 84>mov   word ptr , 0x84
00462A4D|.8D85 68FFFFFF lea   eax, dword ptr
00462A53|.E8 A814FAFF   call    00403F00
00462A58|.8BD0          mov   edx, eax
00462A5A|.FF46 1C       inc   dword ptr
00462A5D|.A1 6482C800   mov   eax, dword ptr
00462A62|.E8 0D5C6900   call    00AF8674
00462A67|.8D85 68FFFFFF lea   eax, dword ptr
00462A6D|.E8 16CBFAFF   call    0040F588
00462A72|.8BD0          mov   edx, eax
00462A74|.8B0D DC87C800 mov   ecx, dword ptr             ;dehelper.00CE4350
00462A7A|.8B01          mov   eax, dword ptr
00462A7C|.59            pop   ecx
00462A7D|.E8 56556900   call    00AF7FD8                           ;出来注册错误对话框!1111111
00462A82|.FF4E 1C       dec   dword ptr
00462A85|.8D85 64FFFFFF lea   eax, dword ptr
00462A8B|.BA 02000000   mov   edx, 0x2
00462A90|.E8 7F6D6900   call    00AF9814
00462A95|.FF4E 1C       dec   dword ptr
00462A98|.8D85 68FFFFFF lea   eax, dword ptr
00462A9E|.BA 02000000   mov   edx, 0x2
00462AA3|.E8 6C6D6900   call    00AF9814
00462AA8|>FF4E 1C       dec   dword ptr




你与明日 发表于 2014-3-13 00:56

收藏以后再看{:1_937:}   


膜拜大婶

吾爱靓仔 发表于 2014-3-13 01:25

羡慕大神,提个小小的建议,您的那个我也不知道叫什么码,就是OD里面很长一大堆的那个(004627CC )!你可以编辑帖子的时候使用这个,这样大家看得清楚一些,谢谢!


www52pojiecn 发表于 2014-3-13 13:56

跟进!!!!!!!!

szs6008 发表于 2014-12-2 13:17

感谢分享精彩教程,支持楼主

陌生的人 发表于 2014-12-2 13:19

感谢分享,支持楼主

[VIP]_年华╮似 发表于 2014-12-2 14:11

吾爱破解论坛因你更精彩.

usc 发表于 2015-2-27 16:24

怎么玩求带
对了 请问都用到了哪些软件调试
页: [1]
查看完整版本: 一款反调试OD的破解之旅