iOS游戲反外掛方案解析

自2007年iPhone OS發(fā)布以來(lái),iOS系統(tǒng)已經(jīng)發(fā)展了近17年,憑借著獨(dú)家的系統(tǒng)環(huán)境、安全性更高的閉源生態(tài)等優(yōu)勢(shì)。iOS從一眾手機(jī)系統(tǒng)中脫穎而出,與安卓穩(wěn)坐手機(jī)系統(tǒng)市場(chǎng)兩把頭部交椅。
不同于安卓的開源生態(tài),iOS的閉源生態(tài)中的硬件、軟件和服務(wù)都經(jīng)過嚴(yán)格審核和測(cè)試,其安全性與穩(wěn)定性有了一定保障,但也導(dǎo)致一部分公司在開發(fā)過程中忽視了安全問題,如iOS游戲反外掛、防破解等。

據(jù)FairGurd觀察總結(jié),雖然iOS系統(tǒng)具備一定的安全性,但并非沒有漏洞,如常見的iOS越獄。iOS設(shè)備越獄后,可以讓用戶獲取操作系統(tǒng)的最高權(quán)限,再通過Cydia管理器等軟件,安裝App Store以外的擴(kuò)展軟件。

海外知名iOS越獄團(tuán)隊(duì)palera1n在前段時(shí)間研發(fā)出一個(gè)兼容iOS 16的越獄工具,這也意味著蘋果最新的系統(tǒng)也能進(jìn)行越獄。一旦iOS系統(tǒng)越獄后被逆向研究App,產(chǎn)生的后果、造成的損失往往更加嚴(yán)重。
當(dāng)下游戲市場(chǎng),多端互通已成為一種趨勢(shì)。游戲作為一個(gè)整體,無(wú)論哪一端出現(xiàn)游戲安全問題都會(huì)造成嚴(yán)重影響,針對(duì)iOS游戲反外掛難題,F(xiàn)airGuard研發(fā)了成熟完善的保護(hù)方案,并接入多款熱門游戲并驗(yàn)證了出色的保護(hù)能力。
■ 代碼本身防護(hù)
FairGuard支持代碼邏輯混淆、字符串混淆,是基于LLVM的IR層的混淆Pass,但不是使用開源的LLVM項(xiàng)目。
而是通過HOOK Xcode 執(zhí)行流程,最大程度的減少用戶接入成本、優(yōu)化體驗(yàn)效果,對(duì)用戶來(lái)說完全無(wú)感知。

■ 代碼行為防護(hù)
本地存儲(chǔ)時(shí)的保護(hù)(NSUserDefaults,sqlite文件數(shù)據(jù)加密):
在執(zhí)行NSUserDefaults、sqlite存儲(chǔ)操作的時(shí)候?qū)ξ募M(jìn)行加密處理再存儲(chǔ)。
網(wǎng)絡(luò)傳輸數(shù)據(jù)保護(hù):
對(duì)客戶端傳輸數(shù)據(jù)提供加密方案,有效防止通過網(wǎng)絡(luò)接口的攔截獲取數(shù)據(jù)。
■ 代碼對(duì)抗防護(hù)
? 反調(diào)試保護(hù)
雙重防護(hù),先使用ptrace、syscall、sysctl、異常等檢測(cè)方式,再對(duì)防護(hù)代碼進(jìn)行加密保護(hù),效果更佳。
? 反越獄保護(hù)
多維度綜合檢測(cè),如檢查某些App的安裝、文件的存在、目錄的訪問權(quán)限等來(lái)綜合判斷是否越獄。
? 反重簽名保護(hù)
精準(zhǔn)校驗(yàn)包體內(nèi)簽名,使用加固時(shí)存儲(chǔ)的簽名,與運(yùn)行時(shí)獲取的簽名進(jìn)行對(duì)比。
? 反修改器保護(hù)
在代碼對(duì)抗防護(hù)階段,F(xiàn)airGuard提供本地檢測(cè)代碼,并保護(hù)其有效性。
此外,F(xiàn)airGuard研發(fā)了在線特征更新檢測(cè)功能,獲取樣本后可第一時(shí)間下發(fā)特征,用最短的時(shí)間保護(hù)App的安全性。如下所示:

歡迎通過「站內(nèi)私信」了解產(chǎn)品信息、體驗(yàn)免費(fèi)試用