首页
社区
课程
招聘
PEBundle 2.0x - 2.4x-> Jeremy Collake [Overlay]手动脱壳
发表于: 2008-12-1 16:08 6420

PEBundle 2.0x - 2.4x-> Jeremy Collake [Overlay]手动脱壳

2008-12-1 16:08
6420
在这里注册有一个星期了 光从这里摄取 不回报 显然不厚道 今天看见一片关于PEBundle 2.0x - 2.4x-> Jeremy Collake [Overlay]的手动脱壳流程 奉献给大家 本人已成功脱壳
用peid查壳:PEBundle 2.0x - 2.4x-> Jeremy Collake [Overlay]

PEBundle是个捆绑壳,主要功能是把程序要用到的dll等文件绑到一个exe中。基本上没有什么保护功能。

Overlay是说程序文件后面有附加数据。

用OllyICE打开,hr 12ffc0。下这个断是典型的用ESP定律脱壳。

不停地按F9运行,等到出现一个长时间的间隔,说明PEBundle解完了。此时来到:

00466468 68 70394600    push 00463970    //这里
0046646D C3             retn
0046646E C8 000000 e    nter 0, 0

这个push+retn实质是一个jmp命令,f8两下到这里:

00463970 . 60              pushad
00463971 . BE 00C04300     mov esi, 0043C000
00463976 . 8DBE 0050FCFF   lea edi, dword ptr [esi+FFFC5000]
0046397C . 57              push edi
0046397D . 83CD FF         or ebp,FFFFFFFF
00463980 . EB 10           jmp short 00463992
00463982 90                nop
00463983 90                nop

其实这个地方用OllyICE的SFX跟踪真正入口也可以跟到。

这个入口是典型的UPX壳,没关系,一样用ESP定律搞定。按F9运行。

00463AD0 FF96 503E0600     call dword ptr [esi+63E50]  //这个call
00463AD6 . 09C0            or eax, eax
00463AD8 . 74 07           je short 00463AE1
00463ADA . 8903            mov dword ptr [ebx], eax
00463ADC . 83C3 04         add ebx, 4
00463ADF .^ EB D8          jmp short 00463AB9
00463AE1 > FF96 543E0600   call dword ptr [esi+63E54]
00463AE7 > 61              popad
00463AE8 .- E9 F104FBFF    jmp 00413FDE  //断在这里

413fde就是OEP了,在这个jmp下断,然后清掉硬件断点。

这个JMP上方的代码是两个循环,作用是填写IAT,其中标记的call实质就是GetProcAddress。

只不过是程序自己实现的,没有调用kernel.dll的GetProcAddress。

也就是因为这个原因,它只是把自己的rva填入了IAT,这样用ImpRec处理就会出现无效函数。

解决方法就是把这个call直接改成call GetProcAddress。

然后ctrl+f2重新开始,F9运行到jmp处。(刚刚下过断点的)

f8一次,来到:

00413FDE 55          push ebp
00413FDF 8BEC        mov ebp, esp
00413FE1 6A FF       push -1
00413FE3 68 A0E94100 push 0041E9A0
00413FE8 68 4A3F4100 push 00413F4A ; jmp 到 msvcrt._except_handler3

很好,标准的VC入口。用LordPE dump 下来,然后用ImpRec修复。

接下来是把Overlay部分加入到dump中,最后修改Overlay的偏移量。

那个偏移量是在DOS Header中的。不能多讲了,其实都是很简单的。

[课程]Linux pwn 探索篇!

收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 421
活跃值: (83)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
2
老大,拜托
这种历史文物都被你放出来,实在是不一般呀
2008-12-1 16:22
0
雪    币: 564
活跃值: (12)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
3
大头和尚

拿点现代点的出来分享一下额

顶楼主
2008-12-1 17:24
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
我咋这么笨呢 看 文章也没弄明白 谁能 做个录像什么的啊  谢谢了
2008-12-7 21:50
0
雪    币: 12045
活跃值: (4763)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
我这小鸟也没有看出什么来...
2008-12-25 18:05
0
雪    币: 231
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
十分感谢啊。今天弄了一个上午也没搞定它。。鄙视。。看东西。不知道感激的。
2009-3-31 11:30
0
雪    币: 235
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
7
不行,脱壳还在菜鸟状态。先了解名词去
2009-3-31 13:24
0
游客
登录 | 注册 方可回帖
返回
//