CCED破解实战
程序员文章站
2022-09-29 20:39:28
让我们先来检查一下工作所需要的劳动器材:
(1)Soft-ICE For Windows95/98 v4.05
动态跟踪的*软件,尽管还有TRW,我还是爱它,习惯称它叫兄弟
(2)URSoft W32... 08-10-08...
让我们先来检查一下工作所需要的劳动器材:
(1)soft-ice for windows95/98 v4.05
动态跟踪的*软件,尽管还有trw,我还是爱它,习惯称它叫兄弟
(2)ursoft w32dasm v8.93
用来破解软件最好的静态分析工具,ida太过专业我不用它
(3)r!sc’s process patcher v1.5.1
内存patch软件,作用我在下面会说到它
(4)ultraedit-32 v7.2
修改文件专用,老牌子了,高手用的都是它(西西,我可不是高手呀)
(5)fileinfo v2.4
我常用它来看文件被什么软件加密!
(6)一瓶百事可乐(要大瓶的那种)
这个不用我多说了吧,健脑提神上上之佳品,可是我怕以后会生不出小孩子!
我的机器配置:celeron 400(slot 1),128m hy(pc-100),trident 9880(8m),
fireball 10g,acer 40xcd,creative vibra128,motorola 56k modem,daytek 17"
喝上一口可乐,大叫一声“我有,我可以”。输入我熟悉的 siw 就进入了我们的工作平台 windows98,大家别以为我的桌面有多乱,嘿嘿,我的桌面才2个图标,系统资源:98%可用,厉害吧!什么,你的才80%,算了吧,如果你不会优化自己的系统,或者你的桌面杂乱无章,我劝你还是先学一下怎么优化系统吧!一个优秀的cracker,对自己的工作平台应该是非常熟悉的!
进入正题,再喝一口可乐。先用 fileinfo 看一下执行文件是否被加密?西西,很幸运,没问题,那我可以省下很多时间了,为了庆祝,再来一口。既然没有加密,那么现在该抡到我们的元老级工具 w32dasm 出场了,载入文件,也没问题,这么善良,今天我真是幸运儿,让我再喝一口...经过漫长的等待(3分钟而已)程序中的代码就清楚的出现在我的面前!好吧,先运行 cced 看一下加密方式。啊喔,出错了,无效的地址调用?朱崇军应该没有这么白痴吧,刚运行就出错,看来大概是我的 soft-ice 有问题了。唉,为什么现在的软件都要防你呢?我可怜的 soft-ice,为了不让别人找到你的身影,我已经在你的身上打满了补丁,呜呜...事到如今,摆在面前的只有2条路:自己找反跟踪代码,或用frogeice(喂,老兄,还有没有第三条路?有呀,删除你的cced,关掉你的计算机,睡觉去呀!)唉,明知山有虎,偏向虎山行,谁让我喜欢想难度挑战呢!在这里,我用 createfilea 来拦截,看来幸运又一次被我抓到了,呵呵,原来是用这个方法来找我的兄弟,看我不把你给k了。
* possible stringdata ref from data obj ->"
[url=file://\\.\sice]\\.\sice[/url]
"
|
:00530b99 68a4226100 push 006122a4
:00530b9e ff15d87e6200 call kernel32.createfilea
:00530ba4 8945fc mov dword ptr [ebp-04], eax
:00530ba7 837dfcff cmp dword ptr [ebp-04], ffffffff
:00530bab 7411 je 00530bbe
:00530bad 8b45fc mov eax, dword ptr [ebp-04]
:00530bb0 50 push eax
:00530bb1 ff15e47e6200 call kernel32.closehandle
:00530bb7 b801000000 mov eax, 00000001
:00530bbc eb39 jmp 00530bf7
:00530bbe 6a00 push 00000000
:00530bc0 6880000000 push 00000080
:00530bc5 6a03 push 00000003
:00530bc7 6a00 push 00000000
:00530bc9 6a03 push 00000003
:00530bcb 68000000c0 push c0000000
* possible stringdata ref from data obj ->"
[url=file://\\.\ntice]\\.\ntice[/url]
"
|
:00530bd0 68b0226100 push 006122b0
:00530bd5 ff15d87e6200 call kernel32.createfilea
:00530bdb 8945fc mov dword ptr [ebp-04], eax
:00530bde 837dfcff cmp dword ptr [ebp-04], ffffffff
:00530be2 7411 je 00530bf5
:00530be4 8b4dfc mov ecx, dword ptr [ebp-04]
:00530be7 51 push ecx
:00530be8 ff15e47e6200 call kernel32.closehandle
:00530bee b802000000 mov eax, 00000002
:00530bf3 eb02 jmp 00530bf7
:00530bf5 33c0 xor eax, eax
:00530bf7 8be5 mov esp, ebp
:00530bf9 5d pop ebp
:00530bfa c3 ret
看到了吗?上面这段代码就是用来查找 soft-ice 的一种方法,不管是在98还是在nt下都可以用得到,现在让我来给它做个小手术,将530bab处的代码改个跳转方向,西西,猜到了吗?跳到哪里?
好了,一块这么大的拌脚石被我清除了,好好的喝一大口可乐奖励自己吧!接下来就是关键的一步了,让它成为注册版。可是从哪里入手呢?通常一个软件的关于对话框中会有注册的相关信息,cced也不例外:未注册或注册未成功。
突破口找到了,用 w32dasm 寻找这个信息,定位在 407e21 处,并提示是从 407dcc 处跳转的。好吧,让我们来看看这段代码:
* possible stringdata ref from data obj ->"授权结果:"
|
:00407db4 6868875f00 push 005f8768
:00407db9 8d4df0 lea ecx, dword ptr [ebp-10]
:00407dbc e841cf1700 call 00584d02
:00407dc1 c645fc03 mov [ebp-04], 03
:00407dc5 833d981f620001 cmp dword ptr [00621f98], 00000001
:00407dcc 7e53 jle 00407e21
:00407dce a164236200 mov eax, dword ptr [00622364]
:00407dd3 2500000800 and eax, 00080000
:00407dd8 85c0 test eax, eax
:00407dda 7536 jne 00407e12
* possible stringdata ref from data obj ->"加密盘识别成功,软件编号="
|
:00407ddc 6874875f00 push 005f8774
:00407de1 8d4df0 lea ecx, dword ptr [ebp-10]
:00407de4 e849d21700 call 00585032
:00407de9 6a10 push 00000010
:00407deb 8d8dccfeffff lea ecx, dword ptr [ebp fffffecc]
:00407df1 51 push ecx
:00407df2 8b1564236200 mov edx, dword ptr [00622364]
:00407df8 52 push edx
:00407df9 e8c28c1600 call 00570ac0
:00407dfe 83c40c add esp, 0000000c
:00407e01 8d85ccfeffff lea eax, dword ptr [ebp fffffecc]
:00407e07 50 push eax
:00407e08 8d4df0 lea ecx, dword ptr [ebp-10]
:00407e0b e822d21700 call 00585032
:00407e10 eb0d jmp 00407e1f
* possible stringdata ref from data obj ->"注册成功"
|
:00407e12 6890875f00 push 005f8790
:00407e17 8d4df0 lea ecx, dword ptr [ebp-10]
:00407e1a e813d21700 call 00585032
:00407e1f eb0d jmp 00407e2e
* possible stringdata ref from data obj ->"未注册或注册未成功"
|
:00407e21 689c875f00 push 005f879c
:00407e26 8d4df0 lea ecx, dword ptr [ebp-10]
:00407e29 e804d21700 call 00585032
看到了吗?关键指令就是在 407dc5 处的这个判断,如果 621f98 处的值小与或等于1的话就什么都没了,407dda 处的跳转知识判断你是用注册码还是加密盘进行授权的,至于注册的方式是注册码还是加密盘,完全看你个人的喜好了!我挑选了注册码方式,先呼出 soft-ice,下 bpm 621f98 w,然后用 bd 先关闭这个断点,进入软件的“电子注册”,输入注册码“8888888888”,按确认后退出。呼出 soft-ice,用 be 打开断点后再运行 cced2000,这是代码停在了这里。
:004056e3 c7811804000000000000 mov dword ptr [ebx 00000418],0
然后软件就再也没有对这个地址进行写入的动作,看来我只有在这个指令上动手脚了!既然小与等于1是错误的,那我就用2来代替吧。将上面这个指令改为
:004056e3 c7811804000002000000 mov dword ptr [ebx 00000418],2
看看结果如何?西西,不用我说大家都知道了!(我要喝可乐)可是很明显这个指令不是真的判断注册码处的地方,只是对是否注册的这个全局变量进行初始化,真正的判断还在后面,但是今天我不想把所有地方都写出来,否则就没有任何意义了,那我也不用写这篇指南,还不如将修改方法直接告诉大家吧!其实用上面这个方法是不完美的。如果你是一个真正的 cracker,就应该接着研究下去。
接着当然是修改文件中的代码了,咦,提示“错误:cced2000执行文件已被非法修改,请检查病毒并重新安装系统!”。看来这个软件还有自我保护功能,西西,我喜欢!用 bpx messageboxa 拦截消息窗口,很快可以找到下面这段代码,将 405f49 处的判断改为 jmp 就可以了!
:00405f3f 668b8455e0feffff mov ax, word ptr [ebp 2*edx-00000120]
:00405f47 3bc8 cmp ecx, eax
:00405f49 7433 je 00405f7e
再运行一下,怎么样?省了60多元钱了吧,请我喝可乐哦!啊?凌晨3点多了,可乐也喝完了,改收工了。
(1)soft-ice for windows95/98 v4.05
动态跟踪的*软件,尽管还有trw,我还是爱它,习惯称它叫兄弟
(2)ursoft w32dasm v8.93
用来破解软件最好的静态分析工具,ida太过专业我不用它
(3)r!sc’s process patcher v1.5.1
内存patch软件,作用我在下面会说到它
(4)ultraedit-32 v7.2
修改文件专用,老牌子了,高手用的都是它(西西,我可不是高手呀)
(5)fileinfo v2.4
我常用它来看文件被什么软件加密!
(6)一瓶百事可乐(要大瓶的那种)
这个不用我多说了吧,健脑提神上上之佳品,可是我怕以后会生不出小孩子!
我的机器配置:celeron 400(slot 1),128m hy(pc-100),trident 9880(8m),
fireball 10g,acer 40xcd,creative vibra128,motorola 56k modem,daytek 17"
喝上一口可乐,大叫一声“我有,我可以”。输入我熟悉的 siw 就进入了我们的工作平台 windows98,大家别以为我的桌面有多乱,嘿嘿,我的桌面才2个图标,系统资源:98%可用,厉害吧!什么,你的才80%,算了吧,如果你不会优化自己的系统,或者你的桌面杂乱无章,我劝你还是先学一下怎么优化系统吧!一个优秀的cracker,对自己的工作平台应该是非常熟悉的!
进入正题,再喝一口可乐。先用 fileinfo 看一下执行文件是否被加密?西西,很幸运,没问题,那我可以省下很多时间了,为了庆祝,再来一口。既然没有加密,那么现在该抡到我们的元老级工具 w32dasm 出场了,载入文件,也没问题,这么善良,今天我真是幸运儿,让我再喝一口...经过漫长的等待(3分钟而已)程序中的代码就清楚的出现在我的面前!好吧,先运行 cced 看一下加密方式。啊喔,出错了,无效的地址调用?朱崇军应该没有这么白痴吧,刚运行就出错,看来大概是我的 soft-ice 有问题了。唉,为什么现在的软件都要防你呢?我可怜的 soft-ice,为了不让别人找到你的身影,我已经在你的身上打满了补丁,呜呜...事到如今,摆在面前的只有2条路:自己找反跟踪代码,或用frogeice(喂,老兄,还有没有第三条路?有呀,删除你的cced,关掉你的计算机,睡觉去呀!)唉,明知山有虎,偏向虎山行,谁让我喜欢想难度挑战呢!在这里,我用 createfilea 来拦截,看来幸运又一次被我抓到了,呵呵,原来是用这个方法来找我的兄弟,看我不把你给k了。
* possible stringdata ref from data obj ->"
[url=file://\\.\sice]\\.\sice[/url]
"
|
:00530b99 68a4226100 push 006122a4
:00530b9e ff15d87e6200 call kernel32.createfilea
:00530ba4 8945fc mov dword ptr [ebp-04], eax
:00530ba7 837dfcff cmp dword ptr [ebp-04], ffffffff
:00530bab 7411 je 00530bbe
:00530bad 8b45fc mov eax, dword ptr [ebp-04]
:00530bb0 50 push eax
:00530bb1 ff15e47e6200 call kernel32.closehandle
:00530bb7 b801000000 mov eax, 00000001
:00530bbc eb39 jmp 00530bf7
:00530bbe 6a00 push 00000000
:00530bc0 6880000000 push 00000080
:00530bc5 6a03 push 00000003
:00530bc7 6a00 push 00000000
:00530bc9 6a03 push 00000003
:00530bcb 68000000c0 push c0000000
* possible stringdata ref from data obj ->"
[url=file://\\.\ntice]\\.\ntice[/url]
"
|
:00530bd0 68b0226100 push 006122b0
:00530bd5 ff15d87e6200 call kernel32.createfilea
:00530bdb 8945fc mov dword ptr [ebp-04], eax
:00530bde 837dfcff cmp dword ptr [ebp-04], ffffffff
:00530be2 7411 je 00530bf5
:00530be4 8b4dfc mov ecx, dword ptr [ebp-04]
:00530be7 51 push ecx
:00530be8 ff15e47e6200 call kernel32.closehandle
:00530bee b802000000 mov eax, 00000002
:00530bf3 eb02 jmp 00530bf7
:00530bf5 33c0 xor eax, eax
:00530bf7 8be5 mov esp, ebp
:00530bf9 5d pop ebp
:00530bfa c3 ret
看到了吗?上面这段代码就是用来查找 soft-ice 的一种方法,不管是在98还是在nt下都可以用得到,现在让我来给它做个小手术,将530bab处的代码改个跳转方向,西西,猜到了吗?跳到哪里?
好了,一块这么大的拌脚石被我清除了,好好的喝一大口可乐奖励自己吧!接下来就是关键的一步了,让它成为注册版。可是从哪里入手呢?通常一个软件的关于对话框中会有注册的相关信息,cced也不例外:未注册或注册未成功。
突破口找到了,用 w32dasm 寻找这个信息,定位在 407e21 处,并提示是从 407dcc 处跳转的。好吧,让我们来看看这段代码:
* possible stringdata ref from data obj ->"授权结果:"
|
:00407db4 6868875f00 push 005f8768
:00407db9 8d4df0 lea ecx, dword ptr [ebp-10]
:00407dbc e841cf1700 call 00584d02
:00407dc1 c645fc03 mov [ebp-04], 03
:00407dc5 833d981f620001 cmp dword ptr [00621f98], 00000001
:00407dcc 7e53 jle 00407e21
:00407dce a164236200 mov eax, dword ptr [00622364]
:00407dd3 2500000800 and eax, 00080000
:00407dd8 85c0 test eax, eax
:00407dda 7536 jne 00407e12
* possible stringdata ref from data obj ->"加密盘识别成功,软件编号="
|
:00407ddc 6874875f00 push 005f8774
:00407de1 8d4df0 lea ecx, dword ptr [ebp-10]
:00407de4 e849d21700 call 00585032
:00407de9 6a10 push 00000010
:00407deb 8d8dccfeffff lea ecx, dword ptr [ebp fffffecc]
:00407df1 51 push ecx
:00407df2 8b1564236200 mov edx, dword ptr [00622364]
:00407df8 52 push edx
:00407df9 e8c28c1600 call 00570ac0
:00407dfe 83c40c add esp, 0000000c
:00407e01 8d85ccfeffff lea eax, dword ptr [ebp fffffecc]
:00407e07 50 push eax
:00407e08 8d4df0 lea ecx, dword ptr [ebp-10]
:00407e0b e822d21700 call 00585032
:00407e10 eb0d jmp 00407e1f
* possible stringdata ref from data obj ->"注册成功"
|
:00407e12 6890875f00 push 005f8790
:00407e17 8d4df0 lea ecx, dword ptr [ebp-10]
:00407e1a e813d21700 call 00585032
:00407e1f eb0d jmp 00407e2e
* possible stringdata ref from data obj ->"未注册或注册未成功"
|
:00407e21 689c875f00 push 005f879c
:00407e26 8d4df0 lea ecx, dword ptr [ebp-10]
:00407e29 e804d21700 call 00585032
看到了吗?关键指令就是在 407dc5 处的这个判断,如果 621f98 处的值小与或等于1的话就什么都没了,407dda 处的跳转知识判断你是用注册码还是加密盘进行授权的,至于注册的方式是注册码还是加密盘,完全看你个人的喜好了!我挑选了注册码方式,先呼出 soft-ice,下 bpm 621f98 w,然后用 bd 先关闭这个断点,进入软件的“电子注册”,输入注册码“8888888888”,按确认后退出。呼出 soft-ice,用 be 打开断点后再运行 cced2000,这是代码停在了这里。
:004056e3 c7811804000000000000 mov dword ptr [ebx 00000418],0
然后软件就再也没有对这个地址进行写入的动作,看来我只有在这个指令上动手脚了!既然小与等于1是错误的,那我就用2来代替吧。将上面这个指令改为
:004056e3 c7811804000002000000 mov dword ptr [ebx 00000418],2
看看结果如何?西西,不用我说大家都知道了!(我要喝可乐)可是很明显这个指令不是真的判断注册码处的地方,只是对是否注册的这个全局变量进行初始化,真正的判断还在后面,但是今天我不想把所有地方都写出来,否则就没有任何意义了,那我也不用写这篇指南,还不如将修改方法直接告诉大家吧!其实用上面这个方法是不完美的。如果你是一个真正的 cracker,就应该接着研究下去。
接着当然是修改文件中的代码了,咦,提示“错误:cced2000执行文件已被非法修改,请检查病毒并重新安装系统!”。看来这个软件还有自我保护功能,西西,我喜欢!用 bpx messageboxa 拦截消息窗口,很快可以找到下面这段代码,将 405f49 处的判断改为 jmp 就可以了!
:00405f3f 668b8455e0feffff mov ax, word ptr [ebp 2*edx-00000120]
:00405f47 3bc8 cmp ecx, eax
:00405f49 7433 je 00405f7e
再运行一下,怎么样?省了60多元钱了吧,请我喝可乐哦!啊?凌晨3点多了,可乐也喝完了,改收工了。
上一篇: C#的加密与解密
下一篇: 文档安全加密系统的实现方式(图)
推荐阅读
-
Minitab18 中文破解安装图文教程(附官方原版+破解补丁)
-
Java实战入门之双色球彩票小游戏
-
Adobe FrameMaker 2017 v14.0激活安装破解教程(附注册机)
-
揭秘太平天国宝藏之谜 破解这首宝藏诗就能成为超级富豪
-
自考网络招生 年入30万 实战记录说明
-
C语言实战之浪漫烟花表白程序代码
-
matlab2014a怎么激活?matlab2014a安装破解激活图文详细教程
-
matlab R2013a怎么激活?matlab 2013a破解安装并激活详细图文教程
-
codeblocks16.01最新中文汉化破解使用教程(附汉化包下载)
-
FotoWorks XL2019怎么破解?FotoWorks XL2019安装破解详细图文教程