桂林红石材:散人软件破解教程(第十课上)- 手把手教你学破解

来源:百度文库 编辑:偶看新闻 时间:2024/05/05 09:29:39
散人软件破解教程(第十课上)- 手把手教你学破解

大家好,又见面了,今天我将为大家介绍下断点的使用方法的上部(因为下部的知识点太多了,所以分成了两部分!),希望大家看后多多练习,因为想好的理解这节课是很难的(其实说实话,我在断点方面学的也不好,所以我尽量将我会的教给大家,希望大家能谅解。)

好了,讲课吧· 今天我们要用断点的方法破解我们在第4课讲的“弹出文字框”并且还要将它注册成功!使用断点法可以准确的找出使软件弹出文字框的关键句和找出注册码来~!!好,我们现在开始吧!


我们先双击下这个小程序,看看它弹出的窗口的信息(如图)

好!我们用OD载入这个小软件,之后用“查看字符串参考”的方法找到我们正在破解的这个弹出窗口的文字的信息,之后双击就进入了反汇编窗口中的相应代码处了。(如图)

 

 

好!其实我们在第4课就学过了可以找“MessageBoxA”的方法来破解这个弹出窗口,但今天我们就当不知道有“MessageBoxA”这回事!(因为我们以后找破解的关键代码时不一定都有关键语句的!所以今天我们就也当不知道有MessageBoxA这回事来破弹出窗口。)我们要用下断点的方法来准确的寻找出破解弹出窗口的关键代码!这就是下断点的威力!好!我们因为不知道哪条是弹出窗口的关键代码,所以我们就要先下个断点,之后好慢慢找,但我们应该在哪里下断点呢,那就随便找个地方吧!我准备在这里喽!(一定要在我们用字符串参考所找到的关键字的上面!)(如图)

 

 

好,那我们要怎样下断点呢?我们用鼠标指在我们要下断点的地方之后点右键在弹出的菜单中点断点-----转换,这时我们的断点就下完了。(这时我们会看到我们下断点的地址变成了红色!)(如图)

 

 

只后我们点运行,这时我们的程序就跟着我们来到了这个下断点的地址!(此时我们下断点的地址变成了蓝色)(如图)

 

 

好了,断点下完了,那我们就往下面走吧!    去找我们破解这个弹出窗口的关键句吧!好,我们按“步过(也叫单步跟踪)”键往下走走看吧!这时我们就走到了这里!突然我们正在破解的软件的程序运行了!!!(如图)

 

 

看见了吗?这不正是我们正在破解的弹出窗口吗!!!这也就是说,程序走到了这行代码时!我们破解的程序的弹出窗口就会跳出来!所以说,这!也!就!是!控制窗口!的!关键!代码!!!

(如图)

 

 

呵呵!MessageBoxA熟悉的语句,这说明我们用断点法已经精确的找到了我们要找的关键代码处了,好,那我们就破了它的窗口吧!我们在0040822A这段代码处点右键在弹出的菜单中点二进制-----使用NOP填充 之后再保存修改(如图)

 

 

 

之后再保存就可以了!

这样就跳过这个控制弹出窗口的代码了,达到了我们破解窗口的目的!

呵呵!好!那么我们就继续吧!我们还要将注册码追出来,并且注册成功呢!

我们先打开这个已经把弹出窗口干掉了的小软件,之后在输入框里随便填写上名字和注册码,之后点“Generate”试着注册下!这时这个软件就跳出了个错误框提示我们“Bad boy 就是注册失败的意思!(如图)

 

 

我们先想一下,注册失败了提示“Bad bay”那我们要是注册成功了会提示什么呢?我们先在大脑里想下!

好!我们将已经把弹出窗口干掉的那个软件用OD载入!之后我们先用“查看字符串参考”方法看看有没有我们想要的信息!比如“good boy ”“ Extremely good”之类的!呵呵!我找到了!·(如图)

 

 

呵呵!多明了的一句话啊!之后我们双击下这段话就来到了相应的代码处了!(如图)

 

 

之后我们再用第二课所学的知识,可以很快的断定出这个跳转就是关键跳转了。(如图)

 

 

jnz的意思就是不相等的话就跳过“Good boy”往下面走到“Bad boy”这也就是说注册失败了,而相等的话,跳转就不执行了而是直接往下面走,到“Good boy”之后在通过00408084jmp跳转跳过“Bad boy”也就表示注册成功了!所以我认为00408055就是判断对错的关键跳转!但像现在我们破解的软件的类型,基本都是用正确的注册码与你输入的注册码对照,来判断对错的!所以说我还疑00408055上面的那行代码就是软件用来比较注册码的关键代码!我来举个例子,比如说00408055jnz只认识010就是正确的意思,1就是错误的意思的话,而在00408055上面的那段代码(00408050)就是注册码比较的关键语句的话,那就是说我们输入个注册码,经过00408050的分析比较处理,假如输入的注册码相同的话,那就输出0,假如错误的话,那就输出1,之后判断完毕后,来到了00408055判断到底是0还是1来判断跳不跳转。0对,那就不跳,因为jnz是不相等就跳的意思,假如是1,那就跳,因为满足了jnz的条件~!假如这个原理真像我们想象中一样的话,那我们就试试吧·!

我们用鼠标点下00408050这段代码,之后点右键在弹出的菜单中点断点-----转换 来给这段代码下断,之后点运行程序!这时我们会发现我们正在破解的软件突然运行了!那我们应该做什么呢?既然都出来了,那就进去坐坐吧!我们就在这个运行了的软件里随便输入个名字,和注册码,名字就123吧!注册码就321吧!(一定要记住你输入的是什么!!!),之后点注册,这时你会惊奇的发现!我们又回到了OD中来了!此时你不要关闭弹出的那个软件窗口,而是看我们的OD中的寄存器窗口!(如图)

 

 

我们会发现在OD寄存器窗口的第三行是我们刚刚输入的注册码的信息“321”,之后我们在看寄存器的第一行:“HZF-RQX-GFD”????这是什么啊?像是注册码??好吧!我们记下这句好是注册码似的信息,之后关闭OD,打开我们破解的软件,在名字处添上123(就是我们断点时弹出软件所添的名字123,你添的多少就写多少!)在注册码处添上我们刚才记下的注册码“HZF-RQX-GFD”之后点注册看看!(如图)

 

 

啊啊啊啊!吼!~!!~~成功了!“GooD BoY”哈哈!哦!~~~!成功了~呵呵 ~注册码就是HZF-RQX-GFD,呵呵!大家看明白了吗?呵呵!

今天的作业是:破解------优化大师!


 

假如大家还想用这个软件练手的话,那就把注册信息(windows\system32\jkeyoi.sys)删除后,就可以继续使用注册了!

 

下节课程时间:八月一日 12:00整