手脱Aspack变形壳1
1.载入PEID
Aspack v2.12 -> www.aspack.com
2.载入OD,不管是看查壳信息还是看入口特征都跟我上一次发的一个手脱Aspack v2.12的帖子相同http://www.52pojie.cn/thread-433042-1-1.html,但是真的相同吗?按照上次帖子的经验,pushfd下面就可以使用ESP定律了,但是在shift+F9的时候会跑飞,显然这不是一个普通的Aspack壳,应该是变形过的。这是一个近call,F7跟进,不然会跑飞,然后继续F8单步走
0044D001 > 9C pushfd ; //入口点 0044D002 E8 03000000 call qqspirit.0044D00A ; //ESP会跑飞,F7跟进 0044D007 - E9 EB045D45 jmp 45A1D4F7 0044D00C 55 push ebp 0044D00D C3 retn 0044D00E E8 01000000 call qqspirit.0044D014 0044D013 EB 5D jmp short qqspirit.0044D072
3.又走到一个近call,继续F7跟进,不然会跑飞,然后继续F8,注意后面的F8比较长,有点耐心,另外,向上跳转的下一行F4别忘了
0044D00B 45 inc ebp 0044D00C 55 push ebp 0044D00D C3 retn 0044D00E E8 01000000 call qqspirit.0044D014 ; //F7 0044D013 EB 5D jmp short qqspirit.0044D072 0044D015 BB EDFFFFFF mov ebx,-0x13
4.经过了不知道多少个F8和F4,来到了这个指向OEP的关键跳,最后一次F8
0044D3A1 FFB5 22040000 push dword ptr ss:[ebp+0x422] 0044D3A7 59 pop ecx 0044D3A8 03C1 add eax,ecx 0044D3AA - FFE0 jmp eax ; //指向OEP的关键跳 0044D3AC AB stos dword ptr es:[edi] 0044D3AD CE into 0044D3AE FFFF ???
5.来到OEP,可以脱壳了
0040A86D 55 push ebp ; //oep 0040A86E 8BEC mov ebp,esp 0040A870 6A FF push -0x1 0040A872 68 78794200 push qqspirit.00427978 0040A877 68 F4E14000 push qqspirit.0040E1F4 0040A87C 64:A1 00000000 mov eax,dword ptr fs:[0] 0040A882 50 push eax 0040A883 64:8925 0000000>mov dword ptr fs:[0],esp 0040A88A 83EC 58 sub esp,0x58
6.运行,查壳
运行OK,查壳:Microsoft Visual C++ v6.0
- 本文为博主学习笔记,未经博主允许不得转载
- 本文仅供交流学习,请勿用于非法途径
- 本文仅是个人意见,如有想法,欢迎交流