明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 4783|回复: 18

[【不死猫】] 浅谈注册码破解和保护思路

  [复制链接]
发表于 2022-3-22 15:18 | 显示全部楼层 |阅读模式
本帖最后由 不死猫 于 2022-4-8 15:16 编辑

论坛上有一些公开的注册保护代码,不过大部分都很容易被破解,浅谈一下关于保护的方法,如有错漏请指正。

注册类代码的基本思路(单机版):
获取用户唯一标识信息→用户发申请码给开发者开发者电脑计算出注册码发给用户注册→主程序根据用户信息计算出相同注册码比对确认是否注册成功。

注册类代码破解的几种基本方法:
1. 完整反编译VLX或Fas,直接根据源码修改或删除注册限制实现破解;
2. 函数重定义,拦截参数信息;
3. 内存跟踪,在关键信息“请注册”附近下断点,抓取注册码的实际值;
4. 内存跟踪或编码解读,在关键信息“请注册”附近找到跳转语句,修改跳转地址,改(if 真 注册成功)为(if 假 注册成功),输入任意错误注册码即可;
5. (if 假 (exit)) 这类的可以直接删除、覆盖、替换(exit);
6. 分析注册码转换的代码,提取后编写注册机;
7. 模拟硬件信息(复刻优盘、虚拟机等),实现一个注册码注册多台。


针对破解方法的保护方法:总体原则是增加复杂度,假设一个注册流程破解要一百元,100个不同的注册码破解可能需要一万元。
1. 修改编码实现抗反编译(这个有一定难度,论坛我们一些先行者零散发了一些方法,但商用产品建议购买成熟的加密产品。另外Lsp源码编写就能够抗反编译不需要手工改编码的技术,待发布)

2. 利用不定参数或对函数是否被重定义进行判断。
3. 除了开始的验证位置之外,程序其他地方也加多次判断,但是不要提示,更不要程序退出。
4. 编码保护、文件自校验、更多的判断
5. 更换退出方式,比如设置开关变量,更多的判断
6. 多算法、多判断

根据上述的一些情况描述,现在做一套注册类代码的思路如下:
1. 编写一个申请注册码程序,用于获取用户的唯一标识信息。常用的包括用户的电脑硬件、优盘、加密狗、QQ号等。
但是单一的优盘、加密狗序列号可以被刷新修改,制作复刻版,形成一码多用,所以单机注册不建议使用单一硬件验证。虽然有些高级的加密狗复刻成本较高,但是对开发者来说购买成本也更高。所以为了避免破解者通过申请程序知道选用的硬件信息,因此在获取用户信息时可以获取尽量多的硬件信息(可以获取几十种),并且把获取的信息进行转换,这样破解者不知道我们要注册的硬件是哪个,也方便观察是否在虚拟机环境,拒绝注册。
2. 计算注册码时,需要采用不同的算法对多个硬件进行计算,并形成复合运算,例如生成数百个上千个注册码。
3. 用户注册后,主程序的验证部分,需要增加抗函数重定义、文件自校验、分散注册码验证(在功能中间增加几十处验证)、静默验证、非正常报错、增加非If验证、用= /=之外的函数判断、编译后增加抗反编译编码、增加编码校验、抗拆分处理等。
4. 如果非要用单一信息注册,还想针对硬件或环境模拟实现抗破解,建议采用BS(服务器架构)模式,在服务器上放置部分代码以及计算过程,这样本地代码不完整,拿到源码也必须依赖于服务器提供代码和计算服务,可以通过服务器限定同一时间仅一台电脑工作,并对时间、次数、IP、注册验证等进行全面管理。
5. 产生多注册码和分布式代码纯手写难度较大,维护成本太高,有两种解决方案,一种是通过编写自动加密软件自动添加相关代码,一种是利用代码自动生成代码,自动生成验证代码便于维护。
6. 如果没有做变量替换的程序,一些关键变量名称不要写的太明显了,统一替换掉,像 zhuce,reg,year,注册,这些变量一看就知道和注册有关系。
7. 注册验证部分写一个函数返回真假很容易破解,计算过程或变量应放到验证中。
8. 注册部分代码可用相似代码作为干扰(参与执行)








评分

参与人数 2明经币 +2 金钱 +24 收起 理由
highflybir + 1 + 24
tryhi + 1 赞一个!

查看全部评分

"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2022-3-23 20:15 | 显示全部楼层
本帖最后由 wzg356 于 2022-3-23 20:16 编辑

自己的故事

曾经写的一个工具,自认为还可以编译fas发布
主要参考baitang36 猫老师的加密经验
以下自编小工具解决不难

N多子fas串联整合
1函数1子fas,有时单1行码也1子fas
函数加壳,局部乱码
N多假函数乱插,随机插

未设单独函数的注册代码
同样结果的注册代码多套多款
注册代码多处插随机插

多处多款文件验证
关键信息不明码+局部代码验证
设自毁码

最终似乎没成功
小小的希翼变成一地鸡毛
发布没多时
就有人没问问题却贴出局部代码,文本及款式与源码一样
发表于 2022-3-24 14:25 | 显示全部楼层
学习了,还是直接用猫老师和baitang36的加密工具比较好,两位老师的加密程序已经很强了,专业的事情交给专业的人,自己写好适用于自己工作的小程序就好,在这里也感谢老师们的付出。
发表于 2022-3-24 21:40 | 显示全部楼层
wzg356 发表于 2022-3-24 17:31
用了,公开推的那种

自己先半手工处理--最后用

还以为你是付费也被PK了
公开免费的可能保不住啊
发表于 2022-3-22 15:32 | 显示全部楼层
猫老师的提供的思路很不错,值得借鉴
发表于 2022-3-22 17:49 来自手机 | 显示全部楼层
很全面了,值得学习
发表于 2022-3-22 21:39 | 显示全部楼层
谢谢猫老师总结共享
发表于 2022-3-23 07:46 | 显示全部楼层
思路不错,就是会的不多。
发表于 2022-3-23 18:40 来自手机 | 显示全部楼层
本帖最后由 流氓兔 于 2022-3-24 11:02 编辑

让他摸不着加密的出处
发表于 2022-3-23 21:22 来自手机 | 显示全部楼层
要用baitang的加密
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-6-26 22:03 , Processed in 0.174809 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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