如何对il2cpp进行加固保护?.docx
《如何对il2cpp进行加固保护?.docx》由会员分享,可在线阅读,更多相关《如何对il2cpp进行加固保护?.docx(4页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、如何对il2cpp进行加固保护?Unity3D是一款非常知名的游戏引擎许多知名游戏就是基于该引擎进展开发的。它最大的一个特点是一次制作多平台部署而这一核心功能是靠Mono实现的。可以讲Mono是Unity3D核心的核心是Unity3D跨平台的根本。但是在2021年度发布Unity5的时候Unity3D官方推出了il2cpp。根据Unity官方给出的解释推出il2cpp的原因主要是以下几点1.C#的运行效率还是远落后于C/C2.mono版本受权受限无法使用.NET的许多新特性3.monoVM在各平台的移植以及维护都非常耗时4.更稳定可靠的垃圾回收机制那么在游戏代码的平安性上mono以及il2cp
2、p两种形式会有哪些区别呢使用mono编译后的游戏会将C#脚本代码编译成IL中间语言后打包到客户端中。以android端为例相关脚本代码会放在apk里assetsbinDataManaged目录下的Assembly-CSharp.dll中。使用il2cpp编译后的游戏会将C#脚本代码编译成native代码最后是在lib目录下对应架构的libil2cpp.so文件里。可能有些开发者会觉得代码放在so里面反汇编分析起来也很累人那么游戏的平安性应该可以大大增强了吧但是il2cpp编译后会生成一个global-metadata.dat的文件这个文件包含了大量的符号信息有了这些符号信息可以大幅降低逆向本钱
3、。更有热心开发者开发了一个名为Il2CppDumper的工具(s:/github/Perfare/Il2CppDumper)可以直接将il2cpp.so复原为dll文件并且还可以自动生成il2cpp.so对应的ida.py脚本进一步方便攻击者进展分析以及修改。下面我们演示下该工具的使用经过以及最终效果。首先按照工具的使用讲明以及提示运行该工具下列图是运行结果。从上图可知工具已经成功生成了对应的dll文件我们使用dnspy对dll文件进展解析得到的结果如下列图所示。从上图可以看到该游戏所有的函数名都可以完好的解析出来攻击者可以根据函数的名称判断该函数的功能然后通过IDA以及IL2CppDumpe
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 如何 il2cpp 进行 加固 保护
限制150内