收起左侧

针对飞牛系统的防逆向建议

2
回复
48
查看
[ 复制链接 ]

21

主题

59

回帖

0

牛值

fnOS系统内测组

飞牛百度网盘玩家fnOS1.0上线纪念勋章

1. 逻辑层防逆向

  1. 文件命名混淆: 字面意思,系统文件命名加密成哈希,开发的时候解密就行,上线环境处于加密环境(开发的文件一定要保证是属于正常加载情况的)
  2. 文件存储结构混淆:把不同的文件防不同的文件夹,混着放,学微软的只给几个基础的文件留在外面,防加密逆向查看(毕竟又不是卖游戏,无效代码逻辑家里过耦合太蠢了,拖慢速度)
  3. 动态文件加载:将核心逻辑分散到多个模块中,只有在应用的时候在去加载文件,这样可以防止动态破解,并且可以将除基础文件外的所有数据文件都编写成二进制文件,从文件层防破解(基本依靠壳加密)

2. 代码层防逆向

  1. 破解检测代码,被调试的时候检测到,比如比如IsDebuggerPresent();/CheckRemoteDebuggerPresent();:.
    bool isdebug = IsDebuggerPresent();//IsDebuggerPresent();被调试检测
    	if (isdebug)
    	{
    		MessageBoxA(0, "检测到被破解", 0, 0);
    	}
    
    bool is =false;
    	CheckRemoteDebuggerPresent(GetCurrentProcess(), &is);//参数进程指针
    	if (is==1)
    	{
    		MessageBoxA(0, "检测到被破解", 0, 0);
    	}
    
    
  2. 加载无明文:程序非资源加载区域
  3. 保护模块:某些核心模块进行多层混淆,上强加密,但为了性能,在实时运行的代码交互区请不要上模块保护,会导致极吃内存的

ps

加油,我想进共建团

收藏
送赞
分享

6

主题

1万

回帖

0

牛值

管理员

社区上线纪念勋章社区共建团荣誉勋章飞牛百度网盘玩家fnOS1.0上线纪念勋章

感谢建议,我们已转给相关同事评估,合适的建议会纳入后续计划。

共建团可以点这里

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则