-
-
[旧帖]
[求助]脱不出来了!~~~请高手指点.
0.00雪花
-
发表于:
2007-6-20 11:10
6112
-
[旧帖] [求助]脱不出来了!~~~请高手指点.
0.00雪花
1,用PEID查壳,PEBUNDLE 2.0x - 2.4x-> Jeremy Collake.
2,OD载入,用ollydbgScript中的PEBUNDLE 2.0x - 2.4x OEP-FINDER查找到OEP.
3,用OD的脱壳在当前调试过程脱之,试运行正常。
4,用PEID查第一次脱壳的文件,普通模式找不到,用深度和核心扫描找到UPX壳。
UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo.
先根据UPX的脱壳规律找到popad,找到了,但有点不同的是在popad后跟着的不是大跳,没有理会,跳过循环,在下一个跳转时脱。
00EECE67 . 61 popad
00EECE68 . 8D4424 80 lea eax,dword ptr ss:[esp-80]
00EECE6C > 6A 00 push 0
00EECE6E . 39C4 cmp esp,eax
00EECE70 .^ 75 FA jnz short 3g.00EECE6C
00EECE72 . 83EC 80 sub esp,-80
00EECE75 .- E9 169266FF jmp 3g.00556090
00EECE7A 00 db 00
00EECE7B 00 db 00
但脱出来用PEID检查壳依然存在。并程序也不能运行.
通过其他好几款UPX通用脱壳机和查找OEP脚本执行,找到的OEP都无法在importREC中拿到IAT.能拿到的脱完后用PEID壳依然存在。
5, 用rl!depacker找到OEP:155bff,并用它直接脱壳.
脱后无法运行,修复输入表也不行.用PEID查壳显示Microsoft Visual C++ 6.0 [Overlay].
但OEP我有点怀疑,因为地址是在已经启动了程序界面之后的。
6, 请教该怎样手动找到真正的OEP,或者怎样修复已经脱完第二次壳的程序才能正常运行呢?
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)