今天转正,怀着激动的心情,向各大牛们请教分析此类程序的方法和思路.由于是小鸟,阐述不当之处请各大牛谅解.
目标文件:一地产管理软件,文件名已改为EPR.EXE,.net2.0运行环境
查壳工具:peid v0.95(特征库不详,从网络下载),FI4.0
调试工具:OLLYDBGV1.10(汉化第二版)
用PEID查壳后显示为Armadillo v4.x [Overlay] * 穿山甲v4.x的壳
EP区段显示的信息
用FI查壳后显示的信息
OD载入后,调试设置忽略所有异常,入口处代码如下:
004015EF E> 55 push ebp
004015F0 8BEC mov ebp,esp
004015F2 83E4 F8 and esp,FFFFFFF8
004015F5 81EC 44040000 sub esp,444
004015FB 53 push ebx
004015FC 56 push esi
004015FD 8B35 00F0BD00 mov esi,dword ptr ds:[<&KERNEL32.LoadLibraryW>] ; kernel32.LoadLibraryW
00401603 57 push edi
00401604 68 AC104000 push ERP.004010AC ; UNICODE "kernel32.dll"
00401609 FFD6 call esi
0040160B 68 C8104000 push ERP.004010C8 ; UNICODE "user32.dll"
00401610 FFD6 call esi
00401612 E8 D1FCFFFF call ERP.004012E8
00401617 8D4424 10 lea eax,dword ptr ss:[esp+10]
0040161B 50 push eax
0040161C 33DB xor ebx,ebx
0040161E 53 push ebx
0040161F FF15 04F0BD00 call dword ptr ds:[<&KERNEL32.GetModuleHandleW>] ; kernel32.GetModuleHandleW
00401625 8BC8 mov ecx,eax
00401627 E8 D9FCFFFF call ERP.00401305
0040162C 59 pop ecx
0040162D 8D4424 14 lea eax,dword ptr ss:[esp+14]
由于实在太菜,在网上下载了几个带Armadillo v4.x 的软件,OD载入后,比较入口入代码,发现此程序的入口与Armadillo v4.x的入口不太一样,所以初步判定不是Armadillo v4.x 壳(不正之处,请谅解)按F9试运行,程序会弹出出错框,框中显示的程序文件名为看不懂的乱码
确定后运行,提示异常.
万般无奈之下,只得求助大牛们,帮忙看看是怎么一回事,请不惜金口玉言,给小菜一点启发或思路.
调试文件下载地址:
http://pan.baidu.com/share/link?shareid=3978514578&uk=3372618397
程序完整下载地址:
http://pan.baidu.com/share/link?shareid=2380595088&uk=3372618397
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)