狂犬病发作存活的人:菜鸟破解软件手记(一)

来源:百度文库 编辑:中财网 时间:2024/05/03 16:14:26
一、尝试注册,获取注册信息。
启动软件,看到了一个机器码,下面有提示输入注册码的方框,随便输入几个数字(图1),点击确定。软件提示“注册码错误”(图2)。通过这一步,我们知道了注册不成功时,字符串的内容,我们可以以此为突破口。

图1
2009-3-1 21:24 上传下载附件 (37 KB)

图2
2009-3-1 21:24 上传下载附件 (8 KB)



二、反汇编工具的使用。

打开工具W32Dasm无极版,依次点击文件——打开文件进行反汇编(图3),
图3
2009-3-1 21:24 上传下载附件 (17 KB)



选择软件安装目录里的ProFloral.exe(图4)。

图4
2009-3-1 21:24 上传下载附件 (52 KB)



载入后,在工具W32Dasm界面中,依次点击PE信息——字符串参考(图5),

图5
2009-3-1 21:24 上传下载附件 (34 KB)



出现搜索对话框,输入刚才我们看到的“注册码错误”,点击查找,出现了结果(图6)。

图6
2009-3-1 21:24 上传下载附件 (30 KB)



双击该字符串,去到这个字符串的地址(图7)。

图7
2009-3-1 21:24 上传下载附件 (39 KB)



向上几行,找到跳转的地址006A1475(图8),

图8
2009-3-1 21:24 上传下载附件 (14 KB)



说明从这里跳转到注册码错误。右键点击,选择转到代码位置(图9)。

图9
2009-3-1 21:24 上传下载附件 (21 KB)



输入006A1475,确定(图10)。

图10
2009-3-1 21:24 上传下载附件 (19 KB)



然后我就转到了这个位置,这里的信息很重要(图11)。

图11
2009-3-1 21:24 上传下载附件 (26 KB)



顺便把用到的汇编基本指令跟大家解释一下,因为我没学过汇编,这些小把戏都是看别人的教程自己捉摸的,所以我承认自己对汇编的理论完全不懂,只能献丑了。它们的作用大家可以理解一下,详细的含义还是请教专门的计算机高手吧。

mov a,b ;把b的值赋给a,使a=b
call :调用子程序
ret :返回主程序
je或jz :若相等则跳转
jne或jnz :若不相等则跳转
push xx:xx 压栈
pop xx:xx 出栈

通常CALL是调用数据,有可能调用寄存器中的注册码,所以断点一般设在CALL处。虽然我们不知道究竟哪一个CALL最重要,但是由于软件运行的时候是按照从上到下的顺序进行,所以我们在地址006A1475上方比较远的CALL处设置断点。在调试工具中,按下F2以后,地址变为红色,说明设置断点成功。断点的意思是,软件运行到这里会被终止,我们就可以按照自己的需要进行操作。(图12)。
图12
2009-3-1 21:24 上传下载附件 (27 KB)



这时,可以关闭W32Dasm了。


三、调试工具的使用。

打开工具ollydbg,在界面上按下组合键ctrl+G调出要跟随的表达式,在方框中输入地址006A1461(图13),
图13
2009-3-1 21:24 上传下载附件 (38 KB)



确定后,来到该地址,最上面一行就是它。按下F2设置断点,这时,这个地址就变成了红色高亮(图14)。

图14
2009-3-1 21:24 上传下载附件 (17 KB)



断点的意思就是程序运行到这里会停下来,我们可以追踪。然后按下F9,运行程序。这时,左下角会提示,访问违例(图15)。

图15
2009-3-1 21:24 上传下载附件 (13 KB)



根据提示,按下组合键shift+F9,继续运行。又按了两次组合键继续后,发现电子辞典被打开,仍然提示注册(图16)。

图16
2009-3-1 21:24 上传下载附件 (39 KB)



我们随便输入几个数字,点击注册。这时,软件无反应,因为已经被我们中断了。但是回到ollydbg,在工具的下边我看到了注册码(图17)!

图17
2009-3-1 21:24 上传下载附件 (125 KB)


四、提取注册码,完成注册。

右击这一长串的数字,选择复制内容到剪贴板(图18)。
图18
2009-3-1 21:24 上传下载附件 (22 KB)



将内容粘贴到记事本,得到
DS:[0144EF08]=014519D8

EAX=0146C3F8,
(ASCII "00A144EC228C7C7C91FC80876D1093346C89B3F1F17585DA4F09D3E653CA1182")

注册码就是引号里边的

00A144EC228C7C7C91FC80876D1093346C89B3F1F17585DA4F09D3E653CA1182。

回到ollydbg,再按下F2,取消断点,高亮红色标记消失。这时我们就可以关闭ollydbg了。重新打开软件,在提示注册的方框里粘贴一长串的数字和字母,确定后,注册成功了(图19)!

图19
2009-3-1 21:24 上传下载附件 (10 KB)



现在就可以毫无障碍的使用了。这样我们就完成了破解的全过程。而且经我测试,即使卸载了软件,注册信息仍然不会消失,当你重新安装该软件后,仍然是注册版的。

这就是我这个菜鸟的一点心得,在高手面前不值一提,但我希望我们菜鸟能够互相学习,成长为才鸟。希望我的这一点小把戏能给大家一些帮助启示。