unity游戏拿到il2cpp数据的几种方法
最近地下城与勇士手游出了,抱着期待的心情和怀旧的情怀想玩一下,结果开发准备了这么久,以为会很好玩,结果是憋了一泡大的,游戏难玩也就算了,游戏安全竟然也很拉,相当于裸奔,以至于刚出了一天就外挂漫天飞,今天我就说说拿到il2cpp数据的几种方法。这和吐槽Df手游没有任何关系,千万别去尝试。
方法1
第一种方法是众所周知的开源作者Perfare的Il2CppDumpe项目, Il2CppDumper支持Unity 5.3 - 2022.2 ,生成IDA和Ghidra的脚本,帮助IDA和Ghidra更好的分析il2cpp文件,在不加密的情况下能快速dump出global-metadata.dat和il2cpp相应的数据。 适用范围是global-metadata.dat无加密的游戏
方法2
第二种方法还是开源作者Perfare的Il2CppDumpe项目, Zygisk-Il2CppDumper动态注入执行时机是文件在内存中解密后的时机能够绕过几乎所有保护,无论是游戏加固还是global-metadata.dat加密都可以动态的dump下数据,需要root手机和环境我这里用的是ksu+Zygisk-next 。适用范围是几乎所有的global-metadata.dat加密的游戏或者加固的游戏
方法3
第三种方法还是开源项目vfsfitvnm的frida-il2cpp-bridge项目, frida-il2cpp-bridge这是一个Frida 模块用于在运行时转储、跟踪或劫持任何 Il2Cpp 应用程序,而无需文件global-metadata.dat。写自己的逻辑和测试非常方便,推荐使用frida-gadget结合使用。 适用范围是几乎所有的加密的游戏或者加固的游戏
方法4
第四种方法还是开源项目feilongzaitia的frida-find-il2cpp-api项目, frida-find-il2cpp-api这是一个基于frida-il2cpp-bridge的项目,通过一些小技巧,拿到unity引擎的一些字符串特征,倒推出想拿到的方法将参数与frida-il2cpp-bridge项目结合生成cs文件。 适用范围是几乎所有的加密的游戏或者加固的游戏
注意,本文中提到的项目均是为了进行游戏加强保护,直至完全防止以上操作,禁止违法破解游戏制作外挂!
一些思考
上面介绍了一些拿到游戏逻辑的开源项目,游戏外挂越来越多,包括但不限于内核注入,驱动,模块色差绘制,随着人工智能的发展,更多更难的检测都还没漏出来,如何防止我们的游戏被破解呢?欢迎大家留言讨论。
原文始发于微信公众号(移动安全星球):unity游戏拿到il2cpp数据的几种方法
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论