Cocos资源加密方案解析

据数据显示,Cocos引擎全球游戏市场的占有率约为20%,在国内手游占有率约为40%,而在小游戏赛道,这一数据则高达64%。因其内置的H5引擎、免费开源、轻量化等优势,得到众多小游戏开发者青睐。

Cocos引擎的优势在2D画面渲染方面表现突出,更契合中小型游戏的需求。但Cocos引擎同样绕不开安全问题,由于其开源的特性,针对Cocos引擎的破解更为猖獗。

Cocos引擎的主要资源、代码文件位于包体中 assets/ 目录下。我们以 JavaScript 脚本为例,资源储存在 .JSC 文件中。由于文件无法直接打开进行编译,破解者会在引擎启动工程中找到 libcocos2djs.so 文件,这里储存着秘钥。

libcocos2djs.so文件储存着Cocos秘钥

破解者会尝试将 .SO 文件放入 IDA 等工具中进行反汇编,通过搜索 applicationDidFinishLaunching (入口函数)找到秘钥,再将秘钥进行编译即可得到资源、代码文件。

使用IDA工具查找Cocos引擎秘钥

此外,Cocos引擎中还有另一种脚本语言 Lua 。由于 Lua 虚拟机可以直接解释执行 Lua 源代码,会导致许多游戏开发者直接将 Lua 源代码打进 apk / ipa 中。

这种操作相当于直接泄漏了游戏源代码,极有可能被拿去做换皮二次开发,据Cocos官方统计,未加密的游戏资源在发布后30天内被盗用率高达68% 。

据观察,部分厂商会采用LuaJIT、自定义Lua等手段做加密,但这些操作在面对专业的反编译器及破解者的攻势下,还是难逃被破解的命运。

反编译器luadec

资源文件作为游戏的重要资产,储存着美术资源、代码、音视频等重要内容,一旦泄露会造成竞品抄袭、知识产权受损、游戏内容剧透、篡改游戏资源制售外挂等一系列严重问题。

如何有效对Cocos引擎做资源加密,提高破解门槛,成了游戏厂商的必修课。针对上述问题,FairGuard制定了一套针对Cocos引擎的加密保护方案:

◆ 资源加密

FairGuard加密方案进行了特殊构造,只对核心关键位置做加密处理,对游戏加载速度、运行流程程度的几乎没有影响,实现了无感知。

◆ 引擎模块加固

使用业界独创的无导入函数SO加壳对游戏引擎模块进行加固,保护游戏代码不被分析,防止破解者的进一步操作。

FairGuard加固后IDA导出表中无SO函数

◆ JS脚本加密

使用高强度算法对JS脚本进行加密,并防止通过HOOK破解脚本。

◆ C++代码加密

对C编译后的动态库进行加固,防止被反编译。

◆ lua脚本加密

采用深度加密的方式,确保 Lua 脚本无法被直接解密,支持ulua/tolua/slua/xlua等不同 Lua 的脚本加密,同时对 Lua 解析模块进行加固。

除了各类加密保护,FairGuard加固方案还提供行为检测手段及反修改器、反调试、反注入、反变速等功能,可与引擎加固联动,真正做到有效保护游戏安全。

相关推荐
聊点儿技术43 分钟前
【游戏风控】如何用IP数据接口从“IP即判罚”升级为“IP参与评分”
tcp/ip·游戏·游戏安全·ip数据库·ip地理定位api·ip数据接口·ip风险画像
优泽云安全2 小时前
如何选择IRCS云信息安全管理系统 IRCS云资源评测
linux·服务器·安全·安全架构
zs宝来了2 小时前
Istio mTLS 与零信任网络:Sidecar 证书管理
安全·devsecops·云安全
豆包公子2 小时前
程序流监控:AUTOSAR CP 功能安全在裸机 MCU 上的实现(理论篇)
运维·单片机·嵌入式硬件·安全·车载系统·autosar
小天互连即时通讯3 小时前
政府及企业场景下如何选即时通讯工具:从安全可控到协同效率的实用判断
安全
m0_738120723 小时前
渗透测试基础ctfshow——Web应用安全与防护(五)
前端·网络·数据库·windows·python·sql·安全
其实防守也摸鱼4 小时前
XSS漏洞全景解析:从原理、实战利用到纵深防御
前端·网络·安全·xss·xss漏洞
你觉得脆皮鸡好吃吗5 小时前
Check Anti-CSRF Token (AI)
前端·网络·网络协议·安全·csrf·网络安全学习
威迪斯特5 小时前
项目解决方案:某连锁餐饮集团AI后厨与运营安全建设解决方案
人工智能·安全·项目解决方案·ai实时分析·智能餐饮管理·ai视频识别·智能视频分析硬件
TMT星球6 小时前
阿里云连续5年稳居游戏云市场份额第一
游戏·阿里云·云计算