您的位置:首页 > 其它

.net收费程序简单破解

2017-04-04 00:00 274 查看
清明三天假期确实比较忙的,终于在大半夜腾出点时间来研究下软件逆向方面的工作,以下仅仅是本人对于某.net程序的技术验证,不会将破解文件放出来。

首先打开该软件会出现注册码验证弹窗



然后使用反编译工具进行破解我使用dnspy反编译的,IDE仅仅是个人喜好



打开改程序的 .EXE程序后可以看到软件的基本信息接着进入mian入口



进入main入口后看到一个死循环 即使进入其他方法也是一样程序执行开始便是死循环参数全是乱码

这是因为程序加了防破解的壳 只能先脱壳



我使用detect 工具进行查看加壳的程序

查看后显示



采用.Net程序进行加壳验证 网上随便找个脱.net壳程序即可脱壳

我采用了De4dot脱壳命令工具进行脱壳


脱壳成功后会在要破解的程序目录下生成一个执行程序



重新加载脱壳后的程序可以看到已经没有死循环代码了



进入主界面方法看到重点调用了两个验证方法一个是程序初始化验证另一个是程序执行验证



进入程序执行验证method_8)



可以看到多出判断程序 将他们全部暴力删除



将授权验证改为静态变量(XF是本人对产品的怨念)

删除多个验证后的代码



将程序重新编译进行测试



可以看到已经成功跳过注册码直接进入程序主界面并且为已注册底部授权为XF

以某拉丁网站为例进行测试发现还是没有完全破解只能继续追程序底层



通过程序main方法找到并进入程序初始化方法



找到“立即下载”这个按钮



发现它绑定了个click事件并调用另一个方法 进入这个方法



果然发现了二次验证代码 老规矩删除它 再次编译运行



已经可以成功运行 但是程序执行完成后没有发现任何文件 返回代码继续读代码



发现在执行下载操作时候 又开启了一个线程进入这个线程调用的方法



该方法并没有什么卵用 但是它又调用了另一个方法 真是套路深 只能继续追进入method_10方法



前面几百行代码都没有什么问题 但是在任务完成上面有个删除得到的资源的方法进入查看



此处回验证当前emial是否有效 无效就删除所有资源 果断将所有判断删除

然后编译测试



成功

至此成功破解一款收费软件

然后随便使用一款加壳软件进行封装加壳

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息