最近遇到一个ASProtect加壳的程序,试了很多方法,看了资料,还是没有什么头绪,特请教大人们,看看大家能不能给我些建议。
首先,这个程序用peid0.92检测出来是ASProtect 1.2x - 1.3x [Registered] -> Alexey Solodovnikov,用stripper 2.07无法脱壳,因为脱壳过程中会出现一个程序保护提示框。无法用fs0 的loader.exe找OEP,因为,一用loader加载改程序,则会弹出提示,说“你正在用SOFTICE调试,请关掉调试程序”,并且程序结束。直接用peid0.92查出来的OEP是4011d0。
用OD隐藏调试标志后加载,只开内存访问异常。
00401000 m>/$ 68 01B06100 push mland.0061B001
00401005 |. E8 01000000 call mland.0040100B
0040100A \. C3 retn
0040100B $ C3 retn
0040100C 75 db75
0040100D 1E db 1E
0040100E F9 db F9
0040100F 3E db 3E
00401010 51 db51
00401011 D4 db D4
00401012 F7 db F7
00401013 B2 db B2
00401014 F2 db F2
00401015 8B db 8B
00401016 . AE scas byte ptr es:[edi]
00401017 . 5C pop esp
00401018 . 4D dec ebp
00401019 . 92 xchg eax,edx
异常30次后,程序开始运行,在最后一次程序异常时如下:
00D6FAA5 C700 EFCA5C85 mov dword ptr ds:[eax],855CCAEF
00D6FAAB 67:64:8F06 0000 pop dword ptr fs:[0]
00D6FAB1 83C4 04 add esp,4
00D6FAB4 83E8 AF sub eax,-51
00D6FAB7 83C8 4B or eax,4B
00D6FABA 58 pop eax
00D6FABB A1 0C38D700 mov eax,dword ptr ds:[D7380C]
00D6FAC0 8B00 mov eax,dword ptr ds:[eax]
00D6FAC2 8B68 1C mov ebp,dword ptr ds:[eax+1C]
00D6FAC5 A1 0C38D700 mov eax,dword ptr ds:[D7380C]
00D6FACA 8B00 mov eax,dword ptr ds:[eax]
00D6FACC 8B00 mov eax,dword ptr ds:[eax]
00D6FACE 894424 04 mov dword ptr ss:[esp+4],eax
00D6FAD2 A1 0C38D700 mov eax,dword ptr ds:[D7380C]
00D6FAD7 8B00 mov eax,dword ptr ds:[eax]
00D6FAD9 8D78 18 lea edi,dword ptr ds:[eax+18]
00D6FADC A1 8C37D700 mov eax,dword ptr ds:[D7378C]
如果我到最近的RET处返回,程序则不能正常启动,会出现一个报错的框,然后程序结束。
请各位大人给我一点建议吧。我权限不够,不能上传这个程序,如果想要这个程序研究的朋友加我QQ:****,我把程序发送给你。也可以到以下邮箱中草稿箱中唯一的一封信中下载附件:*** 密码为:****
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!