[【通过】] 【已转正】.Net破解之战神关键词工具

[复制链接]
sco4x0 发表于 2016-7-22 15:55:45 | 显示全部楼层 |阅读模式

正式成员|主题 |帖子 |积分 130

该案例仅供研究学习,不提供破解后软件下载,请在24小时之内删除相关软件、忘记相关内容。。

先来介绍个工具,dnSpy,下载地址:http://down.52pojie.cn/Tools/NET/dnSpy%20v2.0.2.0.zip

集分析,反编译和调试于一身,像是是ILSpy with Debugger,Reflector+Reflexil的合体,而且感觉比ILSpy和Reflector更强大,操作和UI都和VS类似

首先PEid查下

1.jpg

那么直接放到dnSpy中看一下

2.jpg

发现是加了混淆,用DotNet Id查一下是什么

3.jpg

直接用de4dot来脱一下看看

4.jpg

其实这里是DotNet Id查的有问题,很明显的看到其实这个是Reactor 4.2,再用dnSpy载入发现正常了,虽然里面还有一些伪代码,但是不影响阅读了
先来看看这个程序的流程,打开后是一个登陆界面,根据提示,可以找到这个窗口对应`login1`,登陆按钮点击事件是`Button2_Click`,免费试用按钮点击事件是`Button1_Click`

5.jpg

直接点击免费试用进入`MainForm`,发现最上面是一个`MenuStrip`,看到里面的一些信息

6.jpg

最显眼的无非就是`到期日期:免费版`,那么在`MainForm`中搜索一下`免费版`这个关键字

在`MainForm_Load`中,可以看到这么一些代码

7.jpg

8.jpg

似乎仅仅是和`lblver.Text`做了比较处理?找了找控件发现`lblver`其实是`ToolStripMenuItem`,而且还做了属性封装,取值返回的直接就是一个控件,一开始想的修改返回值基本上失败了

回过头来看看,点击免费试用之后的处理

9.jpg

`method_21()`这个方法是得到一个`MainForm`的实例,将其中的`lblver`强制命名为免费版,那么将这里更改成专业版之后看一下

10.jpg

功能比对,可以发现这里很多限制都已经去掉了,但是可以发现在一些地方仍然是免费版,比如

11.jpg

不过这问题不大,仅仅是显示而已,可以看到功能还是专业版的功能,但是其他一些地方就是这样

12.jpg

13.jpg
这里感觉很奇怪,明明都在MainForm中,为什么验证方法会不一样呢,于是再搜索一下这些地方的验证过程是什么样的

找到两处明显不同的验证代码如下:

