首页
社区
课程
招聘
[处女作]新手处女作,请多多指教!
发表于: 2006-3-5 00:38 8872

[处女作]新手处女作,请多多指教!

2006-3-5 00:38
8872
刚学破解的我,正好看完了CCDebuger的“OllyDBG入门教程”,手有点痒于是偶然找到了一个叫《XX商管王》的软件试试所学的,正所谓纸上谈兵是没用的不要浪费了CCDebuger的劳动成果。废话少说过程序如下:
  
  惯性也应该先看看主程序文件吧:因为这个软件是由多模块组成,有多个EXE文件的,那我随便打开一个看看:
进入注册界面随便输入几个数点“确认”:
好了,巡例也看看这个文件有没有加壳:
哈哈,真幸运(我不会脱壳的)

好了,学以至用吧,CCDebuger的第一个教程中也说到怎样追出注册码的方法了:用OD载入程序,停在这儿: 按F9运行程序。
停了下了,哦原来是第一个运行界面(要求注册),运行时自动弹出,这个不是关键所在,按“确定”跳过。进入注册界面,随便输入几个数,然后点“确认”

哈哈,这几个字要好好利用哦!点击“确定”回到OD,右键点出菜单->
然后跟据提示的关键字输入:

双击跟进,好了这儿是关键了吧,呵呵运气不错。我在这儿下个断点,Ctrl+F2重新运行:
不会吧?出来了?复制出来试试,真的:

成功了!

我还是做一个内存注册机吧:keymake这个就最好不过呵呵。。


虽然是知道注册码,但想看看机械码和注册码是怎么算出来的,但因刚学能力不足,在跟踪时发现如下问题,望大家指点指点:
1、我知道程序的注册码放在注册表内面的:
0060AD20  55 70 47 72 61 64 65                             UpGrade
0060AD30  53 6F 66 74 77 61 72 65 5C 4B 69 6E 67 73 6F 66  Software\Kingsof
0060AD40  74 5C 58 64 69 63 74                             t\Xdict
(狡猾,金山词霸)呵呵。。。于是我以为它静态状态下已经存留在程序的节中的,但我用:UltraEdit打开程序,发现0060AD20这个地址全是00 没有信息,但用OD一载入后0060AD20这里就是55 70 47 72 61 64 65,那么这是动态生成的吗?

2、我尝试用CCDebuger第四个教程“内存断点”尝试找出机器码和注册码是在那儿写入的,但我发现我设了内存断点后,存放机器码和注册码的地址会被程序多次写入,觉得就是这个地址是把机器码和注册码临时放在这儿的,那么我怎么才能深入跟踪生成机器码和注册码的过程呢?

3、我试过用“Filemon”和“regmon”两工具看看程序会读写文件和注册表的情况,但觉得奇怪就是regmon竟然发现不了程序是读写Software\Kingsoft\Xdict\UpGrade这个值,有人知道为什么吗?

在这儿要感谢“CCDebuger”为我们写了这么好的教程!

[课程]Android-CTF解题方法汇总!

收藏
免费 7
支持
分享
最新回复 (28)
雪    币: 2506
活跃值: (1000)
能力值: (RANK:990 )
在线值:
发帖
回帖
粉丝
2
不错,支持一下。以后写一般的破解文章只需写文字就可以了,贴图很累的
对于你的第一个问题,你看到的内容应该是程序读写注册表时在内存中临时存放的内容,这是在这些函数进行操作时出现的,用UltraEdit是看不到的。
第二个问题你想跟踪机器码和注册码的过程,可以根据你当前所知的代码向前回溯,你现在看到的地方已经是计算完的了,要知道过程还要把往前找代码来分析。
2006-3-5 01:18
0
雪    币: 146
活跃值: (72)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
进步神速啊
2006-3-5 01:49
0
雪    币: 301
活跃值: (300)
能力值: ( LV9,RANK:290 )
在线值:
发帖
回帖
粉丝
4
辛苦了,做带图的教程更费事吧.
支持一下
2006-3-5 08:30
0
雪    币: 44229
活跃值: (19965)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
5
设置精华鼓励一下。
建议尽可能以文字描述,适当的地方辅以图说明。通篇全是图的可能不会收进精华集里(为了控制体积大小)
2006-3-5 08:59
0
雪    币: 211
活跃值: (40)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
不错 适合我学习
2006-3-5 09:06
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
最初由 kanxue 发布
设置精华鼓励一下。
建议尽可能以文字描述,适当的地方辅以图说明。通篇全是图的可能不会收进精华集里(为了控制体积大小)


