方法一:AssetStudio提取(僅針對(duì)ab包及.assets、.boundle和.unity3d未加密的情況下)
1.在我們拿到一個(gè)游戲的安裝包時(shí),首先會(huì)疑惑如何打開(kāi)。下載bandzipBandizip · Free zip, 7z, unzip, unrar Archiver · Fast and easy,這是一款非常方便的解壓縮工具。安裝后右鍵apk-壓縮文件預(yù)覽,即可打開(kāi)apk包。當(dāng)然你也可以直接右鍵解壓,反正差不多(x)
2.unity文件一般會(huì)將ab包(.AssetBundle)放在assets文件夾下的目錄中,如果沒(méi)有就點(diǎn)開(kāi)目錄下的文件夾瞅瞅有沒(méi)有。現(xiàn)在我們得到了ab包,可以開(kāi)始進(jìn)行提取了。
3.下載AssetStudioGitHub - Perfare/AssetStudio: AssetStudio is a tool for exploring, extracting and exporting assets and assetbundles.,解壓后雙擊打開(kāi)AssetStudioGUI.exe,file-Load folder打開(kāi)assets(或者要是懶得找將整個(gè)包丟進(jìn)去,如果你內(nèi)存可以的話),加載完成后點(diǎn)開(kāi)list,即可看到解壓出來(lái)的資源。如果沒(méi)有就是加密了,悲。如果要提取模型,選中文件在Export-Export All Assets導(dǎo)出fbx,一般情況來(lái)講都是帶骨骼和權(quán)重的,可以直接載入blender或其他3D軟件編輯。提取其他資源就。。。自己探索一下,一時(shí)半會(huì)我也想不起來(lái)咋導(dǎo)了。不難。
方法二:DisUnity提取,還是不能解密
1.【舊的用法,不知道現(xiàn)在能不能用,僅作記錄。實(shí)在需要請(qǐng)參考github上的用法?!浚ㄐ枰猨ava8環(huán)境)游戲包\assets\bin\Data\Managed下找到UnityEngine.dll,在DisUnityGitHub - ata4/disunity at v0.4.0文件夾中cmd(文件路徑欄輸入cmd),extract包所在位置。
(沒(méi)了)
以下是一些用法,來(lái)自github首頁(yè)。別用5.0,5.0沒(méi)有提取功能。
Usage
disunity <command> <file>
Note:?depending on the platform, you may need to run disunity.bat (Windows) or disunity.sh (Linux/MacOS). In case the launch script fails, try?java -jar disunity.jar
.
Available commands
Command | Purpose |
---|---|
dump | Converts binary object data to human-readable plain text, similar to the binary2text tool shipped with the Unity editor. |
dump-struct | Like?dump, but just for the structure information. |
extract | Extracts asset objects to regular files (.txt, .wav, .tga, etc.). See SUPPORT.md for a list of supported asset types. |
extract-raw | Extracts raw serialized object data. Could be useful for manual extraction if?extract?doesn't support the wanted asset type. |
extract-txt | Like?dump, but writes the output to text files instead of the console. |
extract-struct | Like?extract-txt, but just for the structure information. |
learn | Learns the structure information from the submitted files and stores any new structs in the database file structdb.dat. The database is required to deserialize standalone asset files, which usually don't contain any structure information. |
info | Outputs various information about assets and asset bundle files. |
info-stats | Outputs class usage statistics for asset files. |
bundle-extract | Extracts all packed files from asset bundles. |
bundle-inject | Injects files previously extracted with the?bundle-extract?back into the asset bundle. |
bundle-list | Lists all files contained in asset bundles. |
split | Attempts to split an asset file into multiple smaller asset files. |
list | Lists all asset objects in a tabular form. |
Extract all supported assets from a bundle file:
disunity extract Web.unity3d
Extract all packed files from two bundle files:
disunity bundle-extract episode1.unity3d episode2.unity3d
Extract textures from the asset file sharedassets0.assets:
disunity extract -f texture2d sharedassets0.assets
Dump web player configuration from the file named Web.unity3d:
disunity dump -f playersettings Web.unity3d
Show information about all asset files in the directory "assets":
disunity info assets\*.asset
進(jìn)階版-加密后/dll提取方法
ab包解不出來(lái),那就轉(zhuǎn)戰(zhàn)dll。
方法一:如果dll沒(méi)加密,直接dump dll文件
找Assembly-CSharp.dll,一般在assets\bin\Data\Managed或bin\Data\Managed中,丟.net查看源代碼,嘗試搜索http,找到的網(wǎng)址可能可以下載資源。
如何確定是否加密呢?如果后綴變成了data,并且在試圖用.net打開(kāi)時(shí),顯示
"Assembly-CSharp (this could change, depending on the name of the file), File is not a portable executable. DOS header does not contain 'MZ' signature."
方法二:使用decrypt在安卓虛擬機(jī)上內(nèi)存提取,版本較舊的或許可以嘗試,但我失敗了,問(wèn)題出在decrypt版本過(guò)舊。不推薦。
教程How to decrypt an encrypted .dll file with GDB gcore (Root only) - Platinmods.com - Android & iOS MODs, Mobile Games & Apps我不多說(shuō),沒(méi)經(jīng)驗(yàn)。
方法三:一般用于dll加密成了dat后。使用GameGuardianGameGuardian - Official Downloads - GameGuardian搭配安卓虛擬機(jī)提取內(nèi)存中的dll?
1.繼續(xù)使用dll,簡(jiǎn)單Unity 3D游戲加密dll文件提取_psych1的博客-CSDN博客_3d游戲文件怎么提取
后使用get_dll_from_dumped_bin.exe?https://wwen.lanzout.com/i5Jz00kckfzi
密碼:futj 轉(zhuǎn)換為dll,返回方法一繼續(xù)。
分支-libil2cpp.so和global-metadata.dat的解密和提取
未加密:
使用Il2CppDumperGitHub - Perfare/Il2CppDumper: Unity il2cpp reverse engineer,先載入so再載入dat,然后輸入包所使用的unity版本號(hào),選擇Auto(Plus)模式,解包完畢。我建議大家來(lái)看這個(gè)老師的教程,非常詳細(xì)貼心。
記一次unity游戲分析 | Mario
(報(bào)錯(cuò)就是加密,別想了,乖乖看下一個(gè)方法。)
已加密:
Il2CppDumper的說(shuō)明有寫,如果有加密Il2CppDumper是不能使用的,需要使用作者的另一款工具Zygisk-Il2CppDumperGitHub - Perfare/Zygisk-Il2CppDumper: Using Zygisk to dump il2cpp data at runtime配合MagiskGitHub - topjohnwu/Magisk: The Magic Mask for Androa
一起使用。教程如下。How to use Zygisk-Il2CppDumper to dump Il2Cpp games (Magisk 24 and up) - Platinmods.com - Android & iOS MODs, Mobile Games & Apps?
首先你要有一臺(tái)root的手機(jī),但我沒(méi)有(目移)所以虛擬機(jī)是最好的選擇,但vmos的root我搞不懂?......所以還是祈禱沒(méi)加密吧,目前在研究另一個(gè)方法,研究成功會(huì)進(jìn)行更新。
其他我看不懂但是貌似可以用的方法
手游之u3d之global-metadata.dat解密 - CodeAntenna(global-metadata.dat解密)
[分享]global-metadata.dat,libil2cpp.so解密修復(fù)-Android安全-看雪論壇-安全社區(qū)|安全招聘|bbs.pediy.com(正在研究的方法,目前最有希望)?
工具推薦
010 Editor - Binary Template Information(UnityMetadata.bt,不知道干啥用的哪里來(lái)的,反正應(yīng)該有用,嗯。)
SweetScape Software Inc - Download 010 Editor(010 Editor,比較好用的十六進(jìn)制/二進(jìn)制編輯器。)
.NET Reflector 8.0 Download - Reflector.exe(.Net編輯器,編輯源碼)
MT管理器(我離開(kāi)MT會(huì)死,太強(qiáng)了。)
https://developer.android.com/studio(Android Studio,安卓開(kāi)發(fā)工具。)
Windows 終端安裝 | Microsoft Learn(終端,可以說(shuō)是轉(zhuǎn)儲(chǔ)最重要的工具。)
最后的話
本文章僅作交流學(xué)習(xí)用,請(qǐng)大家不要提取游戲資源做違法亂紀(jì)的事情,學(xué)習(xí)者的任何行為與作者無(wú)關(guān),請(qǐng)不要抓我,追究違法亂紀(jì)的人的責(zé)任就好(我是學(xué)生別抓我)。
【在別人readme里抄了幾句話】請(qǐng)勿將這些東西用于18禁作品,極端宗教宣傳,血腥恐怖獵奇作品,人身攻擊等。請(qǐng)勿用于商業(yè)用途。他人使用本模型所造成的一切不良后果,不由模型作者與平臺(tái)承擔(dān),請(qǐng)向使用者追究全部責(zé)任。文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-414409.html
所有引用文章、工具皆已注明地址,感謝所有開(kāi)發(fā)者!文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-414409.html
到了這里,關(guān)于【游戲提取/超詳細(xì)記錄向】關(guān)于unity游戲的資源提取所需資源及方法簡(jiǎn)介(AssetBundle及l(fā)ibil2cpp.so等解密)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!