当前位置: 首页 > news >正文

理财网站模板肇庆cms建站系统

理财网站模板,肇庆cms建站系统,淘宝店招图片大全免费,国内最新新闻内容第四章--调试器及相关工具入门在写这章之前#xff0c;我看了一下看雪以往的教程。本来想参考一下#xff0c;可忽然发现#xff0c;写这样的一章#xff0c;是一件非常愚蠢的事情#xff0c;因为我觉的关于这些工具的使用教程。看雪教程中已经写的够详细的了#xff0c;…第四章--调试器及相关工具入门在写这章之前我看了一下看雪以往的教程。本来想参考一下可忽然发现写这样的一章是一件非常愚蠢的事情因为我觉的关于这些工具的使用教程。看雪教程中已经写的够详细的了我并不认为你会看不懂。所以我不想做浪费时间的人本章就此搁浅。推荐看《Crack Tutorial 2001》推荐看《看雪论坛精华一、二、三、四》推荐看《加密与解密软件保护技术及完全解决方案》推荐看一切与之有关的教程。本章补遗要想上路你最少应该熟练掌握以下工具SoftICE目前公认最好的跟踪调试工具。由于我使用的分辩率的关系从没有用过它Trw2000 国人骄傲其中有我最喜欢的pmodule命令。河南老乡殷墟旧人W32Dasm8.93或其它任意版本反汇编的极品工具。Hiew 或者Ultra Edit或者其它十六进制工具。爆破时使用DOS下使用HiewWindows下使用Ultra Edit、WinHex、Hex Workshop等我个人喜欢用Ultra Edit。侦测文件类型工具比如TYP、gtw或FileInfo等。这是一个能侦测你的软件是被哪一种「壳」给加密了。PROCDUMP与其它N多的脱壳软件。EXESCOPE拥有执行文件(EXE, DLL等)的解析与显示功能提取资源到外部文件 资源的重新写入记录文件的记录及其再编辑(成批编辑)等功能。是汉化软件的常用工具当然破解软件时也很有用。其它许多......等你入了门后再学也不迟作者注以上工具的使用方法大都可在看雪以有的教程中找到故不愿复之本章完 第五章--破解原理从本章开始我们来一步一步学习Crack软件80%读者昏死过去且不省人世...另有20%在寻找附近可以用来打人的东西不可不说一下学习破解的三个阶段初级,修改程序,用ultraedit等工具修改exe文件,称暴力破解,简称爆破中级,追出软件的注册码高级,写出注册机先说这爆破。所谓爆破就是指通过修改可执行文件的源文件来达到相应的目的。你不明白呵呵举个例子好了比如说某共享软件它比较用户输入的注册码如果用户输入的跟它通过用户名或其它算出来的注册码相等的话也就是说用户输入的注册码正确了那么它就会跳到注册成功的地方去否则就跳到出错的地方去。明白过来了吧我们只要找到这个跳转指令把它修改为我们需要的“造型”这样我们是不是就可以为所欲为了某软件双手放在胸口你要干嘛常见的修改方法有两种我给你举例说明no.1在某软件中这样来进行注册00451239 CALL 00405E02  (关键CALL用来判断用户输入的注册码是否正确)0045123D JZ 004572E6   (!!!--此为关键跳转如果用户输入的注册码正确就跳向成功处即004572E6处)0045XXXX YYYYYYYYYYXXXXXXXX YYYYYYYYYYXXXXXXXX YYYYYYYYYYXXXXXXXX 执行到此处就提示用户注册失败...提示用户注册码不正确等相关信息...004572E6 ...  --(注册成功处!!!)...提示用户注册成功等相关信息呵呵看明白了吗没有的话我来给你讲一下。在软件执行到00451239处的时候CALL置0045E02处来进行注册码判断。接着回来后就来一个跳转语句即如果用户输入的注册码正确就跳到004572E6处跳到此处就算是注册成功了。如果用户输入的注册码不正确的话那么就不会在 0045123D处进行跳转而一直执行下去。在下面等它的是注册失败部分。想明白了吗嘿嘿...没错我们只要把那个关键跳转JZ给改为JNZ(如果用户输入的注册码错误就注册成功输入正确则注册失败)。当然你也可以将JNZ修改为Jmp这样的话你输入的注册码无论正确与否。都可以注册成功。no.2我们再来讲一下另外的一种情况00451239 CALL 00405E02  (关键CALL用来判断用户输入的注册码是否正确)0045123D JNZ 004572E6   (!!!--此为关键跳转如果用户输入的注册码不正确就跳向失败处即004572E6处)0045XXXX YYYYYYYYYYXXXXXXXX YYYYYYYYYYXXXXXXXX YYYYYYYYYYXXXXXXXX 执行到此处就提示用户注册成功...提示用户注册成功等相关信息...004572E6 ...  --(注册失败处!!!)...提示用户注册码不正确等相关信息这次我相信并且深信不疑。你一定明白了。我还是不明白...倒...你一定看出跟第一种情况不同的地方了吧。没错它与第一种不同的就是第一种情况是如果注册码正确就跳到注册成功处如果没有跳走就会执行到失败处。而这一种情况则是如果注册码不正确就跳到注册失败处否则将执行到注册成功处。这种情况的修改除了把JNZ改为JZ外还可以将其改为NopNop这个指令没有任何意义将该条指令修改为Nop后便可随意输入注册码来进行注册了。原理以经给你讲了下面我们再来讲一下具体的修改办法吧。我假设你以经明白了我所说的工具的使用方法先说一下虚拟地址和偏移量转换的问题在SoftICE和W32Dasm下显示的地址值是所谓的内存地址memory offset或称之为虚拟地址Virual AddressVA。而十六进制工具里如Hiew、Hex Workshop等显示的地址就是文件地址称之为偏移量File offset) 或物理地址(RAW offset)。所以当我们要通过那些十六进制工具来对可执行文件中的相应指令进行修改的话先要找到它的File offset。我们没有必要去使用那些专门的转换工具在W32Dasm中就有这个功能比如说你W32Dasm中来到0045123D处在 W32Dasm界面下方的状态栏中就会出现该条指令的虚拟地址和偏移地址即:0045123D offset 0005063Dh 后面的这个0005063Dh就是相应的偏移地址。我们得到该地址后便可用UltraEdit等十六进制工具来对可执行文件进行修改了。比如使用 UltraEdit你先用UltraEdit打开该可执行文件然后按CtrlG接着输入你得到的偏移地址就可以来到其相应的机器码处。再给你讲一下机器码所谓的机器码。就是你看到的那些个十六进制数据了。还记的它们与汇编指令是一一对应的吗以下这几个是爆破时要用到的其它的如果感兴趣可自行查看相关资料JZ74;JNZ75;JMPEB;Nop90爆破的时候只要对以上机器码进行相应的修改就行了比如第一种情况的时候可以将74修改为EB即将JZ修改为JMP。而第二种情况责需将75修改为90即将JNZ修改为Nop。由于本章只讲原理具体一点的。如怎样找到关键跳转等我们在下一章中再讲。一个砖头飞了上来嘿嘿这次被俺接到了上边讲了爆破的原理你需要明白的是。爆破只是你学习Crack的开始是很简单的手段。刚入门的时候可以玩玩儿但希望你不要就此不前嘿嘿再说了。人家的软件中不是都说了嘛不准对其进行逆向修改。你动了人家的身子怎么能不买帐呢 偶就不喜欢爆破做不出注册机也要找出注册码。否则我就不会去注册这个软件既然想不掏钱就要靠你自己的本事。等以后我有钱了会考虑去注册那些优秀的共享软件的 。所以从某种意义上来说我是一个正人君子 其实要找到注册码并不是一件多么难的事我是指你所针对的软件不太那个的时候 不过你无需惧怕。刚才我们说爆破的时候不提到过关键CALL吗一般情况下这个关键CALL就是对两个注册码一个是软件自身通过你的注册名或机器什么的计算出来的正确的注册码令一个就是你输入的错误的注册码进行比较。我前边提到过CALL之前一般会把所用到的数据先放到一个地方CALL过去的时候再从这些地方把先前放入的数据取出来进行相应的处理。这个关键CALL也是这样在CALL之前一般会把那两个注册码放到堆栈或某个寄存器中。嘿嘿我们只要在调试器中单步执行到该CALL在未进去之前通过CALL之前的指令判断其将正确的和不正确的注册码放到哪里了。然后再用相应指令进行查看就成了我说过不难的。下面列出两个最常见的情况可参考相关教程no.1mov  eax [      ]  这里可以是地址也可以是其它寄存器mov  edx [      ]  同上该条指令也可以是pop edxcall 00??????   关键calltest eax eax     jz(jnz)或jne(je)  关键跳转看明白了吧在关键CALL之前软件会把两个注册码分别放入eax和edx中你只要在CALL处下d eax或d edx就能看到正确的注册码了。no.2mov  eax [      ]  这里可以是地址也可以是其它寄存器mov  edx [      ]  同上该条指令也可以是pop edxcall 00??????   关键calljne(je)         关键跳转以上两种情况最为常见而那些个不太常见的情况我们这里就不再提了。到下下一章的时候我会给你讲相关方法的...关于查找软件注册码的部分就到这里。具体内容下下一章咱们再说。(不是说了吗我以经可以接到你的砖头了干嘛还要丢呢 )最后再来说最后的所谓的高级阶段如果你相信自己。并且热爱Crack那么你一定会熬到这个阶段的只是时间因人而异。其实分析软件的算法是有好多技巧在里面的。呵呵最起码我刚开始的时候就摸不着头脑那么多CALL每个看起来都很重要都追一遍结果连好多API 都被追了进去。等你自己真正用心分析了一个软件的算法并写出了注册机后。你就会明白其中的道理了我们下下下一章再说。大哥你不是吧连你家太阳能都丢过来了  本章完 第六章--爆破软件爆破其实很简单最起码比你能一下把你家的牙膏给全挤出来要容易多了。你只要先到大街上买几根雷管然后放到你的显示器上再点着就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.001caspr出场。脱过壳后我们用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 004F4E5D:004F4E05 64FF30                  push dword ptr fs:[eax]:004F4E08 648920                  mov dword ptr fs:[eax], esp:004F4E0B B101                    mov cl, 01 * Possible StringData Ref from Code Obj -Software/XDZHAN/ChinaZip                                 |:004F4E0D BAA84E4F00              mov edx, 004F4EA8:004F4E12 8B45FC                  mov eax, dword ptr [ebp-04]:004F4E15 E822DAF5FF              call 0045283C * Possible StringData Ref from Code Obj -Real Programmers Use Pascal!                                 |:004F4E1A B9CC4E4F00              mov ecx, 004F4ECC * Possible StringData Ref from Code Obj -Key                                 |:004F4E1F BAF44E4F00              mov edx, 004F4EF4:004F4E24 8B45FC                  mov eax, dword ptr [ebp-04]:004F4E27 E854DEF5FF              call 00452C80 * Possible StringData Ref from Code Obj -软件注册成功,谢谢您的支持!     --我们向上看会在这里发现注册成功后的正确信息。正确信息处向上找第一个跳转就是我们要找的关键跳转。                                 |:004F4E2C B8004F4F00              mov eax, 004F4F00:004F4E31 E8563DF6FF              call 00458B8C:004F4E36 A16C305000              mov eax, dword ptr [0050306C]:004F4E3B 8B00                    mov eax, dword ptr [eax] * Possible StringData Ref from Code Obj -中华压缩(ChinaZip)-注册版                                  |:004F4E3D BA244F4F00              mov edx, 004F4F24:004F4E42 E80DE1F3FF              call 00432F54:004F4E47 33C0                    xor eax, eax:004F4E49 5A                      pop edx:004F4E4A 59                      pop ecx:004F4E4B 59                      pop ecx:004F4E4C 648910                  mov dword ptr fs:[eax], edx:004F4E4F 686E4E4F00              push 004F4E6E * Referenced by a (U)nconditional or (C)onditional Jump at Address:|:004F4E62(U)|:004F4E54 8B45FC                  mov eax, dword ptr [ebp-04]:004F4E57 E868E2F0FF              call 004030C4:004F4E5C C3                      ret :004F4E5D E9C2E9F0FF              jmp 00403824:004F4E62 EBF0                    jmp 004F4E54 * Referenced by a (U)nconditional or (C)onditional Jump at Address:|:004F4DEC(C)| * Possible StringData Ref from Code Obj -注册码不正确,无法注册!  --这个就是出错的信息了那正确信息也就在附近上下看看。                                    |:004F4E64 B8484F4F00              mov eax, 004F4F48                         --双击来到这里:004F4E69 E81E3DF6FF              call 00458B8C:004F4E6E 33C0                    xor eax, eax:004F4E70 5A                      pop edx:004F4E71 59                      pop ecx:004F4E72 59                      pop ecx:004F4E73 648910                  mov dword ptr fs:[eax], edx:004F4E76 689B4E4F00              push 004F4E9B你可能有点不明白为什么我说它就是关键跳转呢还记的在破解原理中我举的例子吗我再给你讲一遍好了通常我们会遇到两种关键跳转我分别举例说明:(1)je (jne,jz,jnz) 19870219........  XXXXXXXXXX........  XXXXXXXXXX........  软件注册正确的相关信息 ... ...19870219 软件的出错信息..............也就是说这第一种情况是先判断注册码是否正确如果不正确就跳到19870219处正确的话就不跳转一直执行下去直至注册正确处。对于这种情况我们要找的关键跳转就是正确信息上面的第一个跳转。我们可能对其作相应修改或将其给nop掉就万事OK了。(2)je (jne,jz,jnz) 19870219........  XXXXXXXXXX........  XXXXXXXXXX........  软件的出错信息 ... ...19870219 软件注册正确的相关信息..............而这第二种情况就是先判断注册码正确与否如果正确就跳到19870219处不正确的话就不跳转一直执行下去直至出错处。对于这种情况我们要找的关键跳转就是出错信息上面的第一个跳转。将其做相应修改或改为jmp后我们就可以为所欲为了呵呵道理也都给你讲明白了我们来改一下试试吧。我们在W32Dasm中选中关键跳转在右下角的状态栏中看到相应的偏移地址为000F41EC。好的我们用UltraEdit来打开它。CtrlG接着输入0xF41EC回车后便会跳到相应的位置。相应的机器码是75(jne)我们将其改为74 (jz)后存盘退出。好了运行一下看看我们来随便输入一个注册码注册一下试试。呵呵注册成功用W32Dasm我们就讲到这里呵呵很简单的你下去之后自己找些保护简单的软件上上手吧。我们接着来讲用调试器来进行爆破。如果你真的试图用W32Dasm去爆破几个软件的话用不了多少时间你就会发现一些问题。比如说有的软件你用W32Dasm反汇编后串式参考根本就不能用。或者串式参考中没有出错或正确的信息。还有就是有的软件就算你通过串式参考来到了相应的地方刚想去找关键跳转你就会发现眼前的东西比你想像中的要乱的多...虽然你有可能通过认真仔细地找仍会找到但我不认为那是一件聪明的事情。毕竟有一些动静是只有在程序执行期间才能看出来的。好的如果你用 W32Dasm遇到了找不到关键跳转的软件就去用调试器吧你用调试器前可先用W32Dasm打开一遍看个先如果很容易就让你找到了。那就没必要了在开始之前我们有必要讲一下用调试器来爆破的步骤我知道你一定会用调试器的  首先我们当然还是要把你要Crack的软件给装上我挡我挡我挡不要乱丢东西嘛!然后来到输入注册码的地方仍旧随便输入一个接着不要按确定待我们把调试器叫出来先。还记的我前面跟你讲的API的事情吗软件要得到你输入的注册码就一定会调用某个API函数来达到目的。我们就在调试器中用相应的API来做断点这样的话只要一有程序调用这个API就会被调试器给拦截下来。GetDlgItemInt、 GetDlgItemText、GetDlgItemTextA这三个函数可能会有用。但是如果你用的是98那为什么不用hmemcpy呢那真的是一个不错的主意。当我们下完断点后就返回到你要注册的那个软件中点确定这类的按钮。如果被调试器给断了下来就说明你刚才下的断点有用如果没有被断下来就换个断点试试。接下来我们在调试器中来取消刚才你下的那个断点我们以TRW2000为例SoftICE与其操作大体相同取消断点用bc *指令。然后我们就输入pmodule指令来返回到程序的领空而在SoftICE中由于没有相应指令呵呵狂按F12吧。现在我们把话题岔开一下什么是领空呢举个例子吧你的程序要得到你输入的那个注册码就会去调用相应的函数。比如调用GetDlgItemTextA而GetDlgItemTextA本身又会去调用Hmemcpy这个函数而这些函数都是存在于系统中的某个DLL 文件中的。那么当这个程序调用相应的API函数的话程序的领空就会转到这个相应的DLL文件中去执行这个API函数。你就这样理解就行了我前边也说过了Hmemcpy这个函数应用程序本身并不直接调用而是由其它的API函数来调用。那么你就可以理解为你的程序调用了一个API函数调用的同时程序的领空会转到这个API所在的DLL文件里而这个API又调用了Hmemcpy函数那么此时领空就会又转到了Hmemcpy所在的DLL文件中之后当Hmemcpy执行完毕就会返回到调用它的API的领空中去而当这个API执行完毕的后就会返回到调用它的应用程序的领空中去。比如说我们用 Hmemcpy这个函数来当断点当我们输入完注册码按确定后程序就会去调用某个API来得到你输入的那些数据而这“某个API”又会去调用 Hmemcpy所以程序就被断到了。当然此时程序的领空也就不会在应用程序中了但是当我们输入过pmodule指令之后我们就可以反回到应用程序本身的领空中去了。这样的话你看到的就是应用程序自身的代码了而不是API的好了我接着刚才的说到哪儿了来着当我们返回到程序自身的领空中去后就一直狂按F12吧F12的作用是一直执行程序直到遇上ret等指令。也就是一大坨一大坨地来执行程序^_^你一直按F12直到程序出现注册错误对话框。然后记下刚才你按的次数接着从头做起这一次按F12的次数是你刚才按的次数-1也就是说比上一次要少按一次。而后按键由F12换至F10怎么没有F4?还是一路狂按直到软件提示出错这次记下你按F10的次数。好的再从头来一遍我们再次按F10的时候要一步一步慢慢来一般你按 F10的次数离你上次按的次数相差五六步的时候一般就会看见一个CALL接着是一个跳转指令。你一步一步地来看过了这个跳转指令之后会不会跳走如果跳走了那一般你不会再过两三步就应该出错了。当然也有可能是你没有跳走而过了两三步就出错了。这个应该不难理解因为基本上它和我前边跟你介绍过的是一个道理。然而另外一种情况是你一路按F10下来到了最后会发现根本没什么跳转指令呵呵别害怕这个很常见的。遇上这种情况我们只要把F10的次数变换为上次按F10的次数-1这样的话你一般就会停在一个CALL处而这个CALL就是程序中的关键CALL我们之后要吃点儿苦要按F8追进去分析它程序注册的成功与失败就在这个CALL中也就是说我们要修改的关键跳转也在这个CALL中。呵呵其实也很好理解的就是把我上边说的那些个判断什么地放到了一个CALL里面。我们按F8追进去之后便仍旧按F10来一步一步执行过不了多长时间你就会发现关键跳转了找关键跳转的方法跟我前边说的一样即按F10的次数跟上一次差五六步的时候慢下来就会看到了。你应该明白程序是很灵活的东西并没有那么多公式化的东西在里边大概的分析方法就是这个样子一切都要靠你自己去掌握别人跟你讲也只是讲一个分析的方法而以我相信随着你以后经验的提高你慢慢地就能应付各种情况了。现在我们再用调试器来对CHINAZIP这个软件进行分析希望你能够掌握这个并不难的方法。首先你要把刚才爆破过了的再改回来或直接重装一遍。之后我们打开它任意输入注册码接着按CtrlN呼出TRW下断点hmemcpy。下过后按F5退出它就是不用F4我也没办法^_^然后我们点击确定。好的程序被断了下来:KERNEL?HMEMCPY0147:9e62  push     bp0147:9e63  mov      bp,sp0147:9e65  push     ds0147:9e66  push     edi0147:9e68  push     esi0147:9e6a  cld0147:9e6b  mov      ecx,[bp06]0147:9e6f  jcxz     9ee9……以下N多代码省略……我们输入bc *来取消断点然后用pmodule来返回到程序的领空:0167:00436d13  mov      [ebx0c],eax0167:00436d16  mov      eax,[ebx]0167:00436d18  cmp      eax,byte 0c0167:00436d1b  jnz      00436d380167:00436d1d  mov      edx,[ebx08]0167:00436d20  push     edx0167:00436d21  mov      ecx,[ebx04]0167:00436d24  mov      edx,eax0167:00436d26  mov      eax,esi0167:00436d28  call     00432b24……N多代码仍旧省略……按7 下F12另加1下F10来到0167:004f4dc4处我们接着一下一下来按F10大概按了10多下就可以看到004f4dec处有一个跳转我们执行到004f4dec处后果然跳走了。会跳到004f4e64处我们跳过去之后按不了三下程序就提示出错了。呵呵明白过来了吧 004f4dec处的那个跳转jnz 004f4e64就是关键跳转嘿嘿找到了之后不用我说了吧0167:004f4dc4  mov      eax,[ebp-08]     0167:004f4dc7  push     eax             0167:004f4dc8  lea      edx,[ebp-10]0167:004f4dcb  mov      eax,[ebx02e0]0167:004f4dd1  call     00432f24         0167:004f4dd6  mov      edx,[ebp-10]     0167:004f4dd9  lea      ecx,[ebp-0c]0167:004f4ddc  mov      eax,ebx0167:004f4dde  call     004f4fac       0167:004f4de3  mov      edx,[ebp-0c]   0167:004f4de6  pop      eax             0167:004f4de7  call     0040411c         0167:004f4dec  jnz      004f4e64                    --关键跳转         0167:004f4dee  mov      dl,010167:004f4df0  mov      eax,[00452558]0167:004f4df5  call     004526580167:004f4dfa  mov      [ebp-04],eax0167:004f4dfd  xor      eax,eax0167:004f4dff  push     ebp0167:004f4e00  push     dword 004f4e5d0167:004f4e05  push     dword [fs:eax]0167:004f4e08  mov      [fs:eax],esp0167:004f4e0b  mov      cl,010167:004f4e0d  mov      edx,004f4ea80167:004f4e12  mov      eax,[ebp-04]0167:004f4e15  call     0045283c0167:004f4e1a  mov      ecx,004f4ecc0167:004f4e1f  mov      edx,004f4ef40167:004f4e24  mov      eax,[ebp-04]0167:004f4e27  call     00452c800167:004f4e2c  mov      eax,004f4f000167:004f4e31  call     00458b8c0167:004f4e36  mov      eax,[0050306c]0167:004f4e3b  mov      eax,[eax]0167:004f4e3d  mov      edx,004f4f240167:004f4e42  call     00432f540167:004f4e47  xor      eax,eax0167:004f4e49  pop      edx0167:004f4e4a  pop      ecx0167:004f4e4b  pop      ecx0167:004f4e4c  mov      [fs:eax],edx0167:004f4e4f  push     dword 004f4e6e0167:004f4e54  mov      eax,[ebp-04]0167:004f4e57  call     004030c40167:004f4e5c  ret   0167:004f4e5d  jmp      004038240167:004f4e62  jmp      short 004f4e540167:004f4e64  mov      eax,004f4f48      ---由上面的0167:004f4dec处跳来出错!;0167:004f4e69  call     00458b8c0167:004f4e6e  xor      eax,eax再来给你举另一个例子【软件名称】天网防火墙【软件版本】2.46 Beta【文件大小】1289KB【适用平台】Win9x/Me/NT/2000【软件简介】天网防火墙个人版是一套给个人电脑使用的网络安全程序它可以帮你抵挡网络入侵和攻击防止信息泄露并可与我们的网站相配合根据可疑的攻击信息来找到攻击者。同时天网防火墙个人版把网络分为本地网和互联网可以针对来自不同网络的信息来设置不同的安全方案它适合于在拨号上网的用户也适合通过网络共享软件上网的用户。该软件仍旧是我从电脑报2001年合订本的配套光盘中找的软件的注册码可以到其网站免费获得...我们还是要先把它装上某民工你小子敢再说一句废话试试^_^之后我们用FI看一下它有没有加壳呵呵BC编译没有加壳爽运行它在注册对话框中随便输入点什么比如说这星期又出了几部新电影都叫什么名字等等...好的我们接下来请TRW2000出场。先胡乱输入两个字符串比如第一个输入“英雄的导演是”第二个输入“可能是赵本山”:)接下来就按CtrlN把TRW2K叫出来下bpx hmemcpy之后按F5退出。接着可以按确定就成了程序会被TRW2K断掉我们紧接着输入bc *以及pmodule。下面可以开始按F12了一共按8下程序就会报错我们第二次就按7下然后开始按F10按70下F10程序就又报错了呵呵一定要有耐心哦。好的我把反汇编后的代码给你贴出来0167:0041c617  lea      edx,[ebp-04]                              --7下F12后按一下F10来到这里0167:0041c61a  mov      ecx,[0052ae7c]0167:0041c620  mov      eax,[ecx]0167:0041c622  mov      eax,[eax0318]0167:0041c628  add      eax,byte 2c0167:0041c62b  call     005177400167:0041c630  dec      dword [ebp-20]0167:0041c633  lea      eax,[ebp-04]0167:0041c636  mov      edx,020167:0041c63b  call     005177100167:0041c640  mov      word [ebp-2c],140167:0041c646  lea      eax,[ebp-08]0167:0041c649  call     00401d600167:0041c64e  mov      edx,eax0167:0041c650  inc      dword [ebp-20]0167:0041c653  mov      ecx,[ebp-40]0167:0041c656  mov      eax,[ecx02e0]0167:0041c65c  call     004b9f140167:0041c661  lea      edx,[ebp-08]0167:0041c664  mov      ecx,[0052ae7c]0167:0041c66a  mov      eax,[ecx]0167:0041c66c  mov      eax,[eax0318]0167:0041c672  add      eax,byte 300167:0041c675  call     005177400167:0041c67a  dec      dword [ebp-20]0167:0041c67d  lea      eax,[ebp-08]0167:0041c680  mov      edx,020167:0041c685  call     005177100167:0041c68a  lea      eax,[ebp-10]0167:0041c68d  call     00401d600167:0041c692  mov      edx,eax0167:0041c694  inc      dword [ebp-20]0167:0041c697  mov      ecx,[ebp-40]0167:0041c69a  mov      eax,[ecx02e0]0167:0041c6a0  call     004b9f140167:0041c6a5  lea      edx,[ebp-10]0167:0041c6a8  push     dword [edx]0167:0041c6aa  mov      word [ebp-2c],200167:0041c6b0  lea      eax,[ebp-0c]0167:0041c6b3  call     00401d600167:0041c6b8  mov      edx,eax0167:0041c6ba  inc      dword [ebp-20]0167:0041c6bd  mov      ecx,[ebp-40]0167:0041c6c0  mov      eax,[ecx02d4]0167:0041c6c6  call     004b9f140167:0041c6cb  lea      edx,[ebp-0c]0167:0041c6ce  mov      edx,[edx]0167:0041c6d0  mov      eax,[0052ae7c]0167:0041c6d5  mov      eax,[eax]0167:0041c6d7  pop      ecx0167:0041c6d8  call     0040525c0167:0041c6dd  mov      [ebp-45],al0167:0041c6e0  dec      dword [ebp-20]0167:0041c6e3  lea      eax,[ebp-10]0167:0041c6e6  mov      edx,020167:0041c6eb  call     005177100167:0041c6f0  dec      dword [ebp-20]0167:0041c6f3  lea      eax,[ebp-0c]0167:0041c6f6  mov      edx,020167:0041c6fb  call     005177100167:0041c700  cmp      byte [ebp-45],000167:0041c704  jz       0041c750                       --按了60多下F10后会在这里发现一个跳转嘿嘿就是它了0167:0041c706  mov      ecx,[0052ae7c]0167:0041c70c  mov      eax,[ecx]0167:0041c70e  mov      eax,[eax0318]0167:0041c714  call     00411fd00167:0041c719  mov      word [ebp-2c],2c0167:0041c71f  mov      edx,00521b500167:0041c724  lea      eax,[ebp-14]0167:0041c727  call     005175b00167:0041c72c  inc      dword [ebp-20]0167:0041c72f  mov      eax,[eax]0167:0041c731  call     004b41b00167:0041c736  dec      dword [ebp-20]0167:0041c739  lea      eax,[ebp-14]0167:0041c73c  mov      edx,020167:0041c741  call     005177100167:0041c746  mov      eax,[ebp-40]0167:0041c749  call     004a81d00167:0041c74e  jmp      short 0041c77d0167:0041c750  mov      word [ebp-2c],380167:0041c756  mov      edx,00521b6b0167:0041c75b  lea      eax,[ebp-18]0167:0041c75e  call     005175b00167:0041c763  inc      dword [ebp-20]找到了关键跳转之后就别闲着了呵呵放雷管吧你可以用W32Dasm打开这个文件然后按ShiftF12之后输入0041c704这样就可以在右下角看到相应的偏移地址了小技巧在TRW中如果你觉的某处可能是关键跳转的话可以用r fl z这个指令来进行测试该指令可使以成立的条件取反比如说本来JZ XXXXXXXX成立可以跳走了用r fl z指令后该条指令就不成立了即就不会跳走了。以上也是你可以在0041c704处输入r fl z呵呵再执行几步看看是不是成功了还有就是如果你只是想达到注册软件的目的且该软件只在注册的时候验证一次的话用这个方法就可以代替雷管了呵呵最后还是要说一句爆破只是一些雕虫小技。刚入门时玩几次就够了切莫就此不前...后话你可能慢慢就会发现有一些软件其实并没有你想象中那么简单你甚至连找到它的关键跳转都找不到。这很正常你要做的便是多动手多练习慢慢你就会明白过来的。我今天之所以给你举这两个例子就是因为它们两个都比较简单且能说明重点给你讲那些比较那个的软件的爆破反而会让你看的一头雾水...  (摘自 http://www.enjoykorea.net/27/viewspace-20670.html)
http://www.w-s-a.com/news/152804/

