luo858 发表于 2015-2-26 21:46

28软件的破解与学习

本帖最后由 luo858 于 2015-3-2 13:37 编辑

                                    在发破文前,我得先声明一下。本人不是高手,是刚学习的新手,一直在吾爱破解论坛里逛,也深知初学者难入门,老实说,我为这个软件破解研究,也苦恼和郁闷过!但我并没有退却,而继续研究,学习。   我也知道,初学习者光看文字,没有直观的OD运行图片,很难了解过程和学习兴趣,有好多都中途而废!所以,这回我发破解文章,多以图片为多,这样大家一目了然,便于学习思路和方法,达到举一反三!这也是我最终目的。   本文章只是给大家交流学习,而非用于商业。软件作者有免费10天的使用。如真需要可以支持下作者!(软件名:北京8脚本监控)
                                                                      第一章       敌情未知,探路在先。
按部就班,查壳探之。如下图
                                       第二章    敌情初现,有的放矢。
   大家已经知道是UPX壳了,脱UPX壳有好多方法的。有工具和手工OD等,咱们就用OD熟悉下手工脱吧。哪手工OD也有几种方法脱,我们就用ESP定律脱吧!废话少说,软件载入OD,如下图:

全部载入OD,如图
                                                                                  第三章   入敌占区外围,步步隔而歼之。
在上方OD载入软件后,我们就按ESP定律常规,步步为营。按F8单步进入下一行,同时看到右边的寄存ESP变为红色。

下一步, 我们就接着先左键在寄存上选中ESP,然后,就右键打开选择到“跟随到数据窗口”如图:

不急哟,朋友咱们再继续步入,到“数据窗口”后,右键打开选中硬件断点到Word。如图

哈~~我们又向敌占外围区打一个“楔子”,又进了一步,再继续步入~~~~大家不知道,记得不?上一步不是我们已经给程序打了“楔子”(就是断点:Word),现在,我们就用上它了,它可以帮我们找到外围壳出口。具体如下:在上图片断点后,按Ctrl+F2,就是重新载入软件到OD。载入后,就按F9,运行OD,此时,OD会载入软件运行我们下的断点处。
到这里,就差不多胜利在望了,不过得要做一件事,到这里后,不要忘记,一定删了我们硬件断点,以免影响后面调试和跟踪!

接下来,我们继续鼠标选中图片中的JMP关键跳,按F4,运行到些位置。(当然,你也可以F2下断点,重新OD载入软件,F9,运行也可以到此地)

接下来,咱们就在此处,按F7跟踪进入这个JMP跳的去处。。。。如图
                                                                               第四章    突破外围区,拆出堡垒壳。
如图片,右键选择开始—脱壳。

打开选项后,如图!

   后面,不用多说,保存文件~~~你可以自己查看下,原来文件是630K大小,脱壳后为2.16M。变大了好多哟 说明UPX压缩挺高的。程序至此,尽尽只是外围堡垒,内核东西,咱们还没有进去探明~~~
                                                                           第五章    入核心路,现荆棘道。
我们先打开脱壳软件,看下是什么情况?如图   这个说明什么呢?只有一个解释,软件有自效验的哟,程序自效验方式好多种的。咱们也不要过多去遐想,我个人感觉还是按照一般思路去看下,就是搜索关键字(在Od中),找到关键-返回汇编窗口—再去分析关键跳!思路明确后,就这么来~~1.载入脱壳软件,选择插件-中文搜索-搜索ASII,然后跳到搜索页面!
2.搜索页面,搜索关键字!任选中一行,右键-Find和快捷键Ctrl+F,弹出一个搜索框,输入:程序异常错误

搜索到时,就会停到字符串处。这时候,你就双击搜索到的字符串(程序异常错误),然后就会来到OD反汇编窗口处。

3.咱们现在就有目标了,有这个出错提示,那就我们就附近向上分析相关“跳”代码,有什么代码和这个出错相关呢?

那怎么办?既然没有跳,我们就把这个JE改为JMP无条件跳转,跳过“程序异常错误”。在看下效果怎么样了?--》右键--汇编
点击汇编--跳到修改页面
汇编修改后为,如图!
然后,就右键-保存到所有修改!--》点全部复制---


