dujiaoshu 发表于 2008-9-5 18:21:35

《手机世界》电子书 第一期 破解记录

【破文标题】《手机世界》电子书 第一期 破解记录
【破文作者】四有青年
【作者性别】男
【作者主页】四有D☆I☆O(Do It Ourselves)论坛(筹备中~拉人中~)
【作者邮箱】[email protected]
【所属组织】四有D☆I☆O(Do It Ourselves)论坛(筹备中~拉人中~)
【软件名称】《手机世界》电子书
【下载地址】自己搜索吧
【破解工具】od
【保护方式】机器码对应注册码
【软件限制】不注册连看一眼都别想
【破解难度】简单
----------------------------------------------------
软件介绍:
   
----------------------------------------------------
破解声明:不以物喜我做不到,我会为我的小小的进步而高兴一场
----------------------------------------------------
【破解分析】
      电子书类的软件一向是很难破解的,如果不脱壳,那么,你很难找到有用的信息,用f12中断返回,但是一般绕的眼花缭乱也找不出想要的东西来,如果脱壳的话,可是又不同一般软件,就会面目全非,不信自己找几个脱脱看。

    f12返回法找到如下:
0045B478               BA 60BA4500      mov edx,《手机世.0045BA60                  ; ASCII "\Software\Tmcmagazine"

0045B4C3               8D8D D4FEFFFF      lea ecx,dword ptr ss:
0045B4C9               BA 80BA4500      mov edx,《手机世.0045BA80                  ; ASCII "tmsn"
0045B4CE               8B45 D4            mov eax,dword ptr ss:
0045B4D1               E8 2675FFFF      call 《手机世.004529FC
0045B4D6               8D4D E8            lea ecx,dword ptr ss:
0045B4D9               BA 90BA4500      mov edx,《手机世.0045BA90                  ; ASCII "cusname"
0045B4DE               8B45 D4            mov eax,dword ptr ss:


很明显注册信息保存在注册表,下断,重新运行,但是od报告说断点失效,重新激活断点也没有用,而且看起来似乎地址都在变化,难道是因为那个壳的问题?PEtite 2.x -> Ian Luck,也不是什么猛壳啊?但是,事实如此,电子书类的软件就是于一般不同。

如果下bp RegOpenKeyA断点呢?没有注册成功之前它只是读注册表,却根本没有在注册表里写信息,那么伪造一下看看怎么样呢?

伪造如下:


"tmsn"=19840417
"cusname"="dujiaoshu"

od运行,异常,ctrl+f9强制运行,提示如下:

---------------------------
《手机世界》电子?
---------------------------
Invalid data type for 'tmsn'
---------------------------
确定   
---------------------------

看来是"tmsn"值的格式不对,那么,把其删除,重新建立,名字照旧,但是格式要是二进制的,值用01010101好了。

od重新运行,直接跳出注册框,根本没断下!!是不是很奇怪?事实上,是断点不对头,下bp RegOpenKeyExA就可以了(bp RegOpenKeyExA和bp RegOpenKeyA的区别?别问俺,俺不知道,俺就知道照猫画老虎),然后f9 n次,直到堆栈出现0012FB58   034C62E4 ASCII "Software\Tmcmagazine",然后f9返回,f8走走就可以看到注册码了。

第二种方法:想到那个万能断点来,9x下这个断点那简直就是杀人或者,居家旅行的必备良药。xp和2000下,也就是说,最近几年都少有人提这个了,似乎说也只在9x下有效。但是事实证明,xp和2000偶尔也是可以用一用的!

下断万能断点,然后输入注册名和假码,点注册,断了下来,然后alt+f9返回,因为这一次断下的是拷贝注册名,没用,再f9,然后alt+f9返回,堆栈区仔细往下找找,就找到真正的注册码了。当然,如果是固定注册码,那么就可以收工了,但是此电子书是机器码对应注册码的,所以我们要追出注册码所在的寄存器,做出注册机。

最终结果见截图。


真正用的到的朋友自己按方法去破解,但是请不要继续发布了,本着破解技术交流学习的和保护人家专利的心理,只发布其第一期好了。
----------------------------------------------------
【总结】
    找得对路,事半功倍,找的不对,累死白费。

----------------------------------------------------
【版权信息】
找得对路,事半功倍,找的不对,累死白费。

zsl01 发表于 2008-9-28 11:16:39

支持一下。多谢分享。

yukuainet 发表于 2008-9-28 21:25:44

谢谢分享!

/:014
页: [1]
查看完整版本: 《手机世界》电子书 第一期 破解记录