外掛造成的影響
快遞員都因?yàn)榻硬坏絾未蚱鹆送颂霉拈晃停陀螒蛐袠I(yè)外掛有些類(lèi)似日杈,區(qū)別在于游戲?yàn)榱送娴乃赏骸_@個(gè)行業(yè)純粹為了黑產(chǎn)
外掛的種類(lèi)
? ? 根據(jù)外掛的實(shí)現(xiàn)原理嗤栓,以及對(duì)游戲正常業(yè)務(wù)造成的危害程度冻河,我們對(duì)外掛大致可以分為如下三大類(lèi):輔助型、修改內(nèi)存型茉帅、破解型(二次打包叨叙、脫機(jī)外掛)。
輔助型
? ? 這類(lèi)外掛對(duì)游戲和業(yè)務(wù)的影響相對(duì)比較小堪澎,本身不會(huì)修改和破解游戲的代碼擂错,主要是模擬用戶點(diǎn)擊,自動(dòng)化的做一些重復(fù)性的操作樱蛤。比較常見(jiàn)的是圖像識(shí)別和按鍵精靈等工具钮呀。通過(guò)圖像識(shí)別技術(shù),可以判斷人物當(dāng)前的位置刹悴、火車(chē)票余量等行楞;然后通過(guò)按鍵精靈模擬用戶點(diǎn)擊攒暇,達(dá)到人物在游戲中的走動(dòng)土匀、自動(dòng)搶單等操作。
最火的案例莫過(guò)于現(xiàn)在的直播答題形用、打車(chē)搶單就轧、O2O搶單場(chǎng)景了。
外掛程序通過(guò)OCR識(shí)別出題目的文字田度,然后通過(guò)搜索引擎檢索答案妒御,最后自動(dòng)化點(diǎn)擊題目的答案,做到全自動(dòng)化答題镇饺,并且準(zhǔn)確率還很高乎莉。
修改內(nèi)存型
?? ?修改內(nèi)存型外掛依托于官方游戲APP,屬于動(dòng)態(tài)修改游戲業(yè)務(wù)邏輯奸笤,這類(lèi)外掛往往會(huì)向游戲進(jìn)程中注入第三方惡意模塊惋啃,然后通過(guò)修改代碼的邏輯、修改內(nèi)存中的數(shù)值等手段達(dá)到修改游戲地理位置监右、人物奔跑加速边灭、破解收費(fèi)道具、修改游戲幣數(shù)量和增加血量等健盒。此類(lèi)外掛會(huì)極大的破壞游戲的平衡性绒瘦。
如下是“XX酷跑”的游戲外掛称簿,屬于典型的內(nèi)存修改類(lèi)外掛程序。此外掛程序會(huì)往游戲進(jìn)程中注入第三方模塊惰帽,然后通過(guò)修改游戲的代碼邏輯和內(nèi)存中的數(shù)值憨降,可以隨意改變游戲的飛行距離、獎(jiǎng)勵(lì)的倍數(shù)该酗、奔跑的速度等參數(shù)券册。
破解型
破解型游戲外掛對(duì)于游戲廠商來(lái)說(shuō)影響是最大的,不僅會(huì)破壞游戲的平衡性垂涯,更會(huì)加速游戲業(yè)務(wù)走向衰亡烁焙。
破解型外掛又分為兩類(lèi):二次打包和脫機(jī)外掛。
APP的二次打包是基于對(duì)官方APP的修改耕赘,屬于靜態(tài)修改代碼邏輯骄蝇。黑客們通過(guò)逆向分析游戲邏輯,修改游戲賴(lài)以生存的核心功能操骡,比如去除游戲中的廣告代碼九火,破解單機(jī)游戲的收費(fèi)邏輯,插入盜號(hào)代碼等册招。
如下是《XX那三國(guó)》游戲的二次打包版本岔激,其中被插入了“一鍵跳過(guò)”副本、游戲?qū)υ捤俣瓤烧{(diào)至3倍速等外掛功能是掰。
? ? 脫機(jī)外掛的出現(xiàn)對(duì)游戲廠商來(lái)說(shuō)是毀滅性的打擊虑鼎,這意味著游戲客戶端和服務(wù)器端通信的邏輯都已經(jīng)被黑客逆向的非常清楚了,所有的游戲操作都可以脫離游戲客戶端而通過(guò)腳本來(lái)實(shí)現(xiàn)键痛。
脫機(jī)外掛的危害也顯而易見(jiàn)的炫彩,首先,原本屬于游戲客戶端的廣告絮短、道具等收入沒(méi)有了江兢;其次,腳本操作比正常的客戶端操作要快很多很多丁频,極大的破壞了游戲的平衡性杉允。當(dāng)年P(guān)C時(shí)代最為火爆的《傳奇》游戲,很大程度上也是沒(méi)落于脫機(jī)外掛的出現(xiàn)席里。
如下是《狼人殺》游戲的批量注冊(cè)小號(hào)工具叔磷,黑客通過(guò)逆向游戲注冊(cè)邏輯和算法,編寫(xiě)PC端自動(dòng)化注冊(cè)工具胁勺,完全脫離游戲客戶端APP世澜,屬于典型的脫機(jī)外掛。
外掛難防
作為一名游戲行業(yè)反外掛領(lǐng)域多年的從業(yè)者署穗,陵軒也在現(xiàn)場(chǎng)對(duì)外掛的存在原因寥裂,防控難度及外掛的分類(lèi)等進(jìn)行了詳細(xì)的分析嵌洼。
游戲外掛問(wèn)題,不僅僅只在微信“跳一跳”小游戲中出現(xiàn)封恰,它更是一個(gè)手游行業(yè)普世存在的麻养、并且不能被忽視的嚴(yán)重問(wèn)題。那么诺舔,這些外掛究竟是如何產(chǎn)生的呢鳖昌?
1、相較PC時(shí)代的C++游戲客戶端低飒,現(xiàn)在的手機(jī)游戲基本上都是以腳本語(yǔ)言為主许昨。由于腳本語(yǔ)言的特性,游戲的開(kāi)發(fā)成本降低了褥赊,迭代周期縮短了糕档,但也同樣面臨容易被反編譯、篡改破解等問(wèn)題拌喉。
2速那、以往在PC時(shí)代被廣泛使用的游戲驅(qū)動(dòng)保護(hù),到了移動(dòng)時(shí)代由于手機(jī)的限制尿背,也同樣不能用了端仰。這就導(dǎo)致了黑客可以有Root、越獄等超級(jí)權(quán)限田藐,而游戲則只有普通的用戶權(quán)限荔烧,這種攻防對(duì)抗層面的權(quán)限不對(duì)等,也是移動(dòng)端外掛難防的一個(gè)很重要原因坞淮。這就好比我是一個(gè)拿菜刀的屠夫面對(duì)一群拿AK47的恐怖分子一個(gè)道理茴晋,根本沒(méi)法打陪捷。
3回窘、出于對(duì)手機(jī)網(wǎng)絡(luò)的不穩(wěn)定,以及流量使用等原因的考慮市袖,很多手機(jī)游戲的計(jì)算邏輯和過(guò)程都在客戶端進(jìn)行啡直,這就導(dǎo)致了黑客可以很容易的篡改客戶端進(jìn)行游戲作弊,比如苍碟,直接跳過(guò)某些游戲關(guān)卡酒觅、BOSS一擊斃命等。
4微峰、手游時(shí)代對(duì)外掛工作室來(lái)說(shuō)舷丹,作弊成本低。一臺(tái)主流PC機(jī)可以虛擬出幾十個(gè)模擬器蜓肆;作弊工具產(chǎn)業(yè)鏈成熟颜凯,包括IP代理商谋币,卡商貓池、打碼平臺(tái)症概、群控軟件等蕾额。
5、游戲開(kāi)發(fā)同學(xué)通常缺乏安全對(duì)抗經(jīng)驗(yàn)彼城,無(wú)法及時(shí)發(fā)現(xiàn)和阻斷外掛的使用和傳播诅蝶。
誰(shuí)在使用外掛?
?? ?隨著移動(dòng)互聯(lián)網(wǎng)的興起募壕,同時(shí)调炬,手游行業(yè)制作外掛的成本低,導(dǎo)致更多的外掛制作者從PC紛紛向移動(dòng)端轉(zhuǎn)變舱馅,這就導(dǎo)致了手游外掛的泛濫筐眷。那么,究竟是哪些人會(huì)使用外掛呢习柠?
第一類(lèi):虛榮心作祟的玩家匀谣。在游戲中,玩家們可以沙場(chǎng)馳騁资溃、江湖俠情武翎,在現(xiàn)實(shí)中失意的人們可以再游戲中得到慰藉,使得心靈愉悅溶锭。那么宝恶,如何才能花更少的錢(qián),得到更大的心靈慰藉呢趴捅?唯有借助外掛的力量垫毙,可以在戰(zhàn)場(chǎng)上殺更多的人,比分比別人高拱绑。?
第二類(lèi):打金工作室综芥。對(duì)于打金工作室來(lái)說(shuō),游戲幣的產(chǎn)量是直接關(guān)系到變現(xiàn)的猎拨。使用外掛可以自動(dòng)化的執(zhí)行游戲中的一些重復(fù)性勞動(dòng)膀藐,比如固定的主線任務(wù)、跑商红省、押鏢等额各。而且,在外掛的幫助下吧恃,可以24小時(shí)全程無(wú)人值守虾啦,大大提供游戲幣的產(chǎn)出量。
第三類(lèi):競(jìng)爭(zhēng)對(duì)手。通過(guò)對(duì)官方游戲逆向分析傲醉,競(jìng)爭(zhēng)公司可以很容易的通過(guò)換膚等手段针饥,制造一款玩法相近、界面類(lèi)似的新游戲需频;另外丁眼,競(jìng)爭(zhēng)對(duì)手還會(huì)使用外掛批量注冊(cè)小號(hào),來(lái)破壞游戲的正常運(yùn)營(yíng)昭殉。
通用的檢測(cè)和防御機(jī)制
游戲外掛的實(shí)現(xiàn)方式多樣苞七,危害也都各不相同,那么游戲廠商又該如何對(duì)不同種類(lèi)的外掛做針對(duì)性的防護(hù)呢挪丢??
第一步:客戶端APP的防護(hù)蹂风。客戶端在外發(fā)之后乾蓬,最終到了正常玩家手里還是黑產(chǎn)手里惠啄,這塊是不可控的,那么如何提高黑客分析客戶端代碼的成本任内,保護(hù)端上代碼的安全是頭等大事撵渡。我們可以對(duì)游戲腳本進(jìn)行加密處理,對(duì)于解密游戲腳本的核心代碼邏輯進(jìn)行代碼混淆死嗦、加固趋距,反外掛從提升攻防門(mén)檻開(kāi)始,一個(gè)保護(hù)機(jī)制相對(duì)完善的客戶端越除,雖然不能杜絕外掛节腐,但能在一定程度上將大部分躍躍欲試的黑客阻擋在外。
第二步:通信鏈路的防護(hù)摘盆。脫機(jī)外掛的產(chǎn)生翼雀,很大程度上是因?yàn)榭蛻舳薃PP和服務(wù)器端通信的簽名算法、加密算法被破解了孩擂。采用常規(guī)加解密算法的變形算法狼渊,以及保護(hù)好核心秘鑰至關(guān)重要,采用白盒加密不失為一種好的對(duì)策肋殴。
第三步:業(yè)務(wù)層及時(shí)防控囤锉。云端業(yè)務(wù)層通過(guò)實(shí)時(shí)的各種IP庫(kù)、手機(jī)庫(kù)的查詢护锤、人機(jī)模型算法以及離線的數(shù)據(jù)分析等。從服務(wù)器端及時(shí)發(fā)現(xiàn)和防控已知和未知的作弊方案酿傍,為業(yè)務(wù)及時(shí)止損烙懦。被黑客攻擊并不可怕,可怕的是不知道被攻擊赤炒,允許黑客一小段時(shí)間的作惡氯析,換取絕大多數(shù)用戶的安全亏较,是業(yè)界通用的做法,快速發(fā)現(xiàn)問(wèn)題并解決問(wèn)題才是治理外掛的核心掩缓。
解決方案
?? ?基于前面的介紹雪情,手機(jī)游戲外掛的制作難度和成本極低,外掛的制作者又都是專(zhuān)業(yè)的黑產(chǎn)從業(yè)人員你辣;另一方面巡通,對(duì)于游戲廠商來(lái)說(shuō)岸晦,普通游戲開(kāi)發(fā)者一般都更關(guān)注游戲功能邏輯的實(shí)現(xiàn)和開(kāi)發(fā)晕翠,本身缺乏安全技術(shù)和游戲攻防對(duì)抗經(jīng)驗(yàn)菜秦。因此柠新,游戲廠商想要及時(shí)的發(fā)現(xiàn)并阻斷外掛作惡相對(duì)來(lái)說(shuō)比較困難纫谅,從投入產(chǎn)出比來(lái)看扎运,成本也相對(duì)偏高账月。
?? ?定制的解決方案研發(fā)和維護(hù)成本過(guò)高祖能,但通用的又擔(dān)心效果不好蟆沫。是不是能有一個(gè)折中的方案呢籽暇?答案是肯定的。其實(shí)饭庞,攻防對(duì)抗是一個(gè)兩軍對(duì)壘人和人图仓、人和機(jī)器博弈的過(guò)程,一下子把門(mén)檻提升太多是不合時(shí)宜的但绕,就像一下子改一個(gè)大版本著急大不一樣救崔,這個(gè)是得不償失的。利用前面提到的分層而治捏顺,就能取得一個(gè)比較好的事半功倍的效果六孵。