吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 23918|回复: 73
收起左侧

[分享] 逆向网际速递——解密网络加速试用期之谜[LCG]

    [复制链接]
ps520 发表于 2010-3-30 10:21
感谢各位的捧场,今天仍然以网际速递为例子,主要是对其试用期算法的逆向分析。
首先,我们需要认识两个部分:
1.PartA
2.PartB
以前的老版本中,只有PartA,这就是过去删除syrq.dll就可以无限试用的秘密。
在2.9及以上(从我开始破解的那个版本吧,我也只知道这些)便引入了PartB,让一群用户摸不着头脑
所以在2.9左右网络很少见破解版,但这时候我插进去了……
3.0~3.4Beta1的补丁基本采用内存Patch跳转的方法,但这个方法并不是个办法,每次更新都要找地址,很头疼。
于是我花了点时间逆向了试用期算法,终于解开了此类软件的试用期之谜。
-----------------------------------------------------------------------------------
老工具,查找按钮事件,在《利用软件自身途径破解网络验证》提供了工具及方法。
以3.4为蓝本。拨号事件0x0040FBF0。
OD加载,Ctrl+G 0x0040FBF0,F2。
这些步骤都很熟悉了对不~

0040FBF0    6A FF           push    -0x1
0040FBF2    68 4E844D00     push    004D844E
0040FBF7    64:A1 00000000  mov     eax, dword ptr fs:[0]
0040FBFD    50              push    eax
0040FBFE    64:8925 0000000>mov     dword ptr fs:[0], esp
0040FC05    81EC 44010000   sub     esp, 0x144
0040FC0B    53              push    ebx
0040FC0C    55              push    ebp
0040FC0D    56              push    esi
0040FC0E    57              push    edi
0040FC0F    33FF            xor     edi, edi
0040FC11    8BE9            mov     ebp, ecx

基本没什么看头的入口,好戏在后。
F8一段后,发现亮点:
0040FE6F    FF15 F8264E00   call    dword ptr [<&MFC71.#784>]        ; MFC71.#785
0040FE75    68 A49F4E00     push    004E9FA4                         ; \syrq.dll
0040FE7A    8D5424 2C       lea     edx, dword ptr [esp+0x2C]
0040FE7E    52              push    edx
0040FE7F    8D8424 C4000000 lea     eax, dword ptr [esp+0xC4]
0040FE86    50              push    eax
0040FE87    E8 3414FFFF     call    004012C0
0040FE8C    83C4 0C         add     esp, 0xC

syrq.dll即我所说的Part A
开始定位syrq.并准备读取数据。
发现新亮点:
0040FEB8    C68424 5C010000>mov     byte ptr [esp+0x15C], 0x7
0040FEC0    FF15 70254E00   call    dword ptr [<&MFC71.#578>]        ; MFC71.#578
0040FEC6    68 949F4E00     push    004E9F94                         ; \netapis32.dll
下面看看它的位置:
0040FEEC    FF15 64254E00   call    dword ptr [<&MFC71.#876>]        ; MFC71.#3397
0040FEF2    50              push    eax
eax=003A6D78, (ASCII "C:\WINDOWS\system32\netapis32.dll")

很好,这个就是我们所说的PartB

那这个算法到底是如何计算的呢?
由于我的电脑不知道为什么无法继续调试,所以我们直接分析数据。
用记事本打开C:\WINDOWS\syrq.dll
格式应该是这样的:
abcdefg

ab代表年份的后两位,比如今年是2010,则为10
cd代表月份,比如现在是3月份,则为03
ef代表日期,比如29
g代表什么呢?呵呵,是试用次数!
这样我们就猜解了部分代码。
“反正我这过期了,把g改0继续试用咯!
啊?怎么还提示过期了?!”

没错。这就是PartB的作用!
用记事本打开C:\WINDOWS\system32\netapis32.dll
里面是一段特定的字符串,没什么意思。
但这个是怎么定义我们使用时间的呢?
让我们来测试下。
将syrq.dll内容修改为:
0801011
保存后打开网际速递,点拨号。提示过期
然后看netapis32.dll的信息,貌似内容没变,右键属性
却发现修改时间之类的变更了!
原来netapis32.dll修改时间等就是比如日期b!
如果该时间与syrq时间不一致则用netapis32.dll的时间。

好,我们来总结如何破解:
1.删除netapis32.dll
2.填充syrq.dll,保证7位数,最后一位小于4

这样我们就解决了永不过期~
通过类比我们也就可以破解其他的软件了。

免费评分

参与人数 1威望 +1 收起 理由
zzage + 1 感谢您的分析,[吾爱破解]有你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| ps520 发表于 2010-3-30 10:22
这个算法玩玩就是了,别过火了。
毕竟要支持国产软件嘛
温柔 发表于 2010-3-30 10:41
 楼主| ps520 发表于 2010-3-30 10:42
PS牛你太厉害了,路过支持下
温柔 发表于 2010-3-30 10:41



    调戏一下而已

另外论坛有mm么~~~
温柔 发表于 2010-3-30 10:50
回复 4# ps520


    当然有啊,比如芊芊妹子。。。
zzage 发表于 2010-3-30 11:01
调戏一下而已

另外论坛有mm么~~~
ps520 发表于 2010-3-30 10:42



    有MM也被抢光了,咋可能轮到你呢~狼多肉少....
uzcool 发表于 2010-3-30 11:14
猥琐的luck
hack_vip 发表于 2010-3-30 12:05
高手,不错!
 楼主| ps520 发表于 2010-3-30 12:34
不要迷恋哥、哥只是个传说
riusksk 发表于 2010-3-30 12:41
有MM也被抢光了,咋可能轮到你呢~狼多肉少....
zzage 发表于 2010-3-30 11:01



    名花虽有主,哥来松松土!
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-15 12:42

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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