- UID
- 2198
注册时间2005-6-29
阅读权限255
最后登录1970-1-1
副坛主
该用户从未签到
|
从网上下了一个了流星破解版,拿到软件后 查壳PECompact 2.x -> Jeremy Collake
以前在一蓑烟雨论坛上看到过脱PECompact的帖子
如:脱PECompact 2.x学习过程
http://www.unpack.cn/viewthread. ... highlight=PECompact
下边来比猫画虎的脱脱试试~~
006042C3 83C4 04 ADD ESP,4 //ESP定律后挺到这里,向下找找关键跳转
006042C6 55 PUSH EBP
006042C7 53 PUSH EBX
006042C8 51 PUSH ECX
006042C9 57 PUSH EDI
006042CA 56 PUSH ESI
006042CB 52 PUSH EDX
…………中间代码省略
00604340 /EB 0C JMP SHORT MeteorNe.0060434E //我们发现这里还多出一个JMP
00604342 |03CA ADD ECX,EDX
00604344 |68 00800000 PUSH 8000
00604349 |6A 00 PUSH 0
0060434B |57 PUSH EDI
0060434C |FF11 CALL DWORD PTR DS:[ECX]
0060434E \8BC6 MOV EAX,ESI
00604350 5A POP EDX
00604351 5E POP ESI
00604352 5F POP EDI
00604353 59 POP ECX
00604354 5B POP EBX
00604355 5D POP EBP
00604356 FFE0 JMP EAX //这里的CALL应该是跳向OEP呀~~
既然有疑问 首先怀疑PEiD探测的版本不准确,其次软件多层壳。那么只有从第二种假设入手,先脱下 查下是否有壳。 UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo 呵呵 果然双壳 UPX就好搞了 ESP 搞之
005B8B60 > 60 PUSHAD ; UPX壳
005B8B61 BE 00B05200 MOV ESI,MeteorNe.0052B000 ; ESP定律搞之
005B8B66 8DBE 0060EDFF LEA EDI,DWORD PTR DS:[ESI+FFED6000]
005B8B6C 57 PUSH EDI
005B8CFE 8D4424 80 LEA EAX,DWORD PTR SS:[ESP-80] ; ESP停到这里 F8单步向下
005B8D02 6A 00 PUSH 0
005B8D04 39C4 CMP ESP,EAX
005B8D06 ^ 75 FA JNZ SHORT MeteorNe.005B8D02
005B8D08 83EC 80 SUB ESP,-80
005B8D0B - E9 D413F5FF JMP MeteorNe.0050A0E4 ; 这里跳向OEP F8一次即可
0050A0E4 55 PUSH EBP ; 真正的OEP
0050A0E5 8BEC MOV EBP,ESP
0050A0E7 83C4 EC ADD ESP,-14
0050A0EA 53 PUSH EBX
0050A0EB 56 PUSH ESI
0050A0EC 57 PUSH EDI
0050A0ED 33C0 XOR EAX,EAX
Lord PE Dump +IR修复 =搞定~~
第一次独立脱双层壳 虽然壳都简单 不过还是有些收获~~
脱壳视频到我的个人网盘下载:http://free.ys168.com/?nisy
[ 本帖最后由 Nisy 于 2006-8-27 01:16 编辑 ] |
|