首页
社区
课程
招聘
我的一篇被录用的破解文章!!
2005-2-26 13:14 11805

我的一篇被录用的破解文章!!

2005-2-26 13:14
11805
呵呵,大家好,这是一篇被第3期的<黑客X档案>录用的文章,原文放上来,希望大家指点!!!

另类方法玩破解――ClipCache Plus 2.9
                             (作者:bnbn)
[谨以此文献给3班的全体同学,祝愿我们都能顺利地考上重点高中!]
偶在一本电脑杂志上发现了ClipCache这个软件,这是一个优秀的剪贴板增强软件,
可以让Windows支持多重剪贴板功能,通过试用感觉挺不错的。但是是共享软件,
我们只好自力根生了!

软件名称:ClipCache Plus 2.9
破解工具:PEiD 0.92、Ollydbg 1.10、W32dasm 中文版、UltraEdit、Keymake 2.0
软件限制:30天试用期限,过期必须要注册才能使用。

                                  W32dasm 篇

好了,让我们正式开始。首先我们运行软件,尽量多点收集有关的信息,“知己知彼,方能百战百胜”嘛。
打开软件,选择“help"菜单,点“Purchase ClipCache Now"(图1)

我们输入假注册码“ilovepcx”(提
示:这个随大家自己喜欢,但是最好不要用888888,123456等简单、重复的注册码,因为这样有的程序根本不去
比较注册码,直接提示错误的哦!),程序出现了注册码错误的提示,记住它。(图2)


现在用PEID检查软件的壳。报告没有加壳,这下我们可以省去脱壳这一步了,软件用VC++6.0编写。(图3)

下面我们用W32dasm反汇编,打开菜单“参考”-“串式参考”,双击“Thank you for purchasing ClipCache”,来到了00423386,我们向上
找,发现了|:0042336B(C),说明从0042336B跳过来的,我们用shift+f12,输入“0042336B”,很明显,是这里没有跳,所以接着显示
注册码错误。这提示我们上面的一段代码是计算注册码和比较注册码的关键代码了!
                                      Ollydbg  篇
现在我们用Ollydbg装入软件的主程序clipc.exe,按Ctrl+G,输入我们找到的关键代码的地址,我们这里输入00423321,确定后下断点(用鼠标
双击00423321这一行的“Hex 转存”).现在用F9运行程序,输入假注册码,点确定,立刻被Ollydbg中断下来了。
我们一起来用看看这些代码到底有什么用。
00423321    .  E8 5E0D0000       call <jmp.&MFC42.#6334>
00423326    .  8D7E 60           lea edi,dword ptr ds:[esi+60]
00423329    .  8BCF              mov ecx,edi
0042332B    .  E8 CE0B0000       call <jmp.&MFC42.#6282>   //提取我们输入的注册码并放入EAX中     
00423330    .  8BCF              mov ecx,edi
00423332    .  E8 F70B0000       call <jmp.&MFC42.#6283>
00423337    .  8D4C24 0C         lea ecx,dword ptr ss:[esp+C]
0042333B    .  E8 90F6FFFF       call clipc.004229D0       //走过这个CALL后我们发现了好几个注册码样子的东东,先记录下来,一会再验证
00423340    .  8B3F              mov edi,dword ptr ds:[edi]  //把我们的假注册码放入EDI中
00423342    .  8D4C24 38         lea ecx,dword ptr ss:[esp+38]
00423346    .  57                push edi
00423347    .  C64424 5C 01      mov byte ptr ss:[esp+5C],1
0042334C    .  E8 9B0B0000       call <jmp.&MFC42.#860>       //这里程序对输入的注册码处理了一下,改为大写
00423351    .  8D4C24 38         lea ecx,dword ptr ss:[esp+38]
00423355    .  E8 EA100000       call <jmp.&MFC42.#4204>
0042335A    .  8D4C24 0C         lea ecx,dword ptr ss:[esp+C]
0042335E    .  E8 7DFAFFFF       call clipc.00422DE0         //这个是注册码比较和计算的关键CALL
00423363    .  83E8 20           sub eax,20                  //EAX的值与20做减法运算                        
00423366    .  74 47             je short clipc.004233AF     //这里没有跳(如果这里跳了,会提示我们输入的注册码是被封杀了的。)
00423368    .  83E8 02           sub eax,2                   //EAX的值与2做减法运算
0042336B    .  74 19             je short clipc.00423386     //这里没有跳,提示注册码错(如果这里跳了,便会提示我们注册成功)
我们已经对这里的代码有了初步的了解,那么在0042333B生成的那几个东东是什么呢?我们一起来验证一下。
打开程序,输入一个我们得到的注册码。啊!提示我们这个注册码是公开的,所以被封杀了,郁闷……。(图4)


