重庆车牌选号查询辅助软件(NET软件脱壳注册逻辑分析)
本帖最后由 Dean 于 2014-10-16 10:22 编辑建议大家看这个帖子之前先看Leo的NET基础教学https://www.52hb.com/thread-84-1-2.html 他还特地录了视频
这个软件是悬赏区的https://www.52hb.com/thread-1047-1-1.html
所以我只给出分析流程,不会给出修改方案,大家想学习的自己尝试修改一下,如果修改不了或者有问题,再跟帖吧
------------------------------------------------------------------------------------------------------------------------
上来先查壳
提示是Delphi,那么丢进OD,发现跑起来怪怪的,那就按E看一下模块,或者点击OD上方的字母E
我框出来的都是NET程序依赖的DLL,那么怀疑这个可能是NET程序,加了伪装壳
尝试NET脱壳工具,NET UNPACK(下载见帖子结尾处),界面如下
就2个按钮,一个刷新进程,一个脱壳
脱壳后,执行一下没问题,好,开始分析,用.NET Reflector打开
搜索一下关键字注册,右上角要选第三个是搜索字符串,结果里点开进去看看
这里可以看到注册逻辑,是保存到config.xml
好,那我们继续搜索config.xml
点开搜索结果,看到开始三行代码,把机编号,注册码和序列码进行了赋值
那么后面肯定会用到,看到我框出的红色部分,Equals是一个比较,比较前后是否相等
getMd5keys(机编号).Equals(注册码)
也就是用getMd5keys处理机编号后和注册码比较是否相等,相等就提示注册成功,并写入config.xml
如果到这里没有其他的判断,那么这个程序就可以写注册机,方法和代码都齐全了,但是现在作者还有那么简单的么
继续进行分析,因为序列码还没有用到,继续看
看到processorid没有,这个是读取CPU ID,或者说CPU序列号,每台电脑都是不同的
这个软件绑定的硬件就是CPU ID,然后把这个取出的值进行处理一下,变成机编码
看到这里,伤心了,因为作者把处理后的信息发POST请求,然后网络返回串,其中包括到期时间
注册机是基本没戏了,此处逻辑必须修改,让
this.btnActive.Visible = false;
this.lblenddate.Text = "有效期至:" + strArray;
this.lblenddate.Visible = true;
第一句和第三句必须实现,才能正常使用,前面有多个跳转需要修改或者删除
如何修改和删除,LEO的教程中有,用Reflexil插件,也提供了IL代码查询工具,大家自己尝试修改一下吧,分析就到这里了修改如果有必要的话再单独开一贴详细说一下,最好是大家自己动手尝试,因为NET的修改方案和方法非常多,如果开始的时候
是别人告诉你的方法,你可能就会一直用这个方法,思维就受限了,本来有很多大胆的尝试也就不去做了,搞到最后可能一个
软件你要修改几十处跳转,如果开始的时候想到修改初始化赋值等就会轻松很多。
------------------------------------------------------------------------------------------------------------------------
最后补充一段作者的getMd5keys方法
private string getMd5keys(string _value)
{
_value = "123qwe" + _value;
byte[] bytes = Encoding.UTF8.GetBytes(_value);
byte[] buffer2 = new MD5CryptoServiceProvider().ComputeHash(bytes);
string str2 = "";
for (int i = 0; i < buffer2.Length; i++)
{
str2 = str2 + buffer2.ToString("x");
}
return str2;
}
主要就是使用MD5CryptoServiceProvider 类 (.NET Framework 2.0)
使用加密服务提供程序 (CSP) 提供的实现,计算输入数据的 MD5 哈希值。
支持楼主分享教程,论坛发展从你我做起
{:6_209:}看完,回头继续学习基础知识去
感谢楼主分享{:5_117:}
网络青年 发表于 2014-10-16 10:50
这个什么意思楼主
报错了,一般有壳或者有错误就会报错,脱壳去混淆没问题的话一般不会报错的
网络青年 发表于 2014-10-16 11:27
软件是练手软件没壳没混淆,一搜索就出错
这就很奇怪了。。。。。。。。你传个附件看看
感谢楼主原创发布~~ 学习了!