分享
 
 
 

一点脱壳经验

王朝other·作者佚名  2008-05-21
窄屏简体版  字體: |||超大  

asprotect版本多,升级快,每一次小小的升级,都足以使以前的脱壳方法或工具失效,没有一种自动脱壳工具是万能的。这里是caspr的作者SAC/UG2000对asprotect的评价:

ASProtect是一个非常强大的win32保护工具。它拥有压缩(compression)、加密(encryption)、反跟踪代码(anti-debugging code)、反-反汇编代码(anti-disassembler code)、crc校验(crc checking),反脱壳(anti-dumping)等特点。它使用了 Blowfish,Twofish,TEA等强劲的加密算法,还用RSA1024 - 非常强劲的公钥加密算法 (very strong public keys cryptographic algorithm )- 作为注册密钥生成器(sregistration keys generation)。(注:公钥加密算法属于非对称密钥算法体制,与对称密钥体制相对。)它还通过API钩子(API hooks,包括importhooks(GPA hook)和export hooks)与加壳的程序进行通讯。

ASProtect v1.1甚至 用到了 Win95.Marburg's 多态变形引擎(polymorphic engine)。

ASProtect v1.11c 增加了 反Apihook代码(anti-Apihook code(stolen from Win32.Crypto)) 和BPE32 的多态变形引擎(BPE32's polymorphic engine.)。

现在的大问题是:ASProtect究竟是一个超级病毒还是一个商业软件?(Is it a super virus or a commercial protector?)

怎么样,是不是已经对asprotect望而生畏了?

因此我对asprotect的作者Alexey Solodovnikov(从名字看应该是个俄国人)非常钦佩。不过不用怕。

公欲善其事,必先利其器。

要脱asprotect加的壳,似我等菜鸟,只能使用工具。我的工具箱里有:

fi243,检测文件壳的类型

trw1.23,不用多说;

bw2k02,冲击波2000,用来找入口点EP;

SuperBPM,辅助设断工具,确保trw能够中断成功;

peditor,修正脱壳后的文件;

ImportREC1.2beta2,用来修复脱壳后文件的import表;

此外还有专用自动脱壳工具,如rad,caspr等。

实在不行,脱不下来或脱下来不能用,只有用内存补丁了。我推荐ppatcher3.93,比常见的3.60版增加了许多有用的新特性,如aitForWindowName,下面会讲到。URL未知,我是从作者那里直接获得的。

我的运行环境是win98第二版,没有安装softice。

概括一下一般的脱壳步骤:

第一步,用fi243确定壳的类型,有自动脱壳工具的,用工具脱。否则第二步。

第二步,用bw2k确定程序的真正入口点OEP,不妨记为xxxx;若找不到,请试一试Softice + icedump: 使用Icedump 的/tracex 命令可能找到OEP 的地址;若还找不到,只能手动跟踪,看你的功力和运气了。

第三步,用trw装入(load)程序,下bpx xxxx,g。中断后用pedump命令脱壳,格式是

pedump c:estest.exe。不能中断时运行superbpm,选中erase,重复第三步操作。若脱出来的test.exe可以运行,则脱壳完毕,否则第四步。

第四步, 用peditor 修正test.exe,用Import REConstructor v1.2 beta2修复输入表,参照以下这篇文章

若还是不行,建议你用内存补丁或放弃暴破,去算注册号吧。

以下以S-Spline 2.04为例,讲一讲手动脱壳和修复import表的具体操作步骤。S-Spline 2.04

第一步,用fi243确定壳的类型。fi243没有GUI界面,是命令行程序,用法是这样:

c:fi243fi s-spline.exe。

Fi已经检测不出新版asprotect了,所以如果遇到检测不出的类型,就有可能是asprotect。接着往下做吧。

第二步,用bw2k确定程序的真正入口点OEP,

运行bw2k,面板上的entry point显示为00000000。按track钮,再运行s-spline.exe,程序界面出来之后,bw2k的面板上entry point显示为7e910,这就是入口点了。退出s-spline,我们又迈出了可喜的第二步。

第三步,运行SuperBPM,选中erase(默认为不选中),确保trw能够中断。

第四步,运行trw2k,按browse找到并选中s-spline.exe,按loader装入。下bpx 47e910,g。trw弹出时输入pedump c:estest.exe,退出trw(不退也行),但不要退出s-spline。在c:est下会找到test.exe。这个程序目前还不能运行,因为它的import表是被加密的。

第五步,用peditor修正test.exe。运行peditor,按browse找到test.exe,确定。再按sections,弹出一个窗口,显示每个section的信息。在窗口中点右键,在弹出菜单中选dumpfixer(RS=VS & RO=VO),提示'DONE',这时可以关闭peditor了。

第六步,运行ImportREC1.2beta2,在Attach to an Active Process下拉框中选中s-spline.exe,然后在左下方OEP中输入7e910(就是EP-image base=47e910-400000),按IAT AutoSearch。出现对话框Found Something!=》

“Found address which may be in the Original IAT.Try 'Get Import'”

按Get Import,再按Show Invalids 按钮,在Imported Function Found框中会有很多蓝色的项目。在其中点右键,选Trace Level1(Disasm),再按Show Invalids 按钮,可以看到所有的dll都为valid:YES字样。输入表到此完成。

第七步,修复已脱壳的程序test.exe。选择Add new section(缺省是选上的),按Fix Dump,并选择刚才Dump出来的文件test.exe。ImpRECT 会在该文件所在目录生成一个新的文件:test_.exe ,这就是修复后的文件。至此终于大功告成,点击test_.exe可以运行了。

在遇到asprotect之前,procdump一直是我最爱的脱壳工具,它能脱的壳很多,操作方便,稳定性好,很少令我失望。直到那一次,一连碰到三个asprotect加壳的软件:

Aspack2.11,加壳软件,asprotect 1.1b 加壳,未注册版有时间限制和功能限制;以前的下载地址找不到了,今天找到一个带破解文件的,URL: http://mud.sz.jsinfo.net/per/aaron/files/compressors/win/aspack211.zip。

Picturetoexe2.30,图片转可执行文件工具,asprotect 1.0 加壳,未注册版制作出得文件有公司标志;http://www.wnsoft.com/apr

Advanced ZIP Password Recovery3.51(azpr),zip密码恢复工具,asprotect 1.1 加壳;未注册版只能破解5位以下密码。ftp://www.newhua.com/azpr.zip

有兴趣的不妨试一试,练练手。

那段时间好痛苦啊。找不到真正的入口点(OEP),中断不了,壳脱不下来,脱下来的又不能运行,真是往事不堪回首。到现在也还谈不上破解,只是想把自己的一点经验写出来,希望弟兄们看了能少走点弯路。

提示:

Aspack用上述方法脱壳修复后,运行时显示Exception EaccessViolation in module ASPACK_.EXE at 007fb318.Access violation at address bfc54c.Read of addreds bfc54c. 不能运行。失败。但是可以用rad06(http://mud.sz.jsinfo.net/per/aaron/files/unpackers/win/rad_v06.zip)成功脱壳,脱壳后自动去掉时间限制,但仍为未注册版。

Picturetoexe2.30用上述方法脱壳失败,impREC修复的程序运行时提示非法操作。用caspr v0.952脱壳成功。

Azpr用上述办法修复成功,文件可以运行,但对其进行修改后,提示找不到api函数,不能运行。无奈只能用内存补丁ppatcher3.93。这里有thewd提供的破解方法。

首先在注册表中添加如下内容

[HKEY_LOCAL_MACHINESoftwareElcomAdvanced ZIP Password RecoveryRegistration]

"Code"="00023112193920061941tcKxzxKUhzLjuAAD"

以下是ppatcher配置文件(.ppc)的内容。

-------------------------------------------------------------------#Process Patcher Configuration FileVersion=3.93WaitForWindowName=AZPR*PatchAuthor=thewdPatchContactInformation=thewd@hotmail.comDisplayName=Advanced ZIP Password Recovery v3.51Filename=azpr.exeFilesize=294912Address=0x416CE7:0x89:0x8B // (1)Address=0x416CE8:0xC8:0xC2#End of Configuration File#Cracking Notes(1) Registration Code Example: 00023112193920061941tcKxzxKUhzLjuAADFirst 4 characters are ignored.Next 16 characters are constant (MD5 Hash)Last 16 characters are hashed (MD5) and compared againstthe resource 'DB' for a match.i.e.mov eax, ecx (Bad Code) ==> mov eax, edx (Correct Code)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有