Virbox Protector Unity3D 支持 il2cpp 加密

Virbox Protector 本次发版(2.3.1.14280)全面支持 Unity3D 加密,支持了 PC 程序 iL2CPP 编译方式的加密保护。

功能

  • 保护 C# 程序集(Assembly-CSharp.dll),防止C#代码被反编译,防止 de4dot 等工具还原代码。
  • 加密 global-meta-data.dat 文件,并通过多种保护技术防止 il2cppDumper 等工具 Dump .NET 元数据信息。
  • 加密 AssetBundle 资源,防止 Asset Studio 等工具反编译。
  • 通过平台相关技术,防止程序被动态调试。

应用场景

程序被反编译

Unity 程序集 DLL 实际为标准的 .NET 文件格式,可以直接反编译为 C# 代码,暴露代码逻辑,很容易滋生外挂。

资源被提取或篡改

Unity 程序 Asset Bundle 资源可以被提取重打包,修改场景,破坏程序正常功能。

程序集被篡改

程序集被反编译后,根据类名和方法名,可以很容易的定位并修改逻辑。

il2cpp 代码被篡改

il2cpp 虽然被编编译为 Native 模块,但可以通过 global-meta-data 文件轻松定位与 C# 代码关联的 Native 代码,也容易被篡改。

核心技术

程序集保护

对程序集中所有方法的 IL 代码加密,通过修改 Mono 引擎,运行时在 JIT 编译过程中解密,每次仅有一个方法被解密,并解密到随机的内存地址,保证加密后的程序无法被 Dump 出整个程序集。

资源加密

加密 Unity Asset Bundle 资源,在 unity 引擎中解密,防止 Asset Bundle 资源被反编译打包,支持资源热更新。

global-meta-data 加密

加密 il2cpp 的 global-meta-data 文件,并对内部结构进行混淆处理,防止运行时在内存中直接解析。

il2cpp 保护

对 il2cpp.so 或 GameAssembly.dll 处理,去除导出函数,并对内存进行完整性校验,防止篡改。

反调试

通过平台相关API、数据结构和寄存器,检测调试器,防止动态调试。

所有文章
×

还剩一步!

确认邮件已发至你的邮箱。 请点击邮件中的确认链接,完成订阅。

好的