保存文件---另存名--- 》 呵~~这个不用我说了吧!
这时我们已经JMP掉一个错误,看下效果是怎么样了?(重载入)打开修改的软件,晕哟~~~~,又一个出错提示:“程序已经在运行中”。看来作者有好多保护哟,核心路上困难丛丛。不过,大家发现没有,现在已经是另外一个出错提示,第一次出现是不是没有了,说明我们思路还是对的。
既然是对,我们就重复,第一次搜索字符串—过程,只是把关键字符串:换成“程序已经在运行中”,然后来到第二个出错代码处。如图片
具体方法和第一次出错,修改-汇编-保存,方法一样。不再发图上! 现在文件另保存了,我们就重新打开二次修改软件,看下是什么情况发生了?
开心一下!软件能打开了,说明我们思路和方法是对的,但问题并没有到达我们目标,我们目的是:过了10天试用期,一样能行!    大家过细发现没有,这个软件正面,有一行消息:发现新版本,请更新使用,亲没有登陆按钮。这也说明我们还有好多东西,要继续完成!已经到了这步来了,也不能放弃哟。    那下步怎么办呢?是不是作者发布了新版,不更新,就隐藏了登陆按钮呢?现在也不好说,咱们就试下吧,去掉:更新通知消息。那怎么去掉更新消息呢?呵呵~~方法和上面一样,重新载入改后的软件,搜索—关键字—反汇编窗口-分析-相关跳转。


如何修改,按上面方法操作,不上图片了。我们就得到一个修改后的保存新程序,然后,我就试着打开软件,看是什么情况?
直接晕了,又一个文件自效验哟,点击确定后,软件关闭!登陆按钮是出来了,但是灰色的。老实说,我们还没进入软件中,我快投降了~~还不知道,前面还有多少暗桩哟 不管那么多了,我们继续向前步入,方法一样—重新OD载入修改的软件-搜索中文-到反汇编窗口-分析相关跳转!(--修改-汇编-保存等操作和上面一样方法)看下有什么情况?
按理现在是可以了的,出错差不多都处理了。。。。我们试目拟待。打开保存修、改后软件~~~
好开心哟 终于看到了正常登陆页面,试下能进去不?点登陆—成了—进去了-!还能剩余4273分钟,就是1440分=24小时=1天)
现在 不是我们要的目的,软件到期后,一样用不了的。咱们的研究工作,还得继续哟~~~~
                                       第六章明风平浪尽,暗礁石错布。

开心没有多久,软件时间到了,出现了这样的提示!

软件登陆页面有:使用时间到,请联系qq ,登陆按钮为灰色!怎么办?老办法试下,搜索中文—字符串-双击到反汇编窗口—去分析代码。

咱们先从上面第一处地址--双击—进入反汇编窗口看下。

咱们先从上面第二处地址--双击—进入反汇编窗口看下。

咱们先从上面第三处地址—进入反汇编窗口看下。

上面三处处理方法一样,汇编-改JMP-所有修改,另外一个页面右键-保存文件-重全名等。不再述说。可以参考最上面的图片。 好了,修改完后,我再打开保存的软件,看下是什么情况?希望成功不出差错! 这次直接晕了,能打开登陆页面,但登陆按钮—点击后---软件直接关闭!当头一棒哟~~说明软件还有暗礁哟?现在作为我一个刚入门20多天新手来说,直接晕了。没法就去泡吾爱破解论坛,看下高手是怎么处理的,关程序自效验的。看了好多破解,自效验方法,不外乎下断点,设置了断点bp ExitProcess---在堆栈里找到—并右键反汇编窗口,去找相关信息!我也只好,先这么试下,是什么情况?如图

然后,按F9运行,软件。弹出登陆窗口后—点击登陆—被断下

选择来到反汇编窗口中。。。。从上面图片中,可以看到相关je call ,对于”call 00514466    E832000000   call 北京8脚?0051449D” F7进去也没有可用东西! 都没有有用的信息。就算软件打开后,不登陆,正常关闭,也一样断点,就停在这里!并不向,有些朋友发帖说的,这时断点向上走,有一段相关关闭程序东西,但我是分析的这个软件是没有的。我现在是无语加郁闷哟~~~



接下来怎么办?除了失败就是失败,点击登陆就关!怀着一个真心求学的心情,在网上加破解QQ群,看能否有所有帮助?结果加了一个群,直接被别人“高手“,骗去50元钱。。。。。我现在心情到了,好低落时候。。。。。。这就是一个新手现实,求助无门,就算有人愿意帮你,也是有偿的,有偿也不怕,关键是你投资的钱,是肉包子打狗子,有去无回!就这样,被骗50元后,直接停了三天,对这个软件研究!事后,冷静下来,就想, 我要争这口气,只有要恒心加正确方法,一定会学到,好多知识的。决定,重新返回软件破解分析!

                                                                  第七章穷则思,思则变,变则通
   我的穷,就山穷水尽。那我就想为什么会这样改了“时间到。。。“提示,就直接关了,说明,这个软件有时间自效验东西没有搞干净。并且,可能还不只是一个暗桩,如果要一个一个去跟踪nop掉相关调用,又不好找,工作是量大。更主要是,少找一个软件,一样不会正常运行。   既然这样,那我们可不可以变通一下,大家要知道一个原理,不管你是什么本地和网络验证,最终,你都会内存比较,得到一个结果,根据这个结果去执行相关程序。目标丰富了,我们就找到软件时间验证call,步入进去,去修下软件对比的结果值,从而达到我们目的。好,咱们现在就开始工作。。。。从什么地方下手呢?大家已经知道了,软件是登陆后,自动关了的。说明点击登陆后,程序会在后台自效验时间问题。那我们 就先载入软件od,搜索字符串—用户效验中
