- UID
- 65321
注册时间2010-2-1
阅读权限30
最后登录1970-1-1
龙战于野
TA的每日心情 | 怒 2021-3-15 02:34 |
---|
签到天数: 347 天 [LV.8]以坛为家I
|
PEiD扫描下:
Nothing found 查看区段 有vmp字样
OD载入来到此处:
00427B98 > 68 7E91C596 push 96C5917E
00427B9D E8 29A60000 call 网页反限.004321CB
00427BA2 D1E8 shr eax,1
00427BA4 55 push ebp
00427BA5 ^ E9 ACC2FFFF jmp 网页反限.00423E56
00427BAA 01D8 add eax,ebx
F8单步一下,然后对esp数据窗口跟随:
0012FFC0 96C5917E
0012FFC4 7C817077 返回到 kernel32.7C817077
0012FFC8 7C930228 ntdll.7C930228
对0012FFC0处下硬件访问断点
然后就是F9运行了…
一次中断:
0043324A 68 CAE2F381 push 81F3E2CA
0043324F C60424 CE mov byte ptr ss:[esp],0CE
00433253 F7DE neg esi
00433255 60 pushad
二次中断:
004331FF F9 stc
00433200 83C5 04 add ebp,4
00433203 9C pushfd
//直到最后一次用户空间代码00432A08处
00432A08 FF7424 14 push dword ptr ss:[esp+14] ; 网页反限.0043265C
00432A0C 9C pushfd
00432A0D 9C pushfd
00432A0E 8D6424 3C lea esp,dword ptr ss:[esp+3C]
00432A12 ^ E9 C1FEFFFF jmp 网页反限.004328D8
接着删除硬件断点, 然后再对代码段下F2断点…
来到这里:
004012A0 FF db FF
004012A1 25 db 25 ; CHAR '%'
004012A2 9C db 9C
004012A3 10 db 10
004012A4 40 db 40 ; CHAR '@'
004012A5 00 db 00
004012A6 00 db 00
004012A7 00 db 00
去除分析:
0040126A - FF25 BC104000 jmp dword ptr ds:[4010BC] ; MSVBVM60.__vbaFreeObj
00401270 - FF25 20104000 jmp dword ptr ds:[401020] ; MSVBVM60.__vbaHresultCheckObj
00401276 - FF25 28104000 jmp dword ptr ds:[401028] ; MSVBVM60.__vbaObjSet
0040127C - FF25 44104000 jmp dword ptr ds:[401044] ; MSVBVM60.__vbaGenerateBoundsError
00401282 - FF25 8C104000 jmp dword ptr ds:[40108C] ; MSVBVM60.__vbaStrCopy
00401288 - FF25 50104000 jmp dword ptr ds:[401050] ; MSVBVM60.__vbaRedim
0040128E - FF25 60104000 jmp dword ptr ds:[401060] ; MSVBVM60.EVENT_SINK_QueryInterface
00401294 - FF25 40104000 jmp dword ptr ds:[401040] ; MSVBVM60.EVENT_SINK_AddRef
0040129A - FF25 54104000 jmp dword ptr ds:[401054] ; MSVBVM60.EVENT_SINK_Release
004012A0 - FF25 9C104000 jmp dword ptr ds:[40109C] //停到此处 ; MSVBVM60.ThunRTMain
004012A6 0000 add byte ptr ds:[eax],al
004012A8 68 EC2DC596 push 96C52DEC
004012AD E8 95F60100 call 网页反限.00420947
我们知道
Push xxxxx
Call yyyyy是VB程序的入口地址
那么就来查找一下字符串:
VB5(VB程序的特征)
点击M, 进入内存镜像,选择右键搜索”VB5”
结果在0040E2A4处找到特征码
0040E2A4 56 42 35 21 36 26 76 62 VB5!6&vb
0040E2AC 36 63 68 73 2E 64 6C 6C 6chs.dll
0040E2B4 00 00 00 00 2A 00 00 00 ....*...
接着把OEP修复下就OK了.
004012A8 68 EC2DC596 push 0040E2A4
004012AD E8 95F60100 call 004012A0
然后设置004012A8处为新的EIP
,此时DUMP出来,再用ImportRec修复下就OK了.
用PeiD扫描下;
Microsoft Visual Basic 5.0 / 6.0
运行下,成功运行… 版本比较低,也比较简单… 很适合我这种新手,呵呵 |
|