手遊破解手段介紹及易盾保護方案

本文來自網易雲社區android

 

手遊已經超過端遊,成爲市場份額最大的遊戲類型。對應的外掛產業也成長迅速,技術水準愈來愈高,對市面流行的手遊引擎都有比較深刻的研究。ios

現階段若是一款遊戲沒有作任何保護,而且有數據放在本地計算的話,外掛從業者能夠快速作出外掛。比較典型的案例就是旅行青蛙,這個遊戲沒有作任何保護,忽然火了後,出現了各類功能多樣的破解版。百度搜索破解關鍵詞,結果有300多萬條。算法

手遊破解一般都從以下三個大方向來作:動態破解、靜態破解、協議破解。

1、動態破解安全

不對包進行修改,而是使用外部工具進行外掛功能。函數

動態破解主要包含修改器和加速器。工具

1.修改器性能

修改器的原理是修改遊戲內存數據,達到秒殺、無敵、倍攻、穿牆等變態技能。動畫

目前最流行的是GameGuard修改器(也稱做GG修改器)。網站

下圖是使用GG修改器修改三葉草數量的動畫。能夠經過修改器把三葉草的數量修改爲9999。

加密


除了上面的手動操做,GG修改器還可使用lua腳本操做,這樣就大大下降了使用門檻,只要花上幾十塊買個腳本就免去了複雜而有難度的重複操做。使用界面以下圖所示:


下圖是某QQ羣裏售賣的lua腳本


GameGuard修改器除了數據修改功能外,還帶有過遊戲保護的功能。

騰訊自營和聯營的手遊統一使用騰訊本身研發的MTP遊戲保護。MTP保護帶有反修改器功能,檢測到修改器後會讓遊戲退出。後來GameGuard修改器進行了版本升級,內置了pass騰訊MTP遊戲保護功能,使得GG修改器能正常使用,而且在官方網站掛出以下視頻:


2.加速器

加速器是比較常見的做弊工具。

一樣拿旅行青蛙來作示例,使用效果以下,可讓三葉草快速成長。正常狀況下,三葉草長滿池子須要幾天,加速後只須要幾秒鐘。



2、靜態破解

也就是端改,玩家經常稱這樣的破解版爲科技端。這種破解是經過修改遊戲裏面的文件或者腳本,而後重打包來實現各類功能。

端改經常被拿出來售賣或者工做室內部使用。端改的危害每每比動態破解更大。

如今破解版基本都是在QQ羣售賣,只要使用遊戲名+ 「科技」或者」輔助」 做爲關鍵詞搜索,就能夠搜索到對應遊戲的破解售賣羣。

圖1

 

圖2


圖1是崩壞3的搜索結果,圖2是刺激戰場的搜索結果。這兩個遊戲都有使用遊戲保護,仍是存在不少外掛售賣。可見如今的黑灰產的技術能力仍是很是強的。

仍是以沒有保護的旅行青蛙作爲案例,演示如何實現無限三葉草破解版本。

這個遊戲是Unity3d引擎實現,首先使用CSharp反編譯工具(如dnSpy,ilSpy等工具)把以下圖所示的DLL還原成源碼



而後分析源碼,定位到關鍵源碼位置。以下圖所示的獲取三葉草數量的代碼位置。


把源碼修改爲直接返回9999:


把修改後的源碼再編譯成DLL,替換原來的DLL,重打包成APK,運行後效果以下圖所示,三葉草數量永久爲9999,取之不盡用不之竭。


即便是沒有保護的遊戲,作破解版本仍是有必定門檻的,須要必定的技術基礎。不過在市場需求的驅使下,有多個平臺APP提供破解版手游下載,以下圖所示的GG大玩家和光環助手。

 

 

 

 

3、協議破解

一旦遊戲協議被分析出來,能夠再也不依賴於遊戲自己,能夠實現純協議的客戶端。或者是半脫機,修改遊戲封包來修改遊戲行爲。


