首页
社区
课程
招聘
[旧帖] [求助]一个MoleBox V2.3X的壳 0.00雪花
发表于: 2008-9-23 16:12 9584

[旧帖] [求助]一个MoleBox V2.3X的壳 0.00雪花

2008-9-23 16:12
9584
我用PEID看了一下 是MoleBox V2.3X -> MoleStudio.com [Overlay] *

但不会脱壳

本人菜鸟,请高手一步一步教我怎么脱壳

谢谢

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 204
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
【脱壳内容】

首先Peid查壳,为MoleBox 2.x.x -> Mole Studio [Overlay],OD载入运行,无任何异常,判断其为压缩壳。

004CD61C > 60 pushad //外壳入口,和Upx等查不多。当我们脱壳上一个台阶后,普通壳就不用慢慢跟踪了。
004CD61D E8 4F000000 call imcast.004CD671 //F8单步到这里,看Esp=0012FFA4
004CD622 2120 and dword ptr ds:[eax], esp
004CD624 76 41 jbe short imcast.004CD667
004CD626 B4 13 mov ah, 13
004CD628 3B63 51 cmp esp, dword ptr ds:[ebx+51]
004CD62B 38CA cmp dl, cl
004CD62D D8ACD0 BBB52910 fsubr dword ptr ds:[eax+edx*8+1029B5BB]
004CD634 9F lahf
004CD635 A7 cmps dword ptr ds:[esi], dword ptr es:[e>
004CD636 9B wait
004CD637 BD B2BB61F4 mov ebp, F461BBB2
004CD63C B4 C9 mov ah, 0C9
004CD63E 17 pop ss
004CD63F BB 652286EE mov ebx, EE862265
004CD644 97 xchg eax, edi
004CD645 2AED sub ch, ch
004CD647 30DD xor ch, bl
004CD649 BB A64DED09 mov ebx, 9ED4DA6
004CD64E 5D pop ebp
004CD64F FC cld
004CD650 B7 01 mov bh, 1
004CD652 C01A AD rcr byte ptr ds:[edx], 0AD
004CD655 DFEF fucomip st, st(7)
004CD657 FD std
004CD658 ED in eax, dx
004CD659 A7 cmps dword ptr ds:[esi], dword ptr es:[e>
004CD65A 6A 38 push 38
004CD65C CE into
............................................................................
启用Esp定律。

dd 12ffa4

下硬件访问-Dword断点。

F9运行

硬件中断。

004CD5D0 61 popad // 关键字
004CD5D1 - FFE0 jmp eax // 断在这里,往上看到Popad关键字

0048636F 55 push ebp //F8到达Oep,Loadpe直接脱壳。
00486370 8BEC mov ebp, esp
00486372 6A FF push -1
00486374 68 E0144900 push imcast.004914E0
00486379 68 2C654800 push imcast.0048652C ; jmp to MSVCRT._except_handler3
0048637E 64:A1 00000000 mov eax, dword ptr fs:[0]
00486384 50 push eax
00486385 64:8925 0000000>mov dword ptr fs:[0], esp
0048638C 83EC 68 sub esp, 68
0048638F 53 push ebx
00486390 56 push esi
00486391 57 push edi
00486392 8965 E8 mov dword ptr ss:[ebp-18], esp
00486395 33DB xor ebx, ebx
00486397 895D FC mov dword ptr ss:[ebp-4], ebx
0048639A 6A 02 push 2
0048639C FF15 C4984800 call dword ptr ds:[4898C4] ; MSVCRT.__set_app_type
004863A2 59 pop ecx
004863A3 830D B42C4A00 F>or dword ptr ds:[4A2CB4], FFFFFFFF
004863AA 830D B82C4A00 F>or dword ptr ds:[4A2CB8], FFFFFFFF
004863B1 FF15 C8984800 call dword ptr ds:[4898C8] ; MSVCRT.__p__fmode
............................................................................

脱壳后发现程序不能运行,这时需要用Imprec修复引入函数表(Import Table)

在Oep处填8636F,点IT自动搜索,然后点获输入信息,有9个指针没有修复。

千万别用等级1修复,等级修复的些什么,这些假东西保存程序肯定无法运行的。

呵呵,用跟踪等级3为我们修复3个,剩下6个就靠我们自己了。

我以 00089100 处 004D48A8 处的指针修复举个例子。

右键-反汇编/16进制显示

004D48BF call [4D80F0] // = kernel32.dll/001F/CloseHandle //这里最先看到CloseHandle就是我们要修复的指针。

其余的方法一样,注意并不是所有的脱壳程序都可以用这个方法,如Asprotect 1.23rc4无法修复的指针就可以用这个办法修复,切勿过于依赖,每个加密壳处理方法都不相同。

于是我们手动填入 CloseHandle

同理修复。

00089120 004D4793



CreateFileA

0008912C 004D498A



GetFileAttributesA

00089148 004D4BC9



UnmapViewOfFile

0008914C 004D4B8A



MapViewOfFile

0008915C 004D49B0



CreateFileMappingA

全部指针修复,修复抓取文件,正常运行。
2008-9-23 21:16
0
雪    币: 1564
活跃值: (3572)
能力值: ( LV13,RANK:420 )
在线值:
发帖
回帖
粉丝
3
这个壳真怪?我脱不了
2008-9-23 21:21
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
进来学习学习!!!没见过的壳
2008-9-23 21:41
0
雪    币: 317
活跃值: (93)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
5
在论坛里脱壳教程好多的,你搜索下,原理都一样的!
2008-9-24 09:42
0
雪    币: 199
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
给发个文件啊!我也试试!谢谢!
2008-9-24 11:05
0
游客
登录 | 注册 方可回帖
返回
//