相关文章:

  • 做网站seo赚钱吗网络维护和故障维修
  • 企业网站可以自己做摄影网站开发背景怎么写
  • 网站百度指数seo最好的工具
  • 宝安专业网站建设推荐设计感强的网站
  • 网站建设 6万元北京知名的品牌设计公司
  • 网站建设的总体需求是什么vmware 下wordpress
  • 光谷网站建设请检查网络
  • 申请建设网站的报告书商务网站开发课程体会
  • 网站开发实训总结致谢群晖wordpress设置
  • 关于酒店网站建设的摘要天津市建设工程信息网官网首页
  • 网站alexa排名查询手机网站制作器
  • 建设小辣猫的网站电子毕业设计网站建设
  • 询广西南宁网站运营礼品定制
  • 建筑公司网站作用免费查看招标信息的网站
  • 建筑设计公司名字起名大全html网站 怎么做seo
  • 网站群建设模板迁移原站迁移pc巩义网站建设案例课堂
  • 烟台高端网站开发wordpress 设置权限
  • 中小企业网站制作流程网站开发和设计人员的岗位要求
  • 公司网站建设多少费用河北城乡建设官网站
  • 国科联创网站建设广告传媒公司招聘信息
  • 网站后台文章删了 怎么前台还有一级做爰片软件网站
  • 辽宁省建设注册中心网站wordpress 博客插件
  • 做电商看的网站有哪些网站建设需求策划书
  • 关于网站建设交易流程的描述一句话哪些网站用户体验好
  • 男女做暖暖的网站大全深圳平台网站建设外包
  • 凯里展示型网站设计抖音代运营收费详细价格
  • 外包网站会自己做原型吗网站制作怎样盈利
  • 为什么在百度搜不到我的网站电商网站开发过程
  • 什么是网站反链网页设计页面链接
  • 佛山企业网站制作韩国seocaso