以下圖比較熱門二次元的遊戲,使用的是http協議,可使用Fiddler抓包來分析協議,而且修改協議封包。

這樣的話,就能夠搭建代理服務來動態修改封包,實現10倍血量10倍攻擊等效果。至關於半脫機。下圖是某論壇提供的免費脫機代理。



易盾手遊保護針對上述問題的解決方案:

 

1、動態破解

1. 修改器
經過對遊戲進程的讀寫行爲來識別修改器,可通殺全部修改器

2. 加速器
使用底層的方法判斷是否存在加速。全部應用層方法都沒法繞過咱們的加速檢測。

2、靜態破解

遊戲保護模塊都帶有文件校驗功能,只要有文件被修改了遊戲就不能正常運行,而端改又必須修改文件。

所以破解通常都要先把保護模塊脫掉,使得破解後的遊戲可再也不依賴於保護模塊運行。

基於上述緣由,咱們從兩個角度來作保護

1. 腳本保護

1) Unity3d引擎提供函數級加密功能,並支持腳本在線更新。

2) 其它引擎提供對引擎模塊的加固

2. 資源加密

1) Unity3d引擎,咱們提供assetbundle資源加密以及靜態資源加密

全部加解密算法,都通過咱們精心構造和混淆,在確保性能和穩定性的前提下,讓編譯後的代碼難以分析。下面是IDA分析的某個解密算法的流程圖,其它加解密算法都是使用相似的方法構造。


3、脫機掛

針對脫機掛,咱們提供了數據簽名功能,客戶端對輸入數據進行簽名,生成一個簽名值。

若是破解者沒法分析出簽名算法,就沒法模擬協議也不能篡改數據。

保護的核心在於客戶端實現的簽名算法在知足計算速度的同時,混淆要有足夠的強度,使得分析者沒法還原成源碼算法。

除了上述提到的方法,咱們還提供以下的保護功能

1. 反地理位置模擬

2. 反模擬器

3. 反模擬點擊

4. 反同步器

5. 防二次打包

6. 文件校驗

7. 存檔加密

8. 手遊引擎SO定製化加殼

除了提供這些多樣的保護功能,咱們還着力於提高保護的易用性。保護的使用只須要運行一條命令行,將待保護apk作爲輸入,便可輸出帶有完整保護功能的APK。整個過程不須要開發作任何對接。

易盾手遊保護已經發布一年多,除了公司內部使用外,同時也對公司外部提供服務。目前已經有數十個外部用戶,公司內部也有幾十個手遊在使用。

對於外部用戶有三個比較典型的用戶,在這裏作一下分享。

1. 英雄互娛旗下的某沙盒類遊戲,存在不少修改器和加速器

咱們給他們配置了反修改器和反加速器選項,而且對腳本作了函數級加密,對U3D Assetbundle資源作了加密。加固版本上線後,遊戲運營反饋用戶外掛舉報立馬減小了99%。使用保護至今已經快一年,尚未出現過破解版。

2. B站某二次元遊戲,就是上文所說的存在脫機掛雲刷的遊戲,後來買了咱們的保護。針對他們脫機掛的問題,咱們專門爲他們開發了反脫機功能。上線後雲刷功能立馬廢了,而且上線至今沒有人可以破解出反脫機算法。在反脫機功能和腳本函數級加密同時使用的狀況下,也沒有出現破解版。

 


網易雲安全(易盾)提供iOS 應用加固Android 應用加固服務,點擊可免費試用。

 


本文來自網易雲社區,經做者陳士留受權發佈。

原文:手遊破解手段介紹及易盾保護方案

 

瞭解 網易雲 :

網易雲官網:https://www.163yun.com

網易雲社區:

新用戶大禮包:https://www.163yun.com/gift

 

更多網易研發、產品、運營經驗分享請訪問網易雲社區

相關文章
相關標籤/搜索