好,我们现在先停下来,泡一杯咖啡,分析一下我们下一步该怎么做。现在在我们面前有两条路可以走,
1:进入0042335E这个关键CALL分析软件算法,找出真正的注册码。
2:软件自己内置了6个封杀了的注册码,我们如果把软件需要封杀的注册码修改为别的东西,这样我们不就可以
用那些被软件封杀了的注册码注册了吗?
好,我们今天来走第2条路。重复上文Ollydbg的步骤,这次我们把断点设置在0042333B这个地方,我们将要用F7
跟进去,详细分析。
跟进这个CALL以后,我们一直用F8,一直来到以下地方。(图5)


看见了吧,这6个字符串其实就是6个被封杀的注册码,我们继续向下走,就是程序对这几个字符串进行运算,地
到6个被杀的注册码!
                                 
                                 UltraEdit 篇
好了,原理我们知道了,但是如何修改软件内置的注册码呢?既然软件是用字符串来保存被杀注册码的,
我们用UltraEdit不就可以修改了吗?说干就干。用UltraEdit打开程序clipc.exe,按Ctrl+f,查找
“27@=2D7<(AA3<44<=”,并且记得选上“查找ASCII”这个选项。(图6)

哈哈,一下就找到了!
我们把这6个字符串都改一个字符吧,(长度最好不要改变)这样软件运算出来的就是不是原来的
几个封杀的注册码了!我改为图7的样子,


保存。好了,我们再打开软件,输入我们一开始得到的注册码,
(注意是原始的被杀注册码哦!),哈哈,果然注册成功了!(图8)

                                 
                                 Keymake  篇
好了,现在我们来做一个破解补丁!(图9)

                                    
                                   后记
呵呵,是不是一次很有趣的破解之旅?其实这个软件的算法并不复杂,以后有机会再和大家一起研究。
偶今年初三了,学习任务繁重啊!所以在编写文章时较为仓促,如果文章中有什么错漏,还请各位大虾赐教!
谢谢了!

[培训]二进制漏洞攻防(第3期);满10人开班;模糊测试与工具使用二次开发;网络协议漏洞挖掘;Linux内核漏洞挖掘与利用;AOSP漏洞挖掘与利用;代码审计。

收藏
点赞7
打赏
分享
最新回复 (30)
雪    币: 214
活跃值: (86)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
lidazixun 2 2005-2-26 13:15
2
0
希望大家多给点意见啊,谢谢大家了!!!!
雪    币: 894
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
fly 85 2005-2-26 13:18
3
0
鼓励一下
后面的路还很长
雪    币: 214
活跃值: (86)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
lidazixun 2 2005-2-26 13:24
4
0
哈哈,得到高手鼓励,万分激动,一定加倍努力!~~~
雪    币: 238
活跃值: (250)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
fchker 4 2005-2-26 13:51
5
0
祝贺!!
继续努力啊
雪    币: 85199
活跃值: (198520)
能力值: (RANK:10 )
在线值:
发帖
回帖
粉丝
linhanshi 2005-2-26 13:54
6
0
Authorship.I support.
雪    币: 392
活跃值: (909)
能力值: ( LV9,RANK:690 )
在线值:
发帖
回帖
粉丝
cyclotron 17 2005-2-26 15:00
7
0
恭喜~
继续努力~
雪    币: 214
活跃值: (15)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
ljy3282393 1 2005-2-26 16:39
8
0
楼主:学业为重啊!
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
chen19224 2005-2-26 20:46
9
0
初中还没毕业就....
后生可畏啊~~~~
雪    币: 225
活跃值: (146)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
ytcswb 3 2005-2-26 21:15
10
0
佩服,人才。 不过学业为重啊。。。。。。
雪    币: 214
活跃值: (86)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
lidazixun 2 2005-2-26 21:25
11
0
万分感谢大家鼓励,偶一定在好好学习的基础上尽快提高破解水平~~~~~~~~ ,绝不辜负大家的期望!!!
雪    币: 414
活跃值: (531)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
nig 4 2005-2-26 21:47
12
0
先恭喜一下吧!
不过这个方法决不是什么新鲜的方法,之前的网上文章中有不少这样的文章,我记得当年的一个下载软件就是用这种方法来进行处理的。
雪    币: 214
活跃值: (86)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
lidazixun 2 2005-2-26 22:03
13
0
最初由 nig 发布
先恭喜一下吧!
不过这个方法决不是什么新鲜的方法,之前的网上文章中有不少这样的文章,我记得当年的一个下载软件就是用这种方法来进行处理的。


偶之前也没有看见过类似的文章,所以应该不算抄袭把
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
e_pegasus 2005-2-27 07:52
14
0
小弟弟能在14岁做出这样的东西,有点聪明啊
但是弄注册码这些事只能玩玩不可当正,这些是要有人做,但只要少数人做就行了,相信也大家都是自认为有点聪明的人,创造才是进步,如果聪明人都来盗注册码,中国永远出不了WINDOWS和奔腾,在调试方面逆向工程比弄注册码更有意义。

你的这个破解水平一般有点C语言和汇编语言的人10来天或几天就可以作到了,相信你也是花可不少时间的。我初3到高一花了很多时间自学微积分但是还不及大学大半个学期学得多和深入,
所以小弟弟学好知识打好基础才是对。
凡事不可冒进
雪    币: 515
活跃值: (1223)
能力值: ( LV12,RANK:650 )
在线值:
发帖
回帖
粉丝
RoBa 16 2005-2-27 09:43
15
0
最初由 e_pegasus 发布
小弟弟能在14岁做出这样的东西,有点聪明啊
但是弄注册码这些事只能玩玩不可当正,这些是要有人做,但只要少数人做就行了,相信也大家都是自认为有点聪明的人,创造才是进步,如果聪明人都来盗注册码,中国永远出不了WINDOWS和奔腾,在调试方面逆向工程比弄注册码更有意义。

你的这个破解水平一般有点C语言和汇编语言的人10来天或几天就可以作到了,相信你也是花可不少时间的。我初3到高一花了很多时间自学微积分但是还不及大学大半个学期学得多和深入,
所以小弟弟学好知识打好基础才是对。
........


深有同感,如果让我选择是当Kevin Mitnick还是Bjarne Stroustrup ,我现在会选择后者

不过~~~~~~现在的情况是哪个也不可能
雪    币: 214
活跃值: (86)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
lidazixun 2 2005-2-27 14:17
16
0
最初由 RoBa 发布


深有同感,如果让我选择是当Kevin Mitnick还是Bjarne Stroustrup ,我现在会选择后者

不过~~~~~~现在的情况是哪个也不可能


同意!,不过………………Kevin Mitnick是谁?Bjarne Stroustrup 又是谁啊?

呵呵 ,不认识啊
雪    币: 211
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
duzaizhe 2005-2-27 15:42
17
0

有编程基础的看下精华
2天OK啦
雪    币: 238
活跃值: (250)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
fchker 4 2005-2-27 15:51
18
0
当年我找的第一个注册码也是这样找的,怀念啊
雪    币: 214
活跃值: (86)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
lidazixun 2 2005-2-27 16:20
19
0
最初由 duzaizhe 发布

有编程基础的看下精华
2天OK啦


呵呵,偶只是学PASCAL,个人觉得好象和破解关系不大,所以………………………………我又不是很了解汇编,

郁闷啊,我只能漫漫来咯~~
雪    币: 235
活跃值: (191)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
gxjxdqk 4 2005-2-28 10:23
20
0
能想出改封杀的注册码?真的不错
雪    币: 2074
活跃值: (262)
能力值: ( LV9,RANK:220 )
在线值:
发帖
回帖
粉丝
阿健 5 2005-2-28 10:40
21
0
支持!!!
雪    币: 117
活跃值: (20)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
无奈无赖 2005-2-28 11:04
22
0
有意思..支持一下..呵呵
雪    币: 652
活跃值: (106)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
xiaoduoduo 2005-3-11 15:07
23
0
我上大学了还没摸过鼠标
雪    币: 258
活跃值: (230)
能力值: ( LV12,RANK:770 )
在线值:
发帖
回帖
粉丝
qiweixue 19 2005-3-11 16:17
24
0
最初由 lidazixun 发布


Bjarne Stroustrup 又是谁啊?

Bjarne Stroustrup 据我少知他系贝尔实验室开发C++编译器领头系老大,,,
支持,,,楼主好年少啊。。。。
人不BT狂少年。。。
雪    币: 264
活跃值: (119)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
DimRacker 1 2005-3-11 16:48
25
0
Kevin Mitnick是位天才黑客,但他是以搞破坏为乐;Bjarne Stroustrup则是C++之父。
楼主要把握好发展的方向,做个有用之才,争取为早日实现四个现代化和祖国的繁荣昌盛添砖加瓦!
游客
登录 | 注册 方可回帖
返回