本帖最后由 缘来是梦 于 2016-6-25 23:48 编辑
首先说明下:这个是在原创发布区,看见作者的作品之后,由于是刚入门破解,就拿人家发的东西进行了练习。练习的过程中遇到的很多的问题。在评论区也看到了大家的一些问题,然后就拿过来,一起学习一起进步吧。
1.查壳
Shif 乱七八糟的东西不知道有没有。因为人家unknown了
再看区段,确定是没了。看的出是VC++的区段特征。
2. 不管了OD载入吧。
运行一遍程序 进入OD界面 进行智能搜索。 不知道为啥不出来字符串。(帖子中也有人说搜不到。看来咱俩一样)
没关系别放弃,不是还有下断点的方法么,下面我用暂停法,接着,再点软件注册,
进入OD 依次按下 F12 ALR+F9 然后返回点确定 这个时候 是这个界面 图上的箭头指的就是那个弹框。(这个时候有个思路就是跳过这个失败弹窗找成功。我们先不理会这。) OD中F9运行程序(也可以选择不运行程序,进去自己F8找跳转) 进去OD 再进行智能搜索。这个时候注意了就可以搜索到了。
注意:刚才上面搜索不到虽然我也不知道啥原因,但是还是先运行一次再搜索。更直白的说下,就是你程序中看见出现有汉字的时候你再搜索,不加密的情况都能搜到。(暂时这么理解吧,有大牛可指出错误。)
噢,看见一大堆有用的东西。由于我也是看了论坛中那个帖子。所以咱们照着黄线点吧。
然后找到了呗。。
有两个思路吧,, 第一, 把下面这个jmp取消了。。不让它跳过成功。 第二, 去上面找跳转跳过未注册。
还是接着上个帖子。他用的第二种办法。 就是这个关键跳,让它实现呗。。。上面的cmp是关键。 用前面的那个数和0相比较。。。。。 Cmp 0 , 0 结果全是 0 ZF 1
结果不全0 zf 标志位是 0
然后ZF标志位 去影响跳转。。。不懂这个的跳过。因为我也不懂。
重新载入程序看见没,段到这里了。 跳转不实现导致的直接结果就是。。 我擦,忘说了。刚才在cmp 下了个断点。同学们别忘记了 未注册版本
然后我们可以高兴的去改变代码 ,让它变成正式版。 看那位仁兄的修改。就是改了个1 然后跳转实现了。。。界面就变了。
其实到这里,可以宣告一段落了。算是成功了???
很明显只是表面成功了。后面如果有功能性验证注册的话。就出现了自我矛盾的情况。
也是贴子中有人发现的。。。明明注册了。别着急。因为我也不懂。
返回去代码,分析一下。在判断是否注册的时候。。它cmp 0 和1 。 我们就假设一下。其他里面可能他也这么来。 于是就复制指令进行搜索。 cmp dword ptr ds:[0xB802E0],0x0
看看它出现了几次。 我滴个吗呀,搜到了呢。 双击点进去。
看见没。。。我们要做的要么Jmp它 要么把0X0改为0x1
还剩下几个。大家一一点进去,能修改的都修改了吧。
破解基本算是完 了。之后就剩保存了。 本来是想打个补丁的。。但是,时间太晚了,没打。最关键的是不会打补丁,哈哈。正在努力学习中。 怎么保存我就不不截图了。破解版的也不放了。麻蛋不知道怎么放啊。我是安装后直接破解的。 对不起各位仁兄和姐妹。 不过相信你们看了这个教程。人人都能破解出来了。要个破解版的也没用。 谢谢大家。 原版地址下载:http://www.crsky.com/soft/30483.html
不懂的 回帖我们接着讨论。相互学习。
|