Unity-Apk解包

在上海居住隔离的时候,整理了下为知笔记。发现了这篇于2018-06-07写完的,内容或许有陈旧

之前解过自己项目的包的代码,研究assetBundle打包的时候,像把bundle解压出来看。结合看来就一个包的逆向。

步骤

改名解压
  • 将”.apk”结尾的android包,改为”.rar”。可以等到以下几个文件
文件名称 介绍
asseys Unity游戏里面的资源和代码
lib arm和x86需要的so文件
META-INF 信息包
res 存放icon等资源
AndroidManifest.xml 清单文件
classes.dex Android Dalvik字节码
resources.arsc 编译后的二进制资源文件

关注的是assets目录,里面有资源和代码

提取代码

使用的工具是dll的反编译工具,可以使用<.NET Reflector>或者,打开..\apk\assets\bin\Data\Managed\Assembly-CSharp.dll。
在IL Spy中看到Aseembly-CSharp.dll里有2个基类。看到右侧,代码是不是很熟悉。

通过ILSpy的保存,可以得到看到两个继承MonoBehavior的CS。到这里完成了,代码的提取。可见代码加密的重要性了。

提取资源

需要使用到工具是UnityStudio

这UnityStudio里看到Texture2d的贴图以及大小,shader的代码和大小。如果有音效资源也是可以听的

附参考

http://zenhax.com/viewtopic.php?t=12

Unity3D研究院之提取游戏资源的三个工具支持Unity5(八十四)

Unity3D研究院之mac上从.ipa中提取unity3D游戏资源(六十六)

文章目录
  1. 1. 步骤
    1. 1.0.1. 改名解压
    2. 1.0.2. 提取代码
    3. 1.0.3. 提取资源
  • 2. 附参考
  • |