AcProtect 1.41 外壳分析[19]

[入库:2005年8月19日] [更新:2007年3月24日]

本文简介:选择自 bmd2chen 的 blog

6a 00 push 0 004208a5 6a 00 push 0 004208a7 68 8c164c00 push 004c168c ; ascii "demo" 004208ac 50 push eax 004208ad e8 fa730600 call 00487cac 004208b2 68 84164c00 push 004c1684 ; ascii "skin" 004208b7 68 7c164c00 push 004c167c ; ascii "skin1" 004208bc 6a 00 push 0 004208be e8 94780600 call 00488157 004208c3 e9 c1640000 jmp 00426d89 ; jmp to mfc42.#5943 经过n久的时间把全部的正确代码找回来了之后,dump下code段,第一个任务就算完成了,接下来完成第二个任务。 去除replace code:      这个任务也算是acprotect 的一样法宝吧,替换了很多的代码。每次替换5个字节的代码,方式为3+2或2+3,壳 解压出来时已经加了垃圾代码。   重来,载入目标,先在rdata段下断点,断下后,在text段下断,运行停止在fake oep后,在最后一个段下内存写 入断点。再运行,这样就中断在replace code的关键代码处了: sub_restore_replace_code: 0057d02e > 60 pushad ; sub_restore_replace_code 0057d02f 4a dec edx 0057d030 fc cld ...... 0057d0eb 8945 1d mov dword ptr ss:[ebp+1d],eax ; 中断在这里 0057d0ee eb 01 jmp short 0057d0f1 ...... 0057d1c5 83e9 01 sub ecx,1 0057d1c8 ^ 0f85 69ffffff jnz 0057d137 ; 循环解压代码 0057d1ce eb 01 jmp short 0057d1d1 0057d1d0 71 72 jno short <decrypt_replaced_code> 0057d1d2 06 push es 0057d1d3 81e7 b34d2a57 and edi,572a4db3 0057d1d9 e8 22ef0000 call <sub_getebp >
0057d1de 8b4424 20 mov eax,dword ptr ss:[esp+20] ; 取call这个处理模块的地址 0057d1e2 33c9 xor ecx,ecx 0057d1e4 8b9c8d 812e4000 mov ebx,dword ptr ss:[ebp+ecx*4+402e81>; 指向一个表,通过在表里查询来还原代码 0057d1eb 039d 46f84000 add ebx,dword ptr ss:[ebp+40f846] 0057d1f1 3bc3 cmp eax,ebx 0057d1f3 74 07 je short 0057d1fc ; 表里查到符合条件的则跳 0057d1f5 90 nop 0057d1f6 90 nop 0057d1f7 90 nop 0057d1f8 90 nop 0057d1f9 41 inc ecx 0057d1fa ^ eb e8 jmp short 0057d1e4 ; 循环查表 0057d1fc 8db5 615d4000 lea esi,dword ptr ss:[ebp+405d61] 0057d202 b8 0a000000 mov eax,0a 0057d207 f7e1 mul ecx 0057d209 03f0 add esi,eax 0057d20b 8dbd 07184000 lea edi,dword ptr ss:[ebp+401807] 0057d211 0fb6840d c92240>movzx eax,byte ptr ss:[ebp+ecx+4022c9] 0057d219 fec0 inc al 0057d21b 88840d c9224000 mov byte ptr ss:[ebp+ecx+4022c9],al 0057d222 3c 20 cmp al,20 0057d224 75 13 jnz short 0057d239 0057d226 90 nop 0057d227 90 nop 0057d228 90 nop 0057d229 90 nop 0057d22a 8bbd 4af84000 mov edi,dword ptr ss:[ebp+40f84a] 0057d230 b8 0a000000 mov eax,0a 0057d235 f7e1 mul ecx 0057d237

本文关键:AcProtect 1.41 外壳分析
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top