关于脱壳的一些问题、、
我为壳狂。最爱壳的艺术了。请教一个问题。。在学习脱壳的过程中,一些简单的壳也能熟练通过ESP和内存法脱掉,可是在学习脱本论坛作品LordPE_ PYG时怎么也脱不下来,望高手指教!、纯属学技术。。并非想修改。。。。壳为FSG2.0。我用PEID找到OEP 403A80,,可是CTRL+G来到该地址下硬件执行断点并断不下来。后来换单步法。。如下:
1.
004001CD^\78 F3 JS SHORT LordPE.004001C2
004001CF 75 03 JNZ SHORT LordPE.004001D4
004001D1- FF63 0C JMP DWORD PTR DS: ; LordPE.00404340 ‘此处到2.
004001D4 50 PUSH EAX
004001D5 55 PUSH EBP
004001D6 FF53 14 CALL DWORD PTR DS:
004001D9 AB STOS DWORD PTR ES:
004001DA^ EB EE JMP SHORT LordPE.004001CA
004001DC 33C9 XOR ECX,ECX
2.
00404340 .51 PUSH ECX ;ntdll.7C937DE9
00404341 .56 PUSH ESI
00404342 .6A 00 PUSH 0 ; /pModule = NULL
00404344 .FF15 60914100 CALL DWORD PTR DS: ; \GetModuleHandleA
0040434A .A3 5CE74100 MOV DWORD PTR DS:,EAX
0040434F .E8 BC000000 CALL LordPE.00404410
00404354 .8B35 D8904100 MOV ESI,DWORD PTR DS: ;kernel32.ExitProcess
0040435A .85C0 TEST EAX,EAX
0040435C .75 04 JNZ SHORT LordPE.00404362
0040435E .6A FF PUSH -1 ; /ExitCode = FFFFFFFF
00404360 .FFD6 CALL ESI ; \ExitProcess
00404362 >8D4424 04 LEA EAX,DWORD PTR SS:
00404366 .50 PUSH EAX
00404367 .E8 C4010000 CALL LordPE.00404530
0040436C .8B4424 08 MOV EAX,DWORD PTR SS:
00404370 .83C4 04 ADD ESP,4
00404373 .85C0 TEST EAX,EAX
00404375 .74 18 JE SHORT LordPE.0040438F
DUMP下来修复后无法运行。用ESP也是到这里。。。
希望高手指点一二。。。
[ 本帖最后由 VACN 于 2008-9-25 19:03 编辑 ] 啊呀。开始没注意到公告。。对不起。请斑竹帮我移到脱壳求助子版块吧。。谢谢。。麻烦了。。。。不好意思! OD的脱壳有两个插件,有一个是自带修复输入表的,FSG的壳用那个好办。修复选项用JMP *** 我都试了。还用的另外的修复壳的软件。没用。。是OEP错了?还是修复的问题? 看第二步应该没问题,估计是导入表错了,或者是ANTI-DUMP,找找相关的资料吧 应该是IAT没修复好~~~~~~~~~~~~~~~~~~~ 应该是有无效指针被你剪掉了吧! 关于指针只有一个。用IMPREC修复的。。我估计也是IAT,,但是根据FSG壳的特点。。OEP应该是
004001CD^\78 F3 JS SHORT LordPE.004001C2
004001CF 75 03 JNZ SHORT LordPE.004001D4
004001D1- FF63 0C JMP DWORD PTR DS:
可是我用PEID查出来的是403A80,,
望高手指教。 把程序丢出来看下,这个看看不出什么来! 程序就是论坛里的。。LordPE_ PYGPYG专版
页:
[1]
2