• 标 题:非常好色V3.10 超值试用版的脱壳(不要往别处想呕) (2千字)
  • 作 者:robot
  • 时 间:2001-1-4 23:25:16
  • 链 接:http://bbs.pediy.com

软件下载:http://ilike.myrice.com:8080/cgi-bin/dl.pl?url=ftp://ftp.bj.software.chinese.com/software/soft_photo/pm30.exe
执行文件:Tpmagid.exe
文件大小:535048 bytes
说明:我这个脱壳并没有什么新意,主要思路均参考看雪教学。
前言:我一直想找一个能够制作出带农历的日历软件,这个软件就是。不过,该软件只有30天的使用寿命,
下载后进行安装,用FI.EXE看不出被什么软件加了壳,用UltraEdit打开Tpmagid.exe,观察PE文件头,在Section中有PREVIEW、WeijunLi,怎么这么熟悉?!先运行Tpmagid.exe,再运行Procdump,在mask中选择
Tpmagid.exe,再看看moudle,哈哈,vboxt420.dll,照妖镜告诉是被vbox4.2加壳,看雪教学里正好有这方面的脱壳例子,就拿它练手吧。打开看雪教学,看一看vbox4.2的脱壳过程,记下关键要点,上路。
工具:SoftICE 4.05  Procdump 1.6
步骤:
1. 运行非常好色,Ctrl+D 激活SoftICE,设断:bpx getprocaddress,F5返回
2. 选择第一个按钮,我不知道这个按钮说的是什么,big5码,反正应该是试用之类的,这时被SoftICE拦回, bd *,F12共6次,其中第2次时间较长。(F12几次不重要,关键是F12后光标应该停留在CALL ESI的后面),
至如下代码:

:02800483 FFD6        call esi    ====> 在此处设断
:02800485 5B          pop ebx      ====> 光标停在此处
:02800486 85C0        test eax,eax
:02800488 742E        jz 028004B8

3. 在02800483处设断,每次运行时,0280可能不同,但0483肯定相同,F5,会又被SoftICE拦回,bd *,F8
4. 一直按F8或F10,至如下代码处:
(此段特征是:只有一个CALL,简便的方法是用PageDown向下翻页,找到CALL后将光标移到此CALL,F7)

:02830100 FF75F8      push dword ptr [EBP-08]
:02830103 FF75FC      push dword ptr [EBP-04]
:02830106 FF7508      push dword ptr [EBP+08]
:02830109 E808000000  call 02830116        ====> F8进入此CALL

5. 一直按F8或F10,至如下代码处:
(此段特征是:只有一个JMP EBX,简便的方法是用PageDown向下翻页,找到JMP EBX后将光标移到此处,F7)
:0283037C 8B45F8      mov eax, [EBP-08]
:0283037F 8B4814      mov ecx, [EAX+14]
:02830382 894DEC      mov [EBP-14], ecx
:02830385 8B5DEC      mov ebx, [EBP-14]
:02830388 FFE3        jmp ebx              ====> ebx中的值即为正确的入口点,用笔记下,ebx=457D90

6. 程序执行到02830388时,下A EIP,输入JMP EIP,F5
7. 启动Procdump,在Options中选择Rebuild import table后,在Task中选择Tpmagid.exe,鼠标右键 dump (full) dump出来的文件大小为1636864个字节
8. 用Procdump中的PE editer编辑被dump出来的文件,设置入口点为 457D90-400000=57D90
9. dump后,别忘了Ctrl+D,将jmp eip改回jmp ebx,尽管我们已经大功告成

将dump出来的文件改名为Tpmagid.exe,覆盖原来的文件,运行一下,已经没有壳了,再运行Procdump,在task中选择Tpmagid.exe,Module中已经没有vboxt420.dll了,脱壳成功。因这个软件是big5码,如果不嫌麻烦的话,还可以用exescope等将其改成简体中文显示,将什么“印表机”之类的改为“打印机”,又成为简体中文版了
另外,我用Procdump下的vbox42进行脱壳,虽然能够把壳脱掉,但脱壳后的文件并不能够运行。用PE editor观看
两个脱壳的文件,入口点没错,都是57D90,但size of image不同。
这种壳用TRW2000脱起来可能更简单,但我的机子中安装了超级保镖后,不能运行TRW2000。我的另一个分区的系统没有被超级保镖保护,运行TRW2000就没有问题,不过我可不敢在那个分区乱装软件。