首页
社区
课程
招聘
[求助]VMP2.03分析半月无果,求大牛支招
发表于: 2011-4-13 22:27 11864

[求助]VMP2.03分析半月无果,求大牛支招

2011-4-13 22:27
11864
这个文件同样是金盾的文件 ,为何其他的可以用Od载入,而这个不可以,一载入就死,是否因为文件太大呢 ?听说好像加了VMP,我查得是VMP2.03,但是实际上不是2.03我也看过其他的壳,觉得这个壳和1.7、1.8、2.0的都不一样,自己乱弄了半个月没有一点结果,好像就算是它运行了,也是在保护里面运行,,难道就一点漏洞也没有么,求大牛支招,指点一二
在VirtualProtect下断F9运行9次,75B6E509    E8 09000000     call    VirtualProtectEx在这里下断运行9次后到这
75B6E50E    5D              pop     ebp
75B6E50F    C2 1000         retn    10
75B6E512    90              nop
75B6E513    90              nop
75B6E514    90              nop
75B6E515    90              nop
75B6E516    90              nop
75B6E517 >  8BFF            mov     edi, edi
75B6E519    55              push    ebp
75B6E51A    8BEC            mov     ebp, esp
75B6E51C    56              push    esi
75B6E51D    8B35 D011B675   mov     esi, dword ptr [<&ntdll.NtProtec>; ntdll.ZwProtectVirtualMemory
75B6E523    57              push    edi
75B6E524    FF75 18         push    dword ptr [ebp+18]
75B6E527    8D45 10         lea     eax, dword ptr [ebp+10]
75B6E52A    FF75 14         push    dword ptr [ebp+14]
75B6E52D    50              push    eax
75B6E52E    8D45 0C         lea     eax, dword ptr [ebp+C]
75B6E531    50              push    eax
75B6E532    FF75 08         push    dword ptr [ebp+8]
75B6E535    FFD6            call    esi

后在ALT+M,text代码下写入断点
00AC3751    3202            xor     al, byte ptr [edx]到这里,大循环,出不来,求助
00AC3753    60              pushad
00AC3754    54              push    esp
00AC3755    885424 10       mov     byte ptr [esp+10], dl
00AC3759    881C24          mov     byte ptr [esp], bl
00AC375C    42              inc     edx
00AC375D  ^ E9 35F0FFFF     jmp     00AC2797
00AC3762    FF7424 14       push    dword ptr [esp+14]
00AC3766    8F45 00         pop     dword ptr [ebp]
00AC3769    886424 04       mov     byte ptr [esp+4], ah
00AC376D    887424 04       mov     byte ptr [esp+4], dh
00AC3771    C60424 5A       mov     byte ptr [esp], 5A
00AC3775    8D6424 18       lea     esp, dword ptr [esp+18]
00AC3779  ^ E9 5AE4FFFF     jmp     00AC1BD8
00AC377E    51              push    ecx
00AC377F    9C              pushfd
00AC3780    8F4424 04       pop     dword ptr [esp+4]
00AC3784    60              pushad
00AC3785    60              pushad
00AC3786    9C              pushfd
00AC3787    FF7424 48       push    dword ptr [esp+48]
00AC378B    8F45 00         pop     dword ptr [ebp]
00AC378E    885C24 14       mov     byte ptr [esp+14], bl
00AC3792    8D6424 4C       lea     esp, dword ptr [esp+4C]
00AC3796  ^ E9 3DE4FFFF     jmp     00AC1BD8
00AC379B    60              pushad
00AC379C    8D6424 28       lea     esp, dword ptr [esp+28]

00406728    53              push    ebx                              ; (initial cpu selection)
00406729    8BD8            mov     ebx, eax                         ; (initial cpu selection)
0040672B    33C0            xor     eax, eax                         ; (initial cpu selection)
0040672D    A3 88674500     mov     dword ptr [456788], eax          ; (initial cpu selection)
00406732    6A 00           push    0                                ; (initial cpu selection)
00406734    E8 2BFFFFFF     call    00406664                         ; (initial cpu selection)
00406739    A3 F4A74500     mov     dword ptr [45A7F4], eax          ; (initial cpu selection)
0040673E    A1 F4A74500     mov     eax, dword ptr [45A7F4]          ; (initial cpu selection)
00406743    A3 94674500     mov     dword ptr [456794], eax
00406748    33C0            xor     eax, eax
0040674A    A3 98674500     mov     dword ptr [456798], eax
0040674F    33C0            xor     eax, eax
00406751    A3 9C674500     mov     dword ptr [45679C], eax
00406756    E8 C1FFFFFF     call    0040671C
0040675B    BA 90674500     mov     edx, 00456790                    ; (initial cpu selection)
00406760    8BC3            mov     eax, ebx                         ; (initial cpu selection)
00406762    E8 69DFFFFF     call    004046D0                         ; (initial cpu selection)
00406767    5B              pop     ebx                              ; (initial cpu selection)
00406768    C3              retn
00406769    8D40 00         lea     eax, dword ptr [eax]
0040676C    55              push    ebp
0040676D    8BEC            mov     ebp, esp

在fq380300的帮忙下来到这里,很像入口,不懂是不是,如果是,好像这里的代码全部给VM了。 在这里用F2断点是断不下来的,会被发现,
有没有大牛分析过这壳的,分享一下经验
http://u.115.com/file/t3286539c8 文件件传上115了,

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 0
支持
分享
最新回复 (15)
雪    币: 210
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
已经解决了,原来是OD的问题,换几个版本,最后用吾爱的载入没有问题,
2011-4-13 23:30
0
雪    币: 210
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
这个文件有没有加壳还是一点头绪也没有,有没有那位愿意分享一下
2011-4-14 12:33
0
雪    币: 291
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
4
没有看错的话是  vmp壳
2011-4-20 20:13
0
雪    币: 210
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
嗯,谢谢啊~~~听说VMP是个强壳,在网上看了一些VMP的脱壳教程,可就没有这个壳一直找不到OEP,tualProtect处下断后F9了N次后,在NewPretect = PAGE_READDNLY时在text代码断下断后来到一个循环后出不去,请教
2011-4-21 07:45
0
雪    币: 291
活跃值: (48)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
遇到这个壳,我都是 直接放弃 等到日后有技术了在研究他吧 VMP I hate it
2011-4-21 22:30
0
雪    币: 210
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
的确是很难弄明白壳,以前遇到问题都可以直接找到答案,只有这个壳资料好少,不过我不是日后研究,我是慢慢研究
2011-4-22 08:10
0
雪    币: 210
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
现在是找到oep了,又进了一小步,
2011-4-26 22:24
0
雪    币: 1844
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
9
据高手说嘛,找到 OEP 才是万里长城的第一站
2011-4-26 23:51
0
雪    币: 317
活跃值: (13)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
10
据说金盾不需要找OEP~
2011-4-27 00:34
0
雪    币: 210
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
我是对它的壳有兴趣,视频倒是有办法弄出来
2011-4-27 07:51
0
雪    币: 65
活跃值: (171)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
这个是VMP壳,是比较难弄的,想学习与交流QQ我。1120075830
2011-4-27 12:48
0
雪    币: 291
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
最后你到的那个地方是delphi的第一个call的地方  偷了一些代码  很好补上的~

主要就是一个
mov eax, xxxxx
push xxxxxx
jmp xxxxxxx

OEP补stolen code很简单,主要后面的跨平台可能就费事一点~
现在国内基本上都是nooby、 kissy等大牛的dll跨平台法,要不就是国外的那种直接把对应的api补到程序里面~
然后再添加LoadLibraryA和GetProcAddress两个函数对它们展开调用~
2011-4-27 13:08
0
雪    币: 65
活跃值: (171)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
这个程序好象有内存自校验,OEP补stolen code之后,本机运行会出错的。
2011-4-27 13:55
0
雪    币: 291
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
不是校验的问题吧 好像是附加数据的问题 ~  
破坏了原来的Overlay
2011-4-27 13:58
0
雪    币: 210
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
非常感谢啊!刚开始接触这个壳,现在正在学习中。。。。对于这个回答,又走了一小步
2011-4-27 19:36
0
游客
登录 | 注册 方可回帖
返回
//