[C#] 纯文本查看 复制代码
if (Class6.bool_10)
                {
                        goto IL_235;
                }
                IL_1E0:
                num2 = 35;
                Interaction.MsgBox("免费版不支持此功能!\r\n请升级正式版!", MsgBoxStyle.Information, "提示");
                IL_1F5:
                num2 = 36;
                int arg_22A_0 = this.Handle.ToInt32();
                string text = "Open";
                string text2 = "http://www.zhanshensoft.com/price.html";
                string text3 = "";
                string text4 = "";
                MainForm.ShellExecuteA(arg_22A_0, ref text, ref text2, ref text3, ref text4, 1);
                IL_230:
                goto IL_E55;
                IL_235:
                num2 = 39;


[C#] 纯文本查看 复制代码
if (!Class6.bool_8)
                {
                        Interaction.MsgBox("免费版不支持数据自动保存和导出,且最多挖掘1000个关键词!\r\n请升级正式版!", MsgBoxStyle.Information, "提示");
                        int arg_7B_0 = this.Handle.ToInt32();
                        string text = "Open";
                        string text2 = "http://www.zhanshensoft.com/price.html";
                        string text3 = "";
                        string text4 = "";
                        MainForm.ShellExecuteA(arg_7B_0, ref text, ref text2, ref text3, ref text4, 1);
                }
                else
                {
                        Class2.Class3_0.method_2().txtNum.Text = "33";
                        Class2.Class3_0.method_2().ShowDialog();
                }


可以看到判断了`Class6.bool_8`和`Class6.bool_10`的值,而这两个值是一个bool型的静态字段,找了整个程序也没见到在哪儿有赋值,那么就自己动手来赋值好了,因为`Class6`是个类,那么在它的构造方法中将`bool_8`,`bool_10`赋值为`true`,上面那两种判断就可以避开了,来到`Class6`的构造方法,右键点击`编辑IL指令`

添加这几句指令

14.jpg

解释下这两条指令

`ldc.i4.1`(将整数值1作为Int32推送到计算机堆栈上)

`stsfld`(用来自计算堆栈的值替换静态字段的值)指令

替换完成后看现在`Class6`的构造方法

15.jpg

再来测试一下功能是否正确

修改后的破解专业版点击导出按钮

16.jpg

未修改的破解专业版点击导出按钮

17.jpg
==============================
超过10位正式成员同意,转正成功。
                      管理05


单选投票, 共有 20 人参与投票

投票已经结束

100.00% (20)
0.00% (0)
您所在的用户组没有投票权限

评分

参与人数 2酒票 +8 收起 理由
哆啦A梦 + 3 精品文章
管理05 + 5 欢迎加入90!

查看全部评分

习大大 发表于 2016-7-22 16:10:18 | 显示全部楼层

九零元老|主题 |帖子 |积分 176

ILSpy也不错哦...最近也在研究.net逆向...
火凤凰 发表于 2016-7-22 16:38:13 | 显示全部楼层

待审核成员|主题 |帖子 |积分 0

http://www.52pojie.cn/thread-502311-1-1.html     这个怎么解释。。。
 楼主 sco4x0 发表于 2016-7-22 16:41:18 | 显示全部楼层

正式成员|主题 |帖子 |积分 130

火凤凰 发表于 2016-7-22 16:38
http://www.52pojie.cn/thread-502311-1-1.html     这个怎么解释。。。

这本来就是我的帖子啊,不是说3个月之内在别的平台发表的都行么
乐清小俊杰 发表于 2016-7-22 16:42:13 | 显示全部楼层

90Sec Team|主题 |帖子 |积分 287

虽然看不太懂  但是肯定是4师傅  
顶一个

 楼主 sco4x0 发表于 2016-7-22 16:45:17 | 显示全部楼层

正式成员|主题 |帖子 |积分 130

乐清小俊杰 发表于 2016-7-22 16:42
虽然看不太懂  但是肯定是4师傅  
顶一个

俊杰师傅么么哒
 楼主 sco4x0 发表于 2016-7-22 16:45:41 | 显示全部楼层

正式成员|主题 |帖子 |积分 130

小哲 发表于 2016-7-22 16:10
ILSpy也不错哦...最近也在研究.net逆向...

单纯地跟代码 ILSpy确实是个好选择呀 2333
lynahex 发表于 2016-7-22 16:52:43 | 显示全部楼层

正式成员|主题 |帖子 |积分 46

原来在你博客看过,师傅棒棒哒。
 楼主 sco4x0 发表于 2016-7-22 16:55:30 | 显示全部楼层

正式成员|主题 |帖子 |积分 130

lynahex 发表于 2016-7-22 16:52
原来在你博客看过,师傅棒棒哒。

谢谢师傅支持
Flygend 发表于 2016-7-22 19:20:51 | 显示全部楼层

正式成员|主题 |帖子 |积分 180

乐清小俊杰 发表于 2016-7-22 16:42
虽然看不太懂  但是肯定是4师傅  
顶一个

表哥
0x0day 发表于 2016-7-26 09:40:37 | 显示全部楼层

正式成员|主题 |帖子 |积分 186

怎么不把软件发出来
莫须有 发表于 2016-7-28 16:35:54 | 显示全部楼层

正式成员|主题 |帖子 |积分 199

最近在看破解,学习下
快速回复 返回顶部 返回列表