新手到大神反编译unity3d游戏系列教程【一】
大家好,我是SkyNote,受邀加入西部世界,既然加入了就来大家来点新鲜的素材。最近在研究unity3d游戏逆向的东东,今天就来介绍下Unity3d逆向的事情吧。1.识别unity3d游戏
如何鉴别是否是unity3d开发的呢?很简单,第一:看介绍,介绍里面3D标签,如果介绍里面出现unity引擎。那就肯定是unity3d开发的了,如下图。
当然,还有一种很笨但是很有效的办法。就是把你认为是3d画面的游戏都下载一遍,解压apk文件,找到assets\bin\Data\Managed,如果看到以下类似的Dll文件,恭喜你,这个是unity3d开发的。
2.反编译
反编译分3部分。
①.反编译java代码。个人喜欢用apkide改之理,下载地址
这个软件的介绍在52破解里面很详细,这里就不啰嗦了。打开APKIDE改之理,首次使用可能需要提示选择jdk位置。没有安装的话,下载一个就好。下载好了设置下。如果不知道在哪里设置了。可以apkid改之理的 ->工具->配置与选项(s)即可弹出如下界面。
设置好了就可以用了。选择APK文件就会出现如下界面。
单击java图标打开java源码,就能看到反编译的java代码了。加密加固等除外,这块还在研究。
②.反编译unity3d中Dll代码。(没有混淆或其他处理就简单)
先来讲解下没有加密的。反编译dll常用的工具有3种。Lispy,.NET Reflector和dotpeek,个人比较喜欢dotpeek。dotpeek是免费的,官网就能下载
把assets\bin\Data\Managed下的dll拖进dotpeek即可。直接选哪个vs图标就能还原项目了。在vs界面查找关键字比较方便,如正在加载等。当然还原的项目肯定会有不少的报错,接下来咋办呢,找到报错的那段代码,用其他两个反编译工具打开刚才这个dll,找到对应位置,看下是否一样,不一样,覆盖vs中的部分代码。一般情况就不报错了。
③.反编译unity3d资源。(不推荐,可以直接抓资源就不用这个)
这个先不讲了,下回讲吧,貌似讲的有点多。先贴一个大图吧。记得关注下西部世界哦。
转载请注明出处:发布于【西部世界 】新手到大神反编译unity3d游戏系列教程【一】 感谢游戏资深作者SkyNote实力奉献。 非常感谢,找了很久类似教程,已关注。希望下一期会讲解反编译.assets资源包。 如果用了IL2CPP,还能反编译吗? 那如何防止反编译?加外壳有用吗? 没干货啊 能,难度稍微大一点而已!针对逆向新手或者一般人就很难,针对逆向大神没什么用。 个人认为核心位置加密混淆即可,比如网络数据包发送接受。建议用比较新版的unity的ab包打包资源,新版的打包资源比较不好解开资源! 应该先从smail或者arm汇编开始讲吧 怎么抓模型啊()
页:
[1]
2