新手到大神反編譯unity3d遊戲系列教程【一】
大家好,我是SkyNote,受邀加入西部世界,既然加入了就來大家來點新鮮的素材。最近在研究unity3d遊戲逆向的東東,今天就來介紹下Unity3d逆向的事情吧。
1.識別unity3d遊戲
如何鑒別是否是unity3d開發的呢?很簡單,第一:看介紹,介紹裡面3D標籤,如果介紹裡面出現unity引擎。那就肯定是unity3d開發的了,如下圖。
當然,還有一種很笨但是很有效的辦法。就是把你認為是3d畫面的遊戲都下載一遍,解壓apk文件,找到assetsbinDataManaged,如果看到以下類似的Dll文件,恭喜你,這個是unity3d開發的。
2.反編譯
反編譯分3部分。
①.反編譯java代碼。個人喜歡用apkide改之理,下載地址
APKIDE改之理3.5.0少月增強版發布【20170808】 - 『逆向資源區』 - 吾愛破解 - LCG - LSG |安卓破解|病毒分析|破解軟體|www.52pojie.cn
這個軟體的介紹在52破解裡面很詳細,這裡就不啰嗦了。打開APKIDE改之理,首次使用可能需要提示選擇jdk位置。沒有安裝的話,下載一個就好。下載好了設置下。如果不知道在哪裡設置了。可以apkid改之理的 ->工具->配置與選項(s)即可彈出如下界面。
設置好了就可以用了。選擇APK文件就會出現如下界面。
單擊java圖標打開java源碼,就能看到反編譯的java代碼了。加密加固等除外,這塊還在研究。
②.反編譯unity3d中Dll代碼。(沒有混淆或其他處理就簡單)
先來講解下沒有加密的。反編譯dll常用的工具有3種。Lispy,.NET Reflector和dotpeek,個人比較喜歡dotpeek。dotpeek是免費的,官網就能下載
dotPeek: Free .NET Decompiler & Assembly Browser by JetBrains把assetsbinDataManaged下的dll拖進dotpeek即可。直接選哪個vs圖標就能還原項目了。在vs界面查找關鍵字比較方便,如正在載入等。當然還原的項目肯定會有不少的報錯,接下來咋辦呢,找到報錯的那段代碼,用其他兩個反編譯工具打開剛才這個dll,找到對應位置,看下是否一樣,不一樣,覆蓋vs中的部分代碼。一般情況就不報錯了。
③.反編譯unity3d資源。(不推薦,可以直接抓資源就不用這個)
這個先不講了,下回講吧,貌似講的有點多。先貼一個大圖吧。記得關注下西部世界哦。
轉載請註明出處:發佈於【西部世界 】新手到大神反編譯unity3d遊戲系列教程【一】
推薦閱讀: