快速閱讀精華
- 🎯 零手動自動化:Glitter 自動啟動 BSGLauncher 並注入 Shine 模組,全程無需手動操作
- 🔓 無侵入式提取:僅 Hook 啟動器的 EncryptMessage API,完全不注入遊戲本體,降低被檢測風險
- 🗝️ 即時解密技術:攔截 Session Key 並即時解密 global-metadata.dat,檔案會自動出現在執行檔同目錄
- 💡 適用對象:IL2CPP 逆向工程師、Mod 開發者、需要分析遊戲結構的進階玩家
工具介紹與運作原理
Glitter&Shine 是一組專為《逃離塔科夫》設計的自動化中繼資料提取套件,採用雙組件架構分工協作,讓原本需要手動操作且高風險的記憶體傾印流程,轉變為完全自動化的安全提取方案。
雙組件協作機制
- Glitter(啟動器自動化):負責環境準備與注入作業。執行後會自動尋找系統中的 BSGLauncher.exe 並啟動,隨後將 Shine 模組釋放到系統 %TEMP% 目錄,最後透過 LoadLibraryW API 將 DLL 注入啟動器程序
- Shine(核心攔截模組):負責加密流量攔截與解密。注入後會 Hook 啟動器使用的 EncryptMessage Windows API,這是啟動器與伺服器通訊時用於加密封包的函數
非侵入式設計優勢
與傳統的 IL2CPP Dumper 不同,Glitter&Shine 完全不會注入遊戲本體(EscapeFromTarkov.exe),所有操作都在啟動器層級完成。這意味著:
- 規避了 BattlEye 對遊戲程序的記憶體掃描
- 不會修改遊戲執行時的記憶體資料
- 提取過程中遊戲甚至不會真正啟動(請求被攔截)
安裝與使用教學
本工具為綠色免安裝執行檔,但涉及系統底層 API 操作,請務必依照底下步驟謹慎操作。
前置系統需求
- 作業系統:Windows 10/11(64位元)
- 已安裝《逃離塔科夫》啟動器(BSG Launcher)
- 遊戲檔案完整性正常(建議先執行一次啟動器驗證)
- 關閉即時防護軟體(執行期間可能觸發誤報)
步驟一:下載工具
取得 glitter&shine.exe 執行檔(檔案大小:343.0 KB)。請將檔案放置於獨立資料夾(建議在桌面新建資料夾),因為提取的 metadata 檔案會產生在相同位置。
所有站內附件皆會附上安全掃描報告 請會員查看純淨度百分比後判斷使用
相關檔案須知: 取得檔案前,請先詳細閱讀文章內容 避免不必要錯誤與誤會發生。 也可多參考文章討論樓層內容 了解附件檔案相關討論資訊。
步驟二:執行提取流程
- 確保《逃離塔科夫》啟動器完全關閉(檢查系統列圖示,確保沒有殘留程序)
- 以系統管理員身份執行 glitter&shine.exe(右鍵 → 以系統管理員身份執行)
- 工具會自動啟動 BSGLauncher.exe,你會看到啟動器視窗跳出
- 等待約 10-30 秒,期間啟動器可能會顯示「正在啟動遊戲」或類似狀態
- 當命令列視窗顯示「Done」或自動關閉時,表示提取完成
步驟三:取得檔案
提取完成後,請在 glitter&shine.exe 所在的資料夾中尋找 global-metadata.dat 檔案。此檔案大小約 10-20 MB,內含遊戲的類別定義、方法名稱、欄位偏移等 IL2CPP 中繼資料。
取得該檔案後,即可使用 Cheat Engine (CE修改器) 7.5 漢化版 中文版 搭配 《Cheat Engine》V7.6 中文化版超強記憶體解鎖工具:遊戲外掛製作神器! 進行結構分析,或使用 IL2CPPDumper 等工具還原 C# 代碼。
技術細節解密
對於具備逆向工程背景的進階使用者,底下深入說明技術實作細節:
API Hook 實作
Shine 模組使用 Microsoft Detours 或類似的 Inline Hook 技術,攔截 Secur32.dll 導出的 EncryptMessage 函數。當 BSGLauncher 呼叫該函數加密送往 gw-pvp.escapefromtarkov.com 的封包時,Shine 可以:
- 檢視明文請求內容(包含 Session ID、使用者資訊等)
- 選擇性封鎖請求(工具利用此特性阻止原始啟動請求)
- 複製並重播請求以觸發伺服器回應
金鑰提取流程
- 啟動器發送初始啟動請求(包含 Autd Token)
- Shine 攔截該請求,暫存封包內容,但阻止其實際發送(遊戲不會啟動)
- Shine 重播該請求(透過原始 EncryptMessage),讓其正常到達伺服器
- 伺服器回應包含加密的 Session Key 與遊戲啟動參數
- Shine 攔截回應,使用攔截過程中取得的加密金鑰解密內容
- 整理 JSON,提取 session_key 欄位值
Metadata 端點請求
取得 Session Key 後,工具構建對特定內部端點的 HTTP 請求(該端點負責提供 global-metadata.dat)。請求標頭包含有效的 Session Key,伺服器驗證後返回加密的 metadata 封包。Shine 使用相同的金鑰解密,將二進位資料寫入 %EXEC_DIR%\global-metadata.dat。
常見問題Q&A
Q:使用這個工具會被 BattlEye 封鎖嗎?
這個工具不會直接觸發 BattlEye 封鎖,因為它完全不注入遊戲本體(EscapeFromTarkov.exe),所有操作都在啟動器層級完成。BattlEye 主要監控遊戲程序的記憶體完整性,而此工具僅與 BSGLauncher 互動。
然而,這仍然屬於第三方工具,理論上 BSG 可以透過伺服器端檢測異常的啟動模式。建議僅在離線環境或測試帳號使用,作者與本教學不對任何帳號處分負責。
Q:為什麼防毒軟體會報告威脅?
這是正常誤報。工具使用以下技術,這些行為模式常被防毒軟體標記為「駭客工具」或「潛在不需要的程式」:
- DLL 注入(LoadLibraryW)
- API Hook(攔截 EncryptMessage)
- 記憶體操作與網路封包攔截
建議執行前暫時關閉即時防護,或將 glitter&shine.exe 加入防毒白名單。
Q:我使用的是其他地區的伺服器(如亞洲、歐洲),這工具能用嗎?
工具預設連線至 gw-pvp.escapefromtarkov.com。這是《逃離塔科夫》的主要服務端點,理論上所有地區的啟動器都會使用此端點進行身份驗證與啟動。
如果你的啟動器使用不同的端點(如特定地區的 CDN、測試伺服器或開發版本),工具將無法攔截正確的封包。你可以檢查 BSGLauncher 的網路活動,確認實際連線的端點位址。
Q:取得的 global-metadata.dat 可以用來做什麼?
這是 IL2CPP 架構遊戲的中繼資料檔案,內含完整的類別定義、方法名稱、參數型別、欄位偏移等資訊。主要用途包括:
- 建立 Cheat Engine 表格或記憶體修改器
- 開發遊戲模組(Mod)時理解內部結構
- 進行逆向工程分析遊戲邏輯與數值計算公式
- 尋找特定功能的記憶體位址(如無後座力、透視牆等,但請注意使用風險)
你可以使用 Cheat Engine 7.6 中文化版 或 IL2CPPDumper 等工具開啟此檔案進行分析。
Q:作者會持續更新這個工具嗎?
不會。作者明確表示此工具「完全不會維護」("Not at all")。這是一次性的概念驗證(Proof of Concept)作品,用於展示攔截啟動器通訊的可行性。
不過,作者提到如果論壇管理員允許,將在 GitHub 公開原始碼。這意味著社羣開發者可以自行維護分支或基於此概念開發更穩定的版本。建議關注相關論壇以取得後續開發資訊。
參考資料與致謝
本工具開發基於以下技術貢獻與研究成果:
- @Beakers - 提供《逃離塔科夫》IL2CPP 解密技術的基礎研究與方法論
- AI 輔助開發 - 協助整合開發概念與 C++ 程式碼實作(作者自述「太懶得寫 C++」)
- 社羣 - 提供技術交流平臺與工具發布管道
原始碼狀態:作者表示將在獲得論壇管理員許可後,於 GitHub 公開完整原始碼,供社羣審查與後續開發。
|