renaihaore 发表于 2005-12-15 02:01:49

利用ESP定律快速脱壳(PECompact 2.x)教程

利用ESP定律快速脱壳(PECompact 2.x)教程

【破文作者】伤风
【作者邮箱】[email protected]
【个人主页】www.66h6.com
【使用工具】od lordPE importREC(工具在主页有下的)
【操作系统】Windows 2000

【下载地址】http://www.skycn.com/soft/15760.html
--------------------------------------------------------------------------------
【破解声明】初次写脱文,大家多多关照!
【软件名称】MP3压缩大师 V4.0
【保护方式】PECompact 2.x -> Jeremy Collake
--------------------------------------------------------------------------------

【脱壳过程】
第一次写脱文,请大家多多关照。本文只限于脱壳,不涉及破解。当然还希望能够得到作者的谅解。

先载入主程序
来到
00404BB8B8 B0905F00    mov eax,MP3Exper.005F90B0
00404BBD50       push eax
00404BBE64:FF35 00000000push dword ptr fs:
00404BC564:8925 00000000mov dword ptr fs:,esp ---------------->看这个
00404BCC33C0      xor eax,eax
00404BCE8908      mov dword ptr ds:,ecx
00404BD050       push eax
00404BD145       inc ebp
00404BD243       inc ebx
一。运用esp定律
1.f8单步运行到00404BC5
看右边窗口的esp值,我这里是0012ffbc
2.好下命令 d 0012ffbc
我们发现下方的转存窗口有所变化出现:
0012FFBC E0 FF 12 00 B0 90 5F 00 ?.皭_.
0012FFC4 4F 6D 81 7C 38 07 93 7C Om亅8搢
在0012FFBC的4个字节下下硬件写入->DWord 断点(也就是在E0 FF 12 00上下)
f9运行程序
二.找oep
运行后断在
005F90E451       push ecx
005F90E557       push edi
005F90E656       push esi
005F90E752       push edx
观察一下,不是oep阿,奇怪(这里不懂,望高手指点)
向下翻
005F915D8985 D0120010   mov dword ptr ss:,eax
005F91638BF0      mov esi,eax
005F916559       pop ecx
005F91665A       pop edx
005F9167EB 0C      jmp short MP3Exper.005F9175
005F916903CA      add ecx,edx
005F916B68 00800000    push 8000
005F91706A 00      push 0
005F917257       push edi
005F9173FF11      call dword ptr ds:
005F91758BC6      mov eax,esi
005F91775A       pop edx
005F91785E       pop esi
005F91795F       pop edi
005F917A59       pop ecx
005F917B5B       pop ebx
005F917C5D       pop ebp
005F917DFFE0      jmp eax--------------->关键代码
005F917F0000      add byte ptr ds:,al
005F91810000      add byte ptr ds:,al

在005F917DFFE0      jmp eax--------------->关键代码上下断点
f9运行,断下,在f8单步运行一下,到了---oep
00404BB8 M> 68 682A4700    push MP3Exper.00472A68   ; ASCII "VB5!6&vb6chs.dll"
00404BBDE8 F0FFFFFF    call MP3Exper.00404BB2   ; jmp to MSVBVM60.ThunRTMain
00404BC20000      add byte ptr ds:,al
00404BC498       cwde
00404BC50000      add byte ptr ds:,al

三.dump and修复
拿出lordPE选择文件,full dump
此时不要关闭od,拿出importREC,选取进程,oep填 00404bb8-400000= 4bb8填4bb8
点自动搜索ita,再点获取输入表,发现函数都有效,最后点修复抓取文件,save.....
脱壳到此结束,谢谢大家看完

aa9518 发表于 2005-12-26 10:08:16

谢谢。。。

hongxin2005 发表于 2006-2-22 23:15:34

非常感谢!!!!

CorpUlent 发表于 2006-3-12 20:48:04

谢谢楼主了,偶对ESP定律有了一个新的认识,有了一点小小的心得,感谢
推荐象偶新手们都来练练
页: [1]
查看完整版本: 利用ESP定律快速脱壳(PECompact 2.x)教程