进步神速啊.

辛苦了
2006-3-5 10:23
0
雪    币: 21
活跃值: (40)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
8


这也骗了个精,谢谢看雪大哥!

以后会尽量用文字来做表达的。。。谢谢!

因为刚入门,望CCDebuger大哥把OD的教程延续下去
2006-3-5 11:32
0
雪    币: 200
活跃值: (42)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
厉害,商业的都可以破了!
2006-3-5 11:35
0
雪    币: 21
活跃值: (40)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
10
最初由 angie 发布
厉害,商业的都可以破了!


我发觉商业的并不代表比Crackme的程序难破,反而觉得容易!
以前也试爆破其他商业程序!
2006-3-5 11:39
0
雪    币: 21
活跃值: (40)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
11
延续至上文:

我于是用类似的方法破解其他的几个EXE程序。发觉有一个模块(EXE程序)的版本不同,用这个方法倒是可以破解出来了,但注册码不同(因为同版本EXE程序都是读取“Software\Kingsoft\Xdict\UpGrade”这个值的而且注册码都一样所以注册一个后其他的几个EXE都一样的)
由于这个原因两个不同版本的注册码也就不同,但都放在“Software\Kingsoft\Xdict\UpGrade”这里,也就是说注册了6.0后,5.0的就用不了;注册了5.0的,6.0就用不了!最后我为了把他们一起用上就用OD改了5.0注册表的键值为“Software\Kingsoft\Xdict\Jockeyc”过程如下:
0060AD20  55 70 47 72 61 64 65                             UpGrade
0060AD30  53 6F 66 74 77 61 72 65 5C 4B 69 6E 67 73 6F 66  Software\Kingsof
0060AD40  74 5C 58 64 69 63 74                             t\Xdict
心想如果0060AD20这个地址是保存UpGrade字串的全局变量的话,其他地方的字串都是一样的,动手把它改掉,把
0060AD20地址后面的都改成“Jockeyc”保存文件,果然5.0版本读写都往“Software\Kingsoft\Xdict\Jockeyc”这里读写!(心情愉快)

最后想问一下如果我把这个地址缩短一个字节写成“Jockey”(比原来的“UpGrade”少了一个字节)这样会造成其他问题吗?
2006-3-5 11:56
0
雪    币: 0
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
不错 适合我学习
2006-3-5 15:39
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
值得学习,谢谢提供!!!
2006-3-5 16:14
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
很好我就喜欢你这样的教程,希望以后能看到你更多的佳作。
2006-3-6 13:57
0
雪    币: 390
活跃值: (37)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
谢谢楼主,学习了!
2006-3-6 14:59
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
像楼住学习啊!
2006-3-6 15:35
0
雪    币: 603
活跃值: (617)
能力值: ( LV12,RANK:660 )
在线值:
发帖
回帖
粉丝
17
最初由 Jockey 发布
延续至上文:

...
最后想问一下如果我把这个地址缩短一个字节写成“Jockey”(比原来的“UpGrade”少了一个字节)这样会造成其他问题吗?


字符串的话将缺少的字符用00或空格填充,最后保持以00结尾,一般没什么问题。
2006-3-6 15:35
0
雪    币: 73
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
第一次看见主要以图片说明的,很适合小菜学习
2006-3-6 16:39
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
很不错,我就喜欢你这样的教程,希望以后能看到你更多的佳作。
2006-3-6 19:24
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
20
好!进步神速!都是CCDebuger的“OllyDBG入门教程”"惹的祸".
2006-3-6 20:56
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
呵呵,好个处女作啊。

学习了。
2006-3-6 23:20
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
不错,多多加油啊
2006-3-7 12:52
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
23
有个问题,为什么我载入程序时,说它不是32位程序,问是否还要载入?不知楼主有没有遇到?
2006-3-7 13:05
0
雪    币: 21
活跃值: (40)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
24
OD在载入不是win32的EXE文件是会这样提示的!
2006-3-7 13:16
0
雪    币: 179
活跃值: (131)
能力值: ( LV12,RANK:290 )
在线值:
发帖
回帖
粉丝
25
为啥共享软件防破解总是最狠的...
2006-3-7 19:30
0
游客
登录 | 注册 方可回帖
返回
//