最近在群里,我经常看到一些新朋友提出一些关于学习破解软件的问题。这些问题大致可以归为以下三类:

1. “新手怎么学破解啊?”(这是标准的伸手党,百度、谷歌其实很好用)

2. “哎呀XX大牛,我什么基础都没有啊,我不会汇编,不会C更不会C++还不会............总之高手会的我都不会,我能学么?”(明确地告诉你,你能!如果你不像唐僧一样罗嗦的话,你一定能学会。)

3. 某白发帖问曰:“XX大牛,这软件你能帮我看看吗?我尝试了N天还是没有搞定,这是软件地址 www.XXX.com/XXX/XXX.rar。搞定了发到我邮箱里吧,我邮箱是XXXXX@XX.COM。”

实际上,所有的技术都是从基础知识开始的,不要幻想速成或者找到一种“空中楼阁”的方法。我要明确地告诉大家,其实大牛们最讨厌的就是问这些本不该问的问题的人。因为这些人根本就没有认清现实,没有看到成功背后的一些东西。他们只看到了10%+40%,就认为自己也可以凭借这些做到。

在此透露一下,其实在去年的时候,小生、同鞋、逆流师傅等现在的大牛还都是些小菜哦。而现在呢?嘿嘿~~

好了,上面叽咕了这么多。也算是考验下大家的耐心吧。嘿嘿。

其实学习的首要条件是兴趣!兴趣越大,你的投入就越多。本文旨在分享一些破解软件的知识,非本人原创。虽然我会简单的破解,但这篇文章写得更加详细。请大家忽略图片上的logo水印,因为我有点懒,懒得用软件去掉它们。希望大家能谅解。

本文就是用来解决新手的疑问,让你走出迷茫,让你知道如何学破解。即使你没有任何基础,也能学得很好。大牛的成功背后是由10%的天分、40%的耐心(这是在帖子写完后加上的一句)和50%的长期努力共同构成的。我相信下面的教程足以激发你的兴趣,看完之后你会发现,原来破解软件并没有那么难。

一、准备好常用破解工具:

1. 查壳工具:PEiD 0.95汉化版

* 软件名称

* 软件大小:200KB

* 下载地址:(略)

2. 脱壳调试:OllyICE(俗称OD,可下载一些OD插件保存在程序文件目录下的plugin文件夹中,启动OD时会自动链接插件)

* 软件名称:OllyICE中文版与原版

* 软件大小:2.3M

* 下载地址:(略)

3. Win32反汇编:WinHex(本文暂用不着)

* 软件名称:WinHexv19.3中文免费版

* 软件大小:3.2M

* 下载地址:(略)

4. 修复工具:ImportREC(本文暂用不着)

* 软件名称:(略)

* 软件大小:(略)

一、软件信息:

1. 软件名称:未提供

2. 软件大小:590KB,下载地址:未提供

3. 注册机编写工具:keymake

4. 脱壳工具:OD

5. 调试工具:OD

6. 其他工具:未提供

二、壳的概念:

壳是指软件的包装外壳,很多初学者还不知道壳是什么。可以通俗地理解为,壳就是一个软件被其他程序包裹起来的保护层,用于防止反编译、破解等操作。

三、脱壳方法:

脱壳就是去除软件的壳,使其暴露出原始的代码。具体方法需要根据具体的壳类型进行分析和处理。

四、调试方法:

调试是通过使用调试工具(如OD)来查找关键算法CALL,并修改汇编语言代码,达到软件注册或破解的目的。

五、初学者的建议:

对于初学者来说,建议从简单的、好欺负的软件入手,避免选择年轻的、经常更新的或高版本的软件,以免以失败而告终。

六、破解步骤:

1. 首先注册软件,查看软件弹出的有关注册失败的信息框的内容。

2. 查壳:有壳脱壳,无壳用OD载入。

3. 手动脱壳基本方法:从OD载入软件程序后弹出是否分析对话框,点“否”,停在程序壳的入口(含有pushad等类似字符)。接下来我们的目的是要寻找第一个popad 。

(1) 首先按F8,接下来或近处便是CALL,此时的CALL或是离这里很近的CALL必须按F7,否则你就掉入陷井,后面遇到CALL一旦掉入也没关系,你先记下来,重新载入程序(按CTRL+F2),再遇到这个时就用F7进入。

(2) 出现往回跳转时,即红色线显示跳转实现,必须在下一行点左鍵,然后按F4步过,灰色为跳转未实现,可不理它照样F8。

(3) 其他全部F8,一路下去必定能找到第一个popad,找到后离此不远必定有一个大的跳转,一旦跳转来到有push ebp字样,说明壳己走完到主程序(OEP),在此用OD插件→ollyDump→Dump debu...→Dump脱壳→保存。

