飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 6227|回复: 10

[原创] 半仙算命 V2005 7.01破解分析

[复制链接]

该用户从未签到

发表于 2005-7-20 00:07:57 | 显示全部楼层 |阅读模式
[半仙算命 V2005 Build 07.01]
                                          2005年7月19日
前言:  老妈想算算命,本人急功,采取爆破得手,为时10分钟。

软件下载:http://www.skycn.com/soft/7818.html

/////////////////////////////////////////////////////////////////////////////////////
在PYG论坛上,已经有一篇破文
[http://luowei.mireene.com/bbs/vi ... ge=1&highlight=]
标题: 半仙算命 V2004 10.05破解分析,其破解相当简单。
【破文标题】半仙算命 V2004 10.05破解分析
/////////////////////////////////////////////////////////////////////////////////////

可能软件作者也看到了破解,在其最新版本半仙算命 V2005 Build 07.01中,取消了上述那么简单的提示,输入
注册码错误的话,没有任何提示。我不想跟注册过程,只想快点得手,爆破———爆破——


软件下载后ssbx.exe,我没有直接安装运行,因为它捆绑的垃圾软件太多了(什么百度等)。
用Inno_Setup_Unpacker_016命令行下解包,

G:\TMP\Inno_Setup_Unpacker_016>innounp -x -dssbx -m ssbx.exe
; Version detected: 5004
#0 embedded\uninstall.exe
#1 {app}\ssbx.exe
Reading slice G:\TMP\Inno_Setup_Unpacker_016\ssbx.exe
#2 {sys}\ssdata.dat
#3 {app}\软件使用说明.txt
#4 {app}\特别推荐软件.htm
#5 {app}\sound.wav
#6 {app}\setup.dll
#7 {app}\setup_laofzcb.exe
#8 {app}\setup.exe
#9 {app}\skins\1.skn
#10 {app}\skins\2.skn
#11 {app}\skins\3.skn
#12 embedded\License.txt
#13 embedded\InfoAfter.txt
#14 embedded\WizardImage.bmp
#15 embedded\WizardSmallImage.bmp
#16 install_script.iss

G:\TMP\Inno_Setup_Unpacker_016>
上面的{app}\ssbx.exe才是我们需要的,双击运行,提示非法安装,点确定,进入主界面,随便点个功能块,
出现无法创建C:\WINNT\SYSTEM32\ssbx.htm1(注意是数字1而不是字母l), 当然了,我用user帐号运行的,设置了NTFS权限限制。
因此,我手工创建该文件,设置user可读可写。重新运行,再无该错误提示。破解后来我发现该文件只是保存的算命结果的文字
内容,TMD,竟然不放在程序自身目录。

接着继续试点功能,提示不能连接到数据库。再看,解包文件列表中有个{sys}\ssdata.dat,这就是数据库了,复制到C:\WINNT\SYSTEM32\
目录,退出再运行程序,OK,无此错误提示了。  TMD,强奸呀,往我的系统目录存这些玩意。

慢着,来到真正要解决的地方了,提示未注册,功能限制。
不——我怎能被你限制呢——我——要——破——解——你!

查壳dephi,用OD加载,插件ULTRA STRING REFERENCE看字符串参考,真多的软件功能限制提示——我总不能一个一个去改跳转吧,太累。
        “本软件未注册”  “软件尚未注册,功能限制!\n\n\n\n请及时注册软件”
不急,再仔细找:
0053988B   mov eax,ssbx.00539B58        软件非法安装
0053989A   push ssbx.00539B70           Provider=Microsoft.Jet.OLEDB.4.0;Data Source=
005398A5   push ssbx.00539BA8           \ssdata.dat;Persist Security Info=False;Jet OLEDB:Database Password=1qaz2wsx3edc4rfv5tgb
005398DB   mov edx,ssbx.00539C0C        select * from 汉字笔划
00539943   mov ecx,ssbx.00539C4C        \Co0In.dll
00539962   mov edx,ssbx.00539C60        ssbxr
00539974   mov edx,ssbx.00539C70        本软件已注册
00539986   mov edx,ssbx.00539C88        本软件未注册
呵呵,数据库显示的确是ssdata.dat了,而且数据库(ACCESS)密码都看到了Password=1qaz2wsx3edc4rfv5tgb.

还有奇怪的\co0In.dll文件名,我查ssbx.exe,并没有用到什么其他dll呀。双加来到:

00539927   |.  E>call <jmp.&kernel32.GetSystemD>; \GetSystemDirectoryA
0053992C   |.  B>mov eax,ssbx.0054D898
00539931   |.  B>mov edx,ssbx.0054D814          ;  ASCII "C:\WINNT\system32"
00539936   |.  B>mov ecx,81
0053993B   |.  E>call ssbx.00404BEC
00539940   |.  8>lea eax,dword ptr ss:[ebp-18]
00539943   |.  B>mov ecx,ssbx.00539C4C          ;  ASCII "\Co0In.dll"
00539948   |.  8>mov edx,dword ptr ds:[54D898]
0053994E   |.  E>call ssbx.00404C88                ;  合并字符串得到下面文件路径
00539953   |.  8>mov eax,dword ptr ss:[ebp-18]  ;  ASCII "C:\WINNT\system32\Co0In.dll"

Stack ss:[0012FE00]=00F8957C, (ASCII "C:\WINNT\system32\Co0In.dll")
eax=0000000A

00539956   |.  E>call ssbx.00409878                ;  判断是否存在该文件
0053995B   |.  3>cmp al,1
0053995D   |.  7>jnz short ssbx.00539986        ;  不存在--〉跳到未注册
0053995F   |.  8>lea ecx,dword ptr ss:[ebp-1C]
00539962   |.  B>mov edx,ssbx.00539C60          ;  ASCII "ssbxr"
00539967   |.  8>mov eax,esi
00539969   |.  E>call ssbx.0046D614                ;  这里应该是判断注册码的函数调用了,没耐心跟,直接F8过了
0053996E   |.  8>cmp dword ptr ss:[ebp-1C],0
00539972   |.  7>je short ssbx.00539986                ;  这里不能跳
00539974   |.  B>mov edx,ssbx.00539C70          ;  本软件已注册
00539979   |.  8>mov eax,dword ptr ds:[ebx+428]
0053997F   |.  E>call ssbx.00445434
00539984   |.  E>jmp short ssbx.00539996
00539986   |>  B>mov edx,ssbx.00539C88          ;  本软件未注册


上面修改两处:
0053995D   |.  7>jnz short ssbx.00539986----------〉nop掉
00539972   |.  7>je short ssbx.00539986 ----------〉nop掉

修改后保存为ssbx_crack.exe,运行,OK,已经没任何限制了,程序也显示已注册。
——收工!


ps:
检测是否有C:\WINNT\system32\Co0In.dll文件,该文件没其他用处。
C:\WINNT\system32\ssdata.dat数据库
生成C:\WINNT\system32\ssbx.html
该软件收藏了不少网址,都是些生活中常用的查询功能,非常不错哦。
PYG19周年生日快乐!
  • TA的每日心情
    开心
    2023-12-22 19:44
  • 签到天数: 44 天

    [LV.5]常住居民I

    发表于 2005-7-21 19:22:50 | 显示全部楼层
    原来还可以这样安装啊...
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2005-7-23 18:29:27 | 显示全部楼层
    哈哈,兄弟原来你是在这里长大的啊,记得我吗?在DFCG交流了下,
    这个论坛8错
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2019-11-22 21:56
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    发表于 2005-7-29 20:06:58 | 显示全部楼层
    学习一下:)
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2005-7-30 17:26:39 | 显示全部楼层
    好好学习!天天向上~
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2005-8-6 15:08:19 | 显示全部楼层
    我也练习练习 做做作业
    PYG19周年生日快乐!
  • TA的每日心情
    郁闷
    2018-9-28 00:33
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    发表于 2005-8-12 16:40:32 | 显示全部楼层
    老大,厉害啊!破解真快啊!
    PYG19周年生日快乐!
  • TA的每日心情
    奋斗
    2016-7-6 11:28
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2005-8-14 15:05:08 | 显示全部楼层
    呵呵 厉害 学习了一下
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2019-9-21 22:23
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    发表于 2005-8-19 21:10:43 | 显示全部楼层
    学习+支持!
    PYG19周年生日快乐!
  • TA的每日心情
    开心
    2017-4-4 09:40
  • 签到天数: 1 天

    [LV.1]初来乍到

    发表于 2005-8-22 17:13:45 | 显示全部楼层
    学习~~~~~~
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表