网站大量收购独家精品文档,联系QQ:2885784924

妙解破解的原理.docVIP

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
妙解破解的原理

妙解破解的原理 不可不说一下学习破解的三个阶段: 初级,修改程序,用ultraedit等工具修改exe文件,称暴力破解,简称爆破. 中级,追出软件的注册码. 高级,写出注册机. 先说这爆破.所谓爆破,就是指通过修改可执行文件的源文件,来达到相应的目的.你不明白?呵呵,举个例子好了,比如说某共享软件,它比较用户输入的注册码,如果用户输入的,跟它通过用户名(或其它)算出来的注册码相等的话(也就是说用户输入的注册码正确了),那么它就会跳到注册成功的地方去,否则就跳到出错的地方去. 明白过来了吧,我们只要找到这个跳转指令,把它修改为我们需要的“造型”,这样,我们是不是就可以为所欲为了?(某软件双手放在胸口,你要干嘛?) 常见的修改方法有两种,我给你举例说明: no.1 在某软件中,这样来进行注册: ALL00405E02(关键CALL,用来判断用户输入的注册码是否正确) 0045123DJZ004572E6(!!!——此为关键跳转,如果用户输入的注册码正确,就跳向成功处,即004572E6处) 0045XXXXYYYYYYYYYY XXXXXXXXYYYYYYYYYY XXXXXXXXYYYYYYYYYY XXXXXXXX执行到此处,就提示用户注册失败 ……提示用户注册码不正确等相关信息 …… 004572E6……——(注册成功处!!!) ……提示用户注册成功等相关信息 呵呵,看明白了吗?没有的话,我来给你讲一下.在软件执行的时候,CALL置0045E02处来进行注册码判断.接着回来后就来一个跳转语句,即如果用户输入的注册码正确就跳到004572E6处,跳到此处,就算是注册成功了.如果用户输入的注册码不正确的话,那么就不会在0045123D处进行跳转,而一直执行下去.在下面等它的,是注册失败部分. 想明白了吗?嘿嘿……没错,我们只要把那个关键跳转JZ给改为JNZ(如果用户输入的注册码错误,就注册成功,输入正确则注册失败).当然你也可以将JNZ修改为Jmp,这样的话,你输入的注册码无论正确与否.都可以注册成功. no.2 我们再来讲一下另外的一种情况: ALL00405E02(关键CALL,用来判断用户输入的注册码是否正确) 0045123DJNZ004572E6(!!!——此为关键跳转,如果用户输入的注册码不正确,就跳向失败处,即004572E6处) 0045XXXXYYYYYYYYYY XXXXXXXXYYYYYYYYYY XXXXXXXXYYYYYYYYYY XXXXXXXX执行到此处,就提示用户注册成功 ……提示用户注册成功等相关信息 …… 004572E6……——(注册失败处!!!) ……提示用户注册码不正确等相关信息 这次我相信,并且深信不疑.你一定明白了.我还是不明白……倒…… 你一定看出跟第一种情况不同的地方了吧.没错!它与第一种不同的,就是第一种情况是如果注册码正确,就跳到注册成功处,如果没有跳走,就会执行到失败处.而这一种情况则是如果注册码不正确,就跳到注册失败处,否则将执行到注册成功处. 这种情况的修改,除了把JNZ改为JZ外,还可以将其改为Nop,Nop这个指令没有任何意义,将该条指令修改为Nop后,便可随意输入注册码来进行注册了. 原理以经给你讲了,下面我们再来讲一下具体的修改办法吧.(我假设你以经明白了我所说的工具的使用方法) 先说一下虚拟地址和偏移量转换的问题,在SoftICE和W32Dasm下显示的地址值是所谓的内存地址(memoryoffset),或称之为虚拟地址(VirualAddress,VA). 而十六进制工具里,如:Hiew、HexWorkshop等显示的地址就是文件地址,称之为偏移量(Fileoffset)或物理地址(RAWoffset). 当我们要通过那些十六进制工具来对可执行文件中的相应指令进行修改的话,先要找到它的Fileoffset.我们没有必要去使用那些专门的转换工具,在W32Dasm中就有这个功能,比如说你W32Dasm中来到0045123D处,在W32Dasm界面下方的状态栏中就会出现该条指令的虚拟地址和偏移地址,即@:0045123D@offset0005063Dh后面的这个0005063Dh就是相应的偏移地址.我们得到该地址后,便可用UltraEdit等十六进制工具来对可执行文件进行修改了.比如使用UltraEdit,你先用UltraEdit打开该可执行文件,然后按Ctrl G,接着输入你得到的偏移地址,就可以来到其相应的机器码处. 再给你讲一下机器码,所谓的机器码.就是你看到的那些个十六进制数据了.还记的它们与汇编指令是一一对应的吗? 以下这

您可能关注的文档

文档评论(0)

asd522513656 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档