4. 破解:OD载入程序、点文件→打开→点击要破解的软件程序(无壳或己脱壳的)。

5. 鼠标置左上(反汇编)窗口点右鍵,弹出框选项中选择ultra string reference(过激的字符串参考)中的Find ASCII。

6. 在弹出的窗口内查找第一步骤的注册信息内容或有关注册成功和注册失败的字符。如果找不到,建议你放弃,另选其他软件,最好是年纪大些的(一般在2005年及以前的)。

、 找到相关字符后,双击它,回到OD主窗口,在反汇编窗口(左上)中可以看到相关字符。接着在字符上下附近寻找关键跳转(即跳向注册失败或注册成功处),在该跳转附近必定有一个关键CALL。

8、 如果使用爆破方法,可以修改关键跳转(jnz改为jz,jz改为jnz等)。

9、 如果是追注册码,可以在关键CALL这行下设置断点(按F2或双击鼠标),然后按F9运行。运行后会弹出软件注册对话框,随意输入注册信息后确定。这时注意观察右上方的寄存器窗口,会显示出你输入的假码和软件的真码。真码可以注册,而这个CALL可以用来做注册机。

下面,我给大家找来一个简单的软件演示一下实例:

【软件名称】现代汉语词典

【注册方式】确认码+注册码

【破解工具】PEiD 0.95 OllyICE keymake

1、 查壳为ASpack 2.12 -> Alexey Solodovnikov(见下图)

2、 下面开始脱壳,首先用OD载入软件,分析项点“否”。

3、 接下来按照以下步骤操作:第一步按F8、第二步F7(这里的CALL离入口很近哦)、第三步F8......以此类推,全部用F8。中间省略... ...一路F8来到这里后,按图注释走,注释栏未注明全部F8。从上面程序返回直接跳到这里,这就是典型的OEP入口了。‘

4、 用OD插件直接Dump,如下图所示。

5、 在弹出对话框中点击Dump后命名文件、保存。生成的文件便是已经脱壳的程序文件了。

接下来可以开始破解了:

1、 用OD载入已脱壳的程序文件,程序停在OEP入口(注意看,这里已经不是壳的入口了)。将鼠标置于反汇编窗口中并点击右键,在弹出对话框中按照以下图示选择。

2、 双击如图所示的注册失败....字符。

3、 双击后回到OD主窗口,可以看到注册失败由上方跳转而来,我们顺着红线向上找关键跳转及关键CALL。

4、 找到这里,0051B153跳向注册失败,必是关键跳转了,它上面的CALL一般都是关键CALL(因为是初学我们暂不进入跟踪算法)。

我在此介绍三种简单的破解方式,具体请参考以下内容及参考图中的注释操作。

(1) 爆破:在关键跳转处的jnz改为jz或点击右键→二进制→用nop填充。

(2) 追注册码:在关键CALL处设置断点,然后按F9运行。

本文将介绍如何破解软件注册码的方法,分为三个步骤进行讲解。首先是爆破Nop填充图,然后是追注册码和制作注册机。

1. 爆破Nop填充图:

a. 使用上述操作及参考寄存器窗口内容,利用keymake(注册机编写器)进行制作。

b. 在关键跳转修改后,点击右键→复制到可执行文件→所有修改→弹出对话框,点击全部复制。

c. 在新弹出的窗口中点击右键,选择保存文件,至此爆破完成。运行软件即可注册成功。

2. 追踪注册码:

a. 在关键CALL处设置断点F9运行程序,弹出软件,选择注册项并输入注册信息,点击确认注册。

b. 查看寄存器窗口,这里显示软件的真假码。KKK为输入的码假,在第三行EDX处显示的为真码(注意:这里的真码与输入的确认码对应)。另外需要注意的是:当点击确认注册后,软件会陆续弹出几个出错的对话框(说明软件有调用函数),可以直接点击“否”,打开软件输入对应的确认码和真码即可注册成功。

3. 制作注册机:

这里不再详细赘述,如有兴趣可以查阅新手问题1的解答。需要注意的是,初学者应该从简单、好欺负的软件入手,避免使用年轻的、经常更新的或高版本的软件,否则可能会以失败告终。

此外,建议学习者下载小生工具包。该工具包中包含一个由小生制作的记事本,里面记录了天草和黑鹰的新手教程,都是简单易懂的。

软件名称:待定

软件大小:641M

下载地址:待定

学习了基础后,你就可以开始你的破解之路了。如果觉得自己已经能够搞定一般软件,还可以跟随练习一起来学习。