游戏安全实验室 首页 活动 查看内容

【资讯】游戏开发者福音:腾讯游戏安全与Unity合作打造安全方案,游戏一键加密! ... ...

发布于:2019-5-15 14:55   |    104466次阅读 作者: 管理员    |   原作者: TP


512在上海举办的Unite Shanghai 2019全球开发者大会上全球领先的游戏引擎巨头Unity和腾讯游戏安全宣布合作双方正联手打造一款简单易用的游戏加密安全方案——UPS,全称Unity Protect Solution,Unity保护解决方案它是一款跨平台的游戏保护方案能够根据游戏的不同编译方式提供不同的保护方案不仅如此,UPS被集成到了Unity开发环境中开发者只需要在UnityEditor中勾选保护选项就可以在构建时加密游戏真正做到了一键加密该方案旨在为游戏开发者提供更加专业和更高防护等级并且简单易用的游戏安全保护手段为游戏保驾护航


腾讯游戏安全作为腾讯游戏公共研发运营体系中专注于游戏安全的团队2006年开始就投身于外挂对抗和保护游戏的最前线有着十余年的安全技术对抗和运营经验多年来保障了像LOL、CF、DNF、王者荣耀刺激战场等千万活跃量级端手游的安全运营


腾讯游戏安全客户端保护负责人陈小虎在Unity大会上的分享

 

Unity引擎是全球知名游戏、VR/AR开发平台为全球超过990万的注册开发者提供服务和解决方案:Unity Asset Store资源商店、Unity Analytics分析、Unity Ads广告服务、Unity Connect

 

 1:Unity游戏的安全风险

 

对广大的Unity游戏开发者而言游戏安全是一个尤其需要被关注的问题使用Unity-Mono模式编译的游戏会将C#脚本代码编译为IL中间码发布到游戏客户端这种中间码容易被反编译出源代码被一些不法分子破解从而导致外挂或者盗版游戏的出现

 

而对于Unity-IL2CPP编译的游戏而言使用IL2CPPDumper等符号解析工具可以解析出游戏包中的global-metadata.dat包含的符号信息包括类名方法名以及方法对应的偏移这些信息容易被攻击者利用

 2:global-metadata.dat保护的符号信息

 

在此背景下,Unity和腾讯游戏安全的合作无疑是广大Unity游戏开发者的福音通过UPS,开发者将能够更加便捷和低成本地打造出色的游戏极大地提升游戏的安全防护等级

 

Unity-Mono游戏目前市面上主流的保护方案是对脚本文件进行加密在游戏加载时进行解密这种加密方式的破解门槛较低。UPS在当前方案的基础上增加了方法加密实现了运行时动态解密即使攻击者在内存中获取到脚本文件也无法反编译

l 方法加密

使用方法加密后ilSpy无法反编译

 

由于脚本文件将所有的字符串以明文形式保存在一个明确的结构中攻击者能够通过这些字符串轻易获取代码中的敏感信息基于此,UPS采用字符串加密使得反编译出的类名方法名为乱码进一步提高了代码破解难度

 

l 字符串加密

使用字符串加密后反编译软件解析出的名称乱码

 

除此之外,UPS还使用了指令加密加密之后的指令不再是Mono引擎能够识别的标准opcode,如果没有执行解密过程,Mono引擎将不能正确的解释和执行这些指令

l 指令加密

以下图为例

使反编译软件失效

 

可以看到每次加密后的指令表都是随机的并且反编译出来的代码也是错误的能够使市面上所有主流反编译器失效

 

而对Unity-IL2CPP游戏通过对global-metadata.dat文件进行文件加密和字符串加密可以让通用工具无法解析这样攻击者就无法拿到游戏的敏感信息


 

此次Unity和腾讯游戏安全联合打造的保护方案无需对游戏引擎打热补丁不会在游戏代码工程文件中导入第三方资源包对游戏影响小稳定性高兼容性强且同时支持文件级方法级指令级等多级别加密保护强度高

 

UPS集成到Unity开发环境随着Unity版本发布用户只需要勾选Security Settings页面中的Enable Security Build复选框即可在构建游戏时加密无需重新签名并且同时支持Windows Android双平台保护方便易用

 一键部署

分享到:
踩0 赞0

收藏

上一篇:【资讯】《CS:GO》惊现严重漏洞导致游戏崩溃,V社发布紧急应急补丁 ...

下一篇:【资讯】7月1日起,小游戏也要讲“信用”

最新评论
B Color Image Link Quote Code Smilies

发表评论

top 问题反馈

返回顶部