手脱tElock壳
1、PEiD查壳:
tElock 0.98b1 -> tE!
2、OD载入,隐藏OD,在异常选项中,去掉所有忽略的异常,Shift+F9,一共需要按21次,程序就跑起来了,因此,我们使用最后一次异常法,脱壳。
3、重新载入程序,Shift+F9,按至20次时,程序来到如下蓝色命令行处:
0040D817 73 DC jnb short tElock.0040D7F5
0040D819 CD20 64678F06 vxdcall 68F6764
0040D81F 0000 add byte ptr ds:[eax],al
0040D821 58 pop eax
0040D822 61 popad
此时,查看右下角的堆栈窗口中,数据如下:
0012FF58 0012FFE0 指针到下一个 SEH 记录
0012FF5C 0040D7FB SE 句柄
0012FF60 00000000
我们来到代码窗口,按CTRL+G,输入0040D7FB,在此地址上,F2设置断点,shift+F9,运行,然后进入单步跟踪的过程,此过程的要点是“只许向下跳,不许向回跳”。当单步跟踪来到如下地址时:
0040D7AF 61 popad
0040D7B0 FF6424 D0 jmp dword ptr ss:[esp-30] ; tElock.004010CC
0040D7B4 F1 int1
0040D7B5 0000 add byte ptr ds:[eax],al
蓝
色代码区域,即是跳转到OEP,脱壳,使用ImportREC修复时,遇到了问题,其中有131个为解决的指针,使用跟踪级别1,2,3均失败,那该怎么
办呢?我们可以打开加壳程序,使用跟踪级别3试试,唉,是可以的,修复到最后,仍然有4个为解决的指针,直接剪切掉即可,然后在ImportREC中,点
击“保存树文件”。然后ImportREC中,再点击正在脱壳的程序,点击“载入树文件”,一看指针全部都有效了,此时,可以点击“修复转储文件”了,选
中已经脱壳保存的程序,即可!

浙公网安备 33010602011771号