你好,歡迎來到川北在線
微信
騰訊微博
新浪微博
網(wǎng)絡(luò)游戲開發(fā)之安全對抗:游戲防外掛的幾種可行方案
時(shí)間:2017-01-11 09:35   來源:GameRes游資網(wǎng)   責(zé)任編輯:毛青青

  游戲才剛上線沒多久,就遭遇了眾多游戲工作室一波接一波的外掛洗禮。游戲工作室很喜歡新游戲,因?yàn)樾掠螒驔]有太多對抗外掛的手段和技術(shù),漏洞也較多,而且新游戲會不斷燒錢導(dǎo)量,游戲工作室也借機(jī)找到了大量的客戶。

  在經(jīng)歷了一番實(shí)戰(zhàn),或多或少總結(jié)了一些經(jīng)驗(yàn)和技巧,這里和大家做個(gè)分享。文章分別從常見外掛對抗、安全日志對抗、安全預(yù)警對抗、策劃層面對抗、其他技術(shù)對抗探討網(wǎng)絡(luò)游戲外掛的對抗措施。

  常見外掛對抗

  這里列舉下網(wǎng)絡(luò)游戲影響較大的3類外掛,分別做說明:

  1)產(chǎn)生經(jīng)濟(jì)利益的

  a. 利用游戲漏洞獲拳濟(jì)利益

  游戲漏洞,這是最常見且最致命的外掛了。盡管做了足夠多的代碼review、大量的測試,還是無法完全避免漏洞的出現(xiàn)。

  對付這種外掛,比較常用的對抗策略是:

  1、玩家收益預(yù)警,高出預(yù)估值的收益做預(yù)警

  2、安全日志的記錄,遇到玩家作弊,能快速定位問題,熱修復(fù)

  3、根據(jù)玩家舉報(bào),查看被舉報(bào)玩家數(shù)據(jù)及日志。(這個(gè)看似沒用,實(shí)際效果顯著。游戲中的獲利最終要轉(zhuǎn)化成現(xiàn)金,這樣他們就要給玩家推銷)

  b. 利用運(yùn)營弱點(diǎn)獲拳濟(jì)利益

  游戲?yàn)榱嗽黾恿舸,某些嘲必然?shí)打?qū)嵔o玩家送福利。工作室就利用這些嘲反復(fù)刷獲益。

  對付這種外掛,比較常見的對抗策略是:

  1、劃分新手區(qū),高等級玩家無法到新手區(qū)

  2、限制沒充值的,且剛注冊不久的玩家

  3、限制領(lǐng)獎次數(shù)(這是廣義的,除了游戲中明確每人只能領(lǐng)幾次,還包括內(nèi)定限制)

  2)減少重復(fù)勞動的

  游戲?yàn)榱嗽黾油婕业脑诰時(shí)長,有很多重復(fù)性的勞動,比如任務(wù)打怪200只、收集道具50個(gè)。像這些,外掛可以幫玩家自動打怪,自動收集道具,自動交任務(wù),自動接任務(wù),然后再重復(fù)這個(gè)過程。

  對付這種外掛,比較常見的對抗策略是:

  1、適當(dāng)增加內(nèi)掛,即游戲內(nèi)置的自動掛機(jī)

  2、增加此類任務(wù)的隨機(jī)性,變換任務(wù)數(shù)量、嘲

  3、隨機(jī)增加一些確認(rèn)對話框,如驗(yàn)證碼

  3)影響游戲平衡的

  這種外掛,在競技類游戲較為常見,如CF透視外掛、CF自動瞄準(zhǔn)、LOL野怪計(jì)時(shí)、LOL技能閃避、王者榮耀透視外掛。像這些外掛,影響了游戲平衡。

  對付這種外掛,比較常見的對抗策略是:

  1、加強(qiáng)客戶端對外掛的檢測

  2、根據(jù)外掛盈利點(diǎn)優(yōu)化游戲,如LOL增加了野怪刷新提示

  3、內(nèi)存數(shù)據(jù)加密 (自定義的安全類型,用來代替語言原生的int、string等類型進(jìn)行數(shù)據(jù)存儲,還可重載運(yùn)算符。這種可以有效對抗內(nèi)存修改器)

  4、客戶端加殼(增加反編譯的成本,減少游戲被反編譯的可能性)

  5、協(xié)議加密(增加修改協(xié)議的成本)

  安全日志對抗

  安全日志有別于游戲日志,是關(guān)系到游戲經(jīng)濟(jì)、游戲公平的玩家行為日志。

  為什么要有安全日志?

  你知道一個(gè)玩家有問題,但沒有日志支撐,你不知道他怎么獲利的,是否真的不符游戲規(guī)定。另外,還可以根據(jù)這個(gè)玩家的特征,找到其他作弊玩家。

  安全日志采集那些數(shù)據(jù):

  根據(jù)玩家的獲利點(diǎn):

  1、游戲幣:游戲幣的獲得與使用,需要記錄理由、增量、總量、時(shí)間

  2、道具:道具的獲得與使用,需要記錄理由、增量、總量、時(shí)間

  3、技能:比如技能釋放次數(shù)、技能釋放的最大范圍,技能命中目標(biāo)總數(shù)、單個(gè)技能命中目標(biāo)最大數(shù)、單個(gè)技能的獲利值、技能消耗的能量總數(shù)、技能的最大傷害、技能的總傷害

  4、怪物:怪物的產(chǎn)出數(shù)量、被擊敗數(shù)量、受創(chuàng)值、受創(chuàng)次數(shù)、初始地圖位置、被擊敗位置

  5、玩法:每個(gè)玩法的情況,包括初始游戲幣、結(jié)束時(shí)間、分?jǐn)?shù)、獲得游戲幣,獲得道具、對局時(shí)長、客戶端對局時(shí)長

  6、交易:交易雙方的信息、交易道具、交易游戲幣、時(shí)間

  當(dāng)然,安全日志不止這些,需要根據(jù)不同游戲,制定不同的安全日志。

  安全預(yù)警對抗

  這是在安全日志的基礎(chǔ)上做的預(yù)警,比如剛注冊當(dāng)天沒充值就獲利1億游戲幣,這種玩家就需要預(yù)警了。預(yù)警的目的在于查找可能作弊的玩家,提醒運(yùn)營人員發(fā)現(xiàn)作弊玩家,就好像美劇《疑犯追蹤》。

  安全預(yù)警的手段主要有兩種:

  1、線上預(yù)警:線上即時(shí)預(yù)警,對一些對局、或產(chǎn)出數(shù)值嚴(yán)重超過預(yù)警值的要預(yù)警,這種是線上統(tǒng)計(jì),在玩家上報(bào)分?jǐn)?shù)及發(fā)獎時(shí)hook處理

  2、離線預(yù)警:作弊玩家收益可能不是一兩局比賽就得到了,可能要累計(jì)一段時(shí)間反復(fù)刷獲得大量收益。所以要離線分析,通過分析安全日志,定制一些規(guī)則找到這些玩家。

  根據(jù)作弊玩家的行為

  1、貧民富翁:剛注冊當(dāng)天沒充值就獲利巨額游戲幣

  2、一夜暴富:一天獲得的游戲幣數(shù)額超過同等玩家N倍,且沒有充值、沒有交易

  3、明目張膽:對于排行榜前N名的玩家重點(diǎn)關(guān)注

  4、百戰(zhàn)百勝:沒有玩家是百戰(zhàn)百勝的,屢次都是前幾名,這樣的玩家多數(shù)是有問題的

  5、雨后春筍:剛放出去的功能還沒有受到實(shí)戰(zhàn)考驗(yàn),出錯(cuò)的可能性很大,要監(jiān)控產(chǎn)出,針對一個(gè)功能設(shè)置當(dāng)日產(chǎn)出預(yù)警值

  當(dāng)然,安全日志不止這些,需要根據(jù)不同游戲,制定不同的安全日志。

  帳號封禁對抗

  如果確定了玩家行為嚴(yán)重違反了游戲規(guī)則,就要考慮封禁玩家。封禁主要的好處是,將作弊太猖狂的玩家踢出眾人視野。同時(shí)封禁的存在,相當(dāng)于告訴玩家別使用外掛。除了這兩個(gè),還可以有效對抗游戲工作室轉(zhuǎn)移資產(chǎn),提高作弊成本。有一大部分工作室是靠售賣游戲貨幣、道具、高級游戲賬號為生,而經(jīng)營工作室又需要大量的成本,購置機(jī)器、網(wǎng)絡(luò)、員工、游戲賬號等,如果大量賬號被封,可能會導(dǎo)致工作室周轉(zhuǎn)遇到問題。

  封禁類別:

  1、限制登錄:限制玩家無法登錄游戲,也就是封號。短時(shí)間封禁、 封禁

  2、限制玩法:限制玩家獲得收益、限制分?jǐn)?shù)上榜

  3、限制聊天:屏蔽不良信息

  封禁的難點(diǎn)是,怎么篩選出有作弊的玩家,避免誤傷正常玩家:

  1、剛注冊,就有作弊行為,是封禁的重點(diǎn),特別是收益巨大的

  2、長時(shí)間在線的,每天日活躍達(dá)到15小時(shí)以上,甚至23小時(shí)以上

  3、充值較大的玩家,就算使用過作弊器,影響不大的,也可以忽略。(畢竟是衣食父母,適當(dāng)給于提示或警告)

  4、同個(gè)設(shè)備號,或同個(gè)ip的多個(gè)玩家?guī)ぬ柖加凶鞅讛?shù)據(jù)

  5、游戲日志、或安全日志有較多的作弊日志

  策劃層面對抗

  1、增加交易成本,限制玩家交易

  增加交易成本是很有效的,工作室通常就利用多個(gè)小號刷,再匯總到一起售賣。限制的方法很多,如等級開放(30級開啟),或VIP2開放,需充值多少錢可達(dá)到。或交易扣手續(xù)費(fèi)。

  2、玩法(或功能)設(shè)定數(shù)值上限

  每一關(guān)的最大分?jǐn)?shù),每個(gè)技能的最大傷害等,就算屬性過多或其他理由,也要計(jì)算好這個(gè)上限,做出限制。不要單純?yōu)榱梭w驗(yàn)的東西,太大放寬這個(gè)限制。

  3、玩法(或交易)次數(shù)限制

  玩法如每人每天只能玩3次,交易如VIP2每天可交易2個(gè)道具、VIP3每天可交易5個(gè)道具。

  4、限制較大收益路徑,必須有時(shí)間成本

  工作室經(jīng)常都會研究出最快獲利的路徑,定制外掛獲利。那么這個(gè)收益路徑,必須要有時(shí)間成本,比如雖然是概率出,但還是限制了一天最多一次。

  5、降低重復(fù)性任務(wù)所獲得收益

  很多外掛是通過長時(shí)間刷來累計(jì)收益,正常玩家不會長時(shí)間重復(fù)無腦勞動。對于同一種任務(wù)的收益,應(yīng)該隨時(shí)間增加而減少。

  6、適當(dāng)提供自動掛機(jī)功能

  游戲中很多任務(wù)是重復(fù)性的,可以適當(dāng)提供自動掛機(jī)。

  其他技術(shù)對抗

  1、客戶端加殼(增加反編譯的成本,而且,不同版本加殼做一點(diǎn)變化)

  2、通信加密(增加修改協(xié)議的成本,而且,密匙要不定期更新;蛘,密匙可做成動態(tài)的,比如自增1)

  3、內(nèi)存數(shù)據(jù)加密 (自定義的安全類型,用來代替語言原生的int、string等類型進(jìn)行數(shù)據(jù)存儲,還可重載運(yùn)算符。這種可以有效對抗內(nèi)存修改器)

  4、協(xié)議通信頻率限制(限制同一個(gè)協(xié)議兩次請求的間隔)

  5、防加速(客戶端連接服務(wù)器后,服務(wù)器把當(dāng)前時(shí)間發(fā)給客戶端,以后客戶端發(fā)協(xié)議都加上自己算出的服務(wù)器時(shí)間,服務(wù)器檢測到這個(gè)時(shí)間超過了實(shí)際時(shí)間,就認(rèn)為加速)

  6、頂號、重復(fù)登錄處理(必須將上次登錄踢出,并且數(shù)據(jù)保存完畢后,才允許本次登錄)

  7、關(guān)鍵數(shù)據(jù)服務(wù)器校驗(yàn)(如技能CD、移動速度及位置)

  8、定期上報(bào)客戶端核心資源或者配置文件md5,服務(wù)端做校驗(yàn)

  9、客戶端配置文件、資源文件加密

  10、協(xié)議過期(避免截韌戶端發(fā)包,重復(fù)發(fā)送)

  最后語

  寫到最后發(fā)現(xiàn),這是我第一篇不怎么講技術(shù)的文章,我很少談及游戲設(shè)計(jì)、開發(fā)經(jīng)驗(yàn)、職業(yè)規(guī)劃等,可能以后會花點(diǎn)精力搞下。畢竟技術(shù)只是幫你開啟新世界的大門,而過程和結(jié)局怎樣,還要靠你怎么運(yùn)用它。

   投稿郵箱:chuanbeiol@163.com   詳情請?jiān)L問川北在線:http://dstuf.com/

川北在線-川北全搜索版權(quán)與免責(zé)聲明
①凡注明"來源:XXX(非在線)"的作品,均轉(zhuǎn)載自其它媒體,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對其真實(shí)性負(fù)責(zé),本網(wǎng)不承擔(dān)此類稿件侵權(quán)行為的連帶責(zé)任。
②本站所載之信息僅為網(wǎng)民提供參考之用,不構(gòu)成任何投資建議,文章觀點(diǎn)不代表本站立場,其真實(shí)性由作者或稿源方負(fù)責(zé),本站信息接受廣大網(wǎng)民的監(jiān)督、投訴、批評。
③本站轉(zhuǎn)載純粹出于為網(wǎng)民傳遞更多信息之目的,本站不原創(chuàng)、不存儲視頻,所有視頻均分享自其他視頻分享網(wǎng)站,如涉及到您的版權(quán)問題,請與本網(wǎng)聯(lián)系,我站將及時(shí)進(jìn)行刪除處理。



圖庫
合作媒體
金寵物 綠植迷
法律顧問:ITLAW-莊毅雄律師