CBJ 发表于 2007-3-18 01:14:12

带壳破解网络验证之阿达成人脑力训练3.50最新版

【文章标题】: 带壳破解网络验证之阿达成人脑力训练3.50最新版
【文章作者】: scuCBJ
【软件名称】: 脑力训练(阿达脑轻松) 3.50
【下载地址】: http://www.myadasoft.net/brain/index.htm
【保护方式】: ACProtect 2.0
【编写语言】: VB
【作者声明】: 此文旨在提供一种思路,如何分析是基本功,也是体力活,大家自行解决:)
--------------------------------------------------------------------------------
【详细过程】
今天看到[http://bbs.pediy.com/showthread.php?s=&threadid=34080,"【网络验证注册码】的如何破解?"]这里再讨论这么个软件。该软件网络验证原理是获得客户端发送的用户名和注册码通过服务器的处理程序计算是否合法,如合法,则返回合法的数据继续执行自身的注册程序注册软件,否则不会执行。
【破解依据】
既然是返回验证正确与失败来执行软件自带的注册程序,就可以不必要通过服务器验证,通过调试强行让程序自行注册。所以,跳过网络验证模块对这个软件来说是可行的,下面看我具体操作。
一、察而观之
peid查壳,发现是ACProtect 2.0,不脱壳了。

二、观而行之
OD出场,具体分析省略了,大家应该都可以找到网络验证的call.
hide OD,F9让程序跑起来,点注册,输入用户名和注册码(随便输入)
在下面call下断
0046061A    .FF15 54104000   call dword ptr ds:         ;MSVBVM60.__vbaFreeObjList   //网络验证call,F2下断
点注册后程序就中断下来,F7跟进,然后就到了以下代码(省略一些无关代码)
0046209F    .8D8D 78FFFFFF   lea ecx,dword ptr ss:
004620A5    .FF15 B0124000   call dword ptr ds:
004620AB    .50            push eax
004620AC    .8D85 74FFFFFF   lea eax,dword ptr ss:
004620B2    .50            push eax
004620B3    .FF15 70124000   call dword ptr ds:
004620B9    .50            push eax
004620BA    .8B8D F0FEFFFF   mov ecx,dword ptr ss:
004620C0    .51            push ecx
004620C1       E8 8E96FAFF   call BrainExp.0040B754   //这里获得用户机器和注册信息后开始进行网络验证,nop掉,不让他发送信息
004620C6    .8985 F4FEFFFF   mov dword ptr ss:,eax
004620CC    .FF15 84104000   call dword ptr ds:
004620D2    .8B95 F4FEFFFF   mov edx,dword ptr ss:
004620D8    .8955 D8         mov dword ptr ss:,edx
004620DB    .8D85 64FFFFFF   lea eax,dword ptr ss:

继续往下走,来到了第二处验证
0046282C    .8D8D 78FFFFFF   lea ecx,dword ptr ss:
00462832    .FF15 B0124000   call dword ptr ds:
00462838    .50            push eax
00462839    .8D95 74FFFFFF   lea edx,dword ptr ss:
0046283F    .52            push edx
00462840    .FF15 70124000   call dword ptr ds:
00462846    .50            push eax
00462847    .8B85 F0FEFFFF   mov eax,dword ptr ss:
0046284D    .50            push eax
0046284E       E8 018FFAFF   call BrainExp.0040B754//这里也是验证,nop掉
00462853    .8985 F4FEFFFF   mov dword ptr ss:,eax
00462859    .FF15 84104000   call dword ptr ds:
0046285F    .8B8D F4FEFFFF   mov ecx,dword ptr ss:
00462865    .894D D8         mov dword ptr ss:,ecx
00462868    .8D95 64FFFFFF   lea edx,dword ptr ss:
0046286E    .52            push edx
0046286F    .8D85 68FFFFFF   lea eax,dword ptr ss:
00462875    .50            push eax

继续往下走,就来到了关键比较处
00462AB3    .FF15 50124000   call dword ptr ds:
00462AB9    .66:8985 DCFEFFF>mov word ptr ss:,ax
00462AC0    .8D8D 48FFFFFF   lea ecx,dword ptr ss:
00462AC6    .FF15 28104000   call dword ptr ds:
00462ACC    .0FBF8D DCFEFFFF movsx ecx,word ptr ss:
00462AD3    .85C9            test ecx,ecx
00462AD5    .0F84 4E030000   je BrainExp.00462E29   //验证是否合法,不合法则跳向失败处,不执行以下的注册程序,感谢寒秋提醒,这里jmp过去,强行让他执行
00462ADB    .C745 FC 1700000>mov dword ptr ss:,17
00462AE2    .8B55 08         mov edx,dword ptr ss:
00462AE5    .8B02            mov eax,dword ptr ds:
00462AE7    .8B4D 08         mov ecx,dword ptr ss:
00462AEA    .51            push ecx
00462AEB    .FF90 FC020000   call dword ptr ds:

至此,程序已经注册成功了,F9一下就可以看到注册成功的字样了,软件重启一下就成为正式注册版了,大功告成!

【总结】
对于这样注册的网络验证程序可以使用这样的方法,其他的不行。这样破解注册的好处是能正常升级,能做正版做的事,还是有一定好处的,呵呵。
网络验证是大工程,现在越来越多的软件使用网络验证的加密方法,对于网络验证我也知之甚少,期望有经验的朋友拿出经验来分享下,在此谢谢各位观看。注册成功后的图片看附件

[ 本帖最后由 CBJ 于 2007-3-18 01:16 编辑 ]

wan 发表于 2007-3-18 11:09:33

这样也可以。学习了!

情天下雪 发表于 2007-3-21 00:50:22

厉害。。。。。。。。。。学习

pcg 发表于 2007-3-22 14:44:05

学习一下,谢谢楼主
不过大多数的网络验证没这么容易爆破……

就读学前班 发表于 2007-3-22 14:52:49

分析得很详细 太感谢啦

hanxiucao 发表于 2007-3-22 21:01:32

.__vbaFreeObjList ,又多学了点东西,谢谢!

canaris321 发表于 2007-3-23 18:39:21

网络验证的不会破....正好可以学习

弱虫 发表于 2007-3-23 21:29:20

zhimingcom 发表于 2007-3-28 08:44:51

这个可以写个load,运行正好

binbinbin 发表于 2007-3-28 09:04:59

不错哦。我也动下手看看
页: [1] 2
查看完整版本: 带壳破解网络验证之阿达成人脑力训练3.50最新版