找回密码
 立即注册
查看: 1041|回复: 18

[笔记] 新手到大神反编译unity3d游戏系列教程【一】

[复制链接]
发表于 2022-4-21 19:22 | 显示全部楼层 |阅读模式
大家好,我是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游戏系列教程【一】

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
发表于 2022-4-21 19:27 | 显示全部楼层
感谢游戏资深作者SkyNote实力奉献。
发表于 2022-4-21 19:30 | 显示全部楼层
非常感谢,找了很久类似教程,已关注。希望下一期会讲解反编译.assets资源包。
发表于 2022-4-21 19:39 | 显示全部楼层
如果用了IL2CPP,还能反编译吗?
发表于 2022-4-21 19:42 | 显示全部楼层
那如何防止反编译?加外壳有用吗?
发表于 2022-4-21 19:49 | 显示全部楼层
没干货啊
发表于 2022-4-21 19:57 | 显示全部楼层
能,难度稍微大一点而已!针对逆向新手或者一般人就很难,针对逆向大神没什么用。
发表于 2022-4-21 20:00 | 显示全部楼层
个人认为核心位置加密混淆即可,比如网络数据包发送接受。建议用比较新版的unity的ab包打包资源,新版的打包资源比较不好解开资源!
发表于 2022-4-21 20:07 | 显示全部楼层
应该先从smail或者arm汇编开始讲吧
发表于 2022-4-21 20:10 | 显示全部楼层
怎么抓模型啊()
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-21 21:14 , Processed in 0.330754 second(s), 27 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表