ASPack脱壳工具是一款非常专业的程序压缩软件,体积小巧,绿色安全,知识兔可以支持将软件内部可执行程序进行压缩,大大减少了整体程序占用电脑的运行内存,且保证压缩后的程序不会出现无法使用的问题,非常方便。
软件特色
- 可以明显地减少可执行文件的大小,一般来说可以减少40%-70%。
- 降低网络应用的时间,知识兔以及从网络上下载的时间。
- 嵌入Windows的应用程序需要一个更小的空间。
- 保护资源和防止代码被剽窃,分解分析和反编译。
- 发行被压缩程序无执行时间上的延迟。
- 与微软的可执行软件如Visual C++, Visual Basic, Inprise (Borland) Delphi and C++ Builder, 和其他的Win32 编译器等相兼容。
使用方法
1、其实ASPack是比较简单的东西,知识兔可以说,很大程度上,它可以对程序的大小进行压缩,方便发布。今天从实际的例子来说说如何进行手脱。当然,所谓的手脱,不是说完全靠手工, 知识兔还需要一定的工具,首先是PEiD,大家可以在起点软件园上下载到,主要用于查壳的一种小工具。
第二个就是动态调试工具OD(ollydbg),这个工具同样可以在起点软件园找到下载。
知识兔以一个ascii转换的小工具为例子。因为刚刚好是用aspack加的壳。所以知识兔就拿它开刀。

2、上图是软件的界面,这个时候的软件大小是846 KB (866,816 字节)是不是感觉很小呢?知识兔用peid进行查看壳。

3、可以清晰的看到是aspack的壳吧。而且知识兔还有版本,知识兔使用OD打开它。对于是否继续分析,知识兔点否就可以。然后知识兔就可以看到下面类似的代码。

4、知识兔可以看到入口是停止了pushad,也就是寄存器压统一入栈操作。那么知识兔就可以轻松的使用所谓的ESP定律来搞定了。按一下F7,到下一行,看寄存器窗口。里面的ESP的值 。

5、看到ESP寄存器是红色的了。知识兔copy对应的0012FFA4,到知识兔的命令行窗口下硬件断点。
硬件断点就是hr ,然后知识兔加上知识兔刚刚copy的地址,然后知识兔回车,这个时候知识兔可以再菜单的。调试》硬件断点 中看到知识兔设置的硬件断点了。

6、设置好断点后,知识兔直接按F9运行程序,它会在断点处停下来。大致的位置看截图

7、好,知识兔可以高兴的看到,发生了jnz,就是不等于0就跳转,而且知识兔是红色的方向向下跳转。红色代表跳转已经实现,方向是向下,就是到了地址为006AF3BA的地方,然后知识兔这个地 方push压入一个地址,通过retn方式返回。知识兔这个时候删除硬件断点。方法是调试》硬件断点 选择删除知识兔刚刚hr命令添加的硬件断点。然后知识兔按F7单步就到了push 这个压栈的地方。然后知识兔在 按两次F7单步执行。就到了

8、看到这个地方,如果知识兔你调试比较多的话,一定明白这个就是入口了。首先你看地址,跳转跨度很大。说明壳的代码前面执行完成,现在跳转来执行真正的代码了。而且知识兔这个代码 是典型的vc的编译出现的汇编代码。在地址00422240的地方,知识兔选择右键,知识兔选择用ollydump脱壳调试进程。弹出如下的界面

9、方式随便选择。我默认,知识兔直接知识兔点击脱壳按钮,然后知识兔取一个脱壳完成的exe名称就可以了。然后知识兔来查看是否脱壳成功,知识兔使用知识兔的peid进行查壳。具体效果如下图所示

知识兔可以看到真正的语言了。和编译器的版本。然后知识兔再运行知识兔脱壳后的程序,如果知识兔正在运行就说明一切OK了。
下载仅供下载体验和测试学习,不得商用和正当使用。
下载体验