第六章--爆破
软件 爆破其实很简单,最起码比你能一下把你家的牙膏给全挤出来要容易多了。你只要先到大街上买几根雷管,然后放到你的显示器上再点着就OK了(不难吧,记的点着后跑远点儿)
爆破的原理我也说过了,相信你很容易就能理解了。我们今天就具体讲一下如何找到那个关键跳转以及如何才能买到即便宜又好用的雷管...
爆破一个
软件一般只需要很少的几个步骤,首先先看一下其有无加壳,有的话是用何工具加的壳,知道了以后用相应的工具将其脱掉或进行手工
脱壳,参考以有
教程。接着我们就可以对脱过壳之后的
软件来开刀了。你有两种选择,用W32Dasm或调试器,一般如果你遇上的是那种很菜的
软件的话,用W32Dasm就可以搞定了。如果遇上的不是那种比较菜的,就买股票吧,因为股票是你如胶似漆的妻子!当!快醒醒啊...哦,一般如果你遇上的不是那种很菜的
软件的话,就用调试器吧。先来说W32Dasm:我们首先用W32Dasm来进行反汇编(废话!)之后在串式参考中找到错误提示信息或可能是正确的提示信息双击鼠标左键来到相应的
地址处。在W32Dasm的主窗口中分析相应汇编
代码,找出关键跳转和关键call。绿色光条停在关键跳转,在W32Dasm主窗口底部找到关键跳转的偏移
地址(实际修改
地址)。用ultraedit找到偏移
地址(实际修改
地址)修改机器码(或放上一根雷管),保存(点火)!而用调试器也同样简单,等会儿会详细说明。
道理废话了那么多,来实例动手说明吧:
首先讲解用W32Dasm来进行爆破:
【
软件名称】中华压缩(ChinaZip)
【
软件版本】7.0
【文件大小】1041KB
【适用平台】Win9x/Me/NT/2000
【
软件简介】ChinaZip(中华压缩)是一款压缩、解压各种压缩文档的工具
软件,它支持包括ZIP格式文件在内的各种常见压缩格式如:ARJ、CAB、GZIP、JAR、LHA、TAR、ZOO、ARC、LZH、Pak等等。
软件的出处是电脑报2001年的合订本配套光盘,7.0时的保护做的很那个,目前
最新版应该好多了...
好的,我们开始吧,首先第一步是你得把它装上(引来野狼N头),之后先随便找个字符串填上去注册一下,会看到一个错误对话框,提示"注册码不正确,无法注册"。接着我们用FI来看一下它用的是什么壳。ASPack 2.001,caspr出场。脱过壳后我们用W32Dasm花上半分钟或半小时的时间来对它进行反汇编。我们以经反汇编完毕。之后在串式参考中(字符串数据参考)中找刚才你看到的那个错误提示,找到之后双击几次,发现其只有一处调用。我们会来到004F0E64处,我把具体
代码给贴上(请你从
代码的最下边开始看):
:004F4DD1 E84EE1F3FF call 00432F24
:004F4DD6 8B55F0 mov edx, dword ptr [ebp-10]
:004F4DD9 8D4DF4 lea ecx, dword ptr [ebp-0C]
:004F4DDC 8BC3 mov eax, ebx
:004F4DDE E8C9010000 call 004F4FAC
:004F4DE3 8B55F4 mov edx, dword ptr [ebp-0C]
:004F4DE6 58 pop eax
:004F4DE7 E830F3F0FF call 0040411C
:004F4DEC 7576 jne 004F4E64 <--这个就是传说中的男人,Stop!这个就是传说中的关键跳转
:004F4DEE B201 mov dl, 01
:004F4DF0 A158254500 mov eax, dword ptr [00452558]
* Referenced by a (U)nconditional or (C)onditional Jump at Address:
|:004F4D86(C)
|
:004F4DF5 E85ED8F5FF call 00452658
:004F4DFA 8945FC mov dword ptr [ebp-04], eax
:004F4DFD 33C0 xor eax, eax
:004F4DFF 55 push ebp
:004F4E00 685D4E4F00 push 004F4E