一路下来F8,并能显示取得机器码,但这不是我们要的东西      

再继续F8 跟踪。。。。。单步跟踪来到00405DB1处,按F7进去。。。      

进去后—继续按F8跟踪—注意OD栏目,会显示软件取得的时间,这是我们感兴趣的,但不是我们想要的软件,剩余时间。      

到了这里,我感觉信心百倍,似乎看到了希望了。。。。。 F8到0040DOA1处。。。就要到关键时候了,死心塌地慢慢一步一步F8,这里是时间浮点计算对比,算出软件还有多少剩余时间。      

看软件浮点计算出来的是多少?是-9993.000000000000,说明软件时间到了,不满要求,直接下一个call关退程序了。有些朋友会,那我们当时,为什么不在前面nop这个时间call,不就行了。呵呵!想法是好,但这个时间可能其它自效验要用到哟,如果nop,程序一定会出错的哟。 现在,已经非常高兴了,已经到达核心关键点上了,剩下的是修改。这个0040D0AA    DD45 D8         fld qword ptr ss:中,其中这个是堆栈地址,原理简单,找一个地址,计算出来的结果,不为零就达到目的了。我们就改为上面有一个0xc的地址。暨0040D0AA    DD45 D8         fld qword ptr ss:      

然后—保存—所有修改—跳出另外页面—右键-保存文件。。。 咱们再用OD,重新载入保存后软件,看下效果是什么情况?      

现在,我们反过来跟踪,用F8到,修改处看下。。。。

从图片中,我们看到软件时间正是42051分钟!就算关了软件,重新起动,又变回了42051分钟。。。。 ,至此,达到长期使用的目的。最后,还是强调一下,写软件也不容易,有能力还是支持作者,本文章只能研究学习下!
(文件加数据有3.6M,太大了,传不了,只能传主文件)附件:
现在上传原版全部(含开奖数据文件)地址: http://yunpan.cn/cJt8aVRdA6RNQ (提取码:8470)

lies2014 发表于 2015-2-27 00:21

很详细,谢谢教程分享!

luo858 发表于 2015-2-26 23:04

jdgzy 发表于 2015-2-26 22:58
厉害!写得很详细,看了两遍,收藏了慢慢揣摩。

对你有帮助就好,多动手研究更重要,那样才知道一,二,三,才能举一反三。

jdgzy 发表于 2015-2-26 22:58

厉害!写得很详细,看了两遍,收藏了慢慢揣摩。

SexLove 发表于 2015-2-26 22:57

不错,楼主很用心去写。很详细。。。感谢楼主的付出

luo858 发表于 2015-2-26 22:44

图片更为直观,实践更为重要!谢谢大家~~~~支持!

brakefast 发表于 2015-2-26 22:40

不明觉厉,感谢分享了哈~

hnicf 发表于 2015-2-26 22:35

不错,写得很详细

luo858 发表于 2015-2-26 22:20

吾爱T阿杰 发表于 2015-2-26 22:15
我是一名初学者   ,,,看着这么长,,,直接选择放弃

其实 ,初学者可以分开看。差不多,先看下ESP定律脱壳! 熟悉后,再往后看,破解这个东西,更多是自己动手实验才行的。。。。不是看会的。{:1_918:}

Shock 发表于 2015-2-26 22:06

支持楼主好好学习天天来吾爱

luo858 发表于 2015-2-26 22:10

Shock 发表于 2015-2-26 22:06
支持楼主好好学习天天来吾爱

谢你哟,共同进步学习~~~:loveliness:

waiguazy 发表于 2015-2-26 22:14

我也来学习

吾爱T阿杰 发表于 2015-2-26 22:15

我是一名初学者   ,,,看着这么长,,,直接选择放弃

0语过添情0 发表于 2015-2-26 22:25

楼主很不错我就属于那种中途而退的人士,最主要的是没有太多的时间去学习!

zeromaggot 发表于 2015-2-26 22:26

好详细,我竟然看完了{:1_918:}

luo858 发表于 2015-2-26 22:31

0语过添情0 发表于 2015-2-26 22:25
楼主很不错我就属于那种中途而退的人士,最主要的是没有太多的时间去学习!

呵呵~~时间就像海绵里的水一样,只要你愿意去挤,总是有的。如果一个人对学习破解感兴趣的话,他一定会学好的~~~
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 28软件的破解与学习