今天小編分享的遊戲經驗:“安全無小事”:當遊戲遭遇安全問題,應該怎麼做?,歡迎閱讀。
2024 年 3 月 5 日,NS 模拟器 "Yuzu" 作者 Tropic Haze 宣布與任天堂達成和解,支付 240 萬美元賠償金,停止後續模拟器開發和運營工作,并關閉了相關網站。
盡管許多玩家埋怨,如果不是 NS 機器的性能差,他們也不會去使用模拟器。但在玩家版權意識日益提高的今天,幾乎不會有人反駁 " 破解遊戲違法 " 這個事實," 遊戲安全 " 不僅與遊戲廠商相關,也與玩家緊密相連。
一些玩家擔心自己因使用過 Yuzu 模拟器而被任天堂事後清算
實際上," 遊戲安全 " 在遊戲行業裡占據着十分重要的位置,不論是玩家還是從業者,幾乎每天都要和它打交道。不過,人們平時對它的讨論并不算多,這是因為 " 遊戲安全 " 有一定的技術壁壘。
在國内,遊戲安全幾乎直接和大廠挂鉤,由于安全團隊的成本較高,只有大廠具備足夠的财力。大廠可以在安全事故發生前就做好充分的預案,而另一方面,同樣占據行業内大部分位置的中小廠和獨立開發者,在面臨各種各樣的安全問題時,往往難以作出合适的應對。
為此,我們找到了一家專注于遊戲加固及反外挂的高科技安全服務商 FairGuard,共同找出了一些較為貼近遊戲玩家與從業者、曝光在大眾視野中的遊戲安全案例,并從專業視角進行分析。我們希望能借此讓大眾較為全面地了解到遊戲安全的具體操作、作用和意義。
DDoS
在遊戲安全領網域,專業性最差、但最常見的案例類型是 DDoS 攻擊(分布式拒絕服務攻擊)。出于它的特性,中小廠商、獨立開發者較容易遭受這類攻擊。
例如,今年 2 月 29 日上線的手遊《雷索納斯》就遭受到了名為 ACCN 組織發起的 DDoS 攻擊。遊戲不得不延遲開服 1 小時,許多玩家反饋首日遊戲很卡,每看一句台詞,要卡上 10 幾秒才能進入到下一句。ACCN 的主要手段是要求項目組繳納 " 保護費 ",不交就會保持攻擊。無獨有偶,一款用戶有 7 位數的手遊也在開服節點遭受 DDoS 攻擊,如果不及時解決,所造成的損失難以估量。
究竟是玩家太多還是遭受了攻擊,可以從後台數據直觀地觀察出來
DDoS 攻擊的基本原理是,攻擊方通過大量的 " 飼料雞 "(由黑客遠程控制的電腦)去占滿遊戲伺服器的帶寬或者 CPU。如果把遊戲伺服器比作飯店的話,就像是飯店剛開門,突然有一群人來到飯店門口把門擋住,正常的食客擠不進來,又或者是這群人進了飯店占掉大部分桌子,不停地叫服務員點菜,服務員又趕不走他們,其他的食客也受到影響。
為了提高賺錢的效率,利用 DDoS 攻擊進行勒索的往往是分工明确的工作室(如 ACCN 組織)。一部分人會專門去 " 找 " 将要上線的遊戲,記錄遊戲的體量、類型和上線時間,另一部分人會根據這些記錄來發動攻擊,可能還會有專門的一批人負責與各個遊戲項目組進行聯絡,确認收款。
負責收錢的 " 專人 "
這些行為當然是違法的,但項目組很難溯源與追責。一是此類組織的成員可能都不在國内,伺服器 IP 地址又中轉了幾道;二是攻擊者一般采用比特币等虛拟貨币交易。
每年,TapTap 等遊戲平台上都有大量開發者被 ACCN 組織勒索的公告消息,盡管一些平台和發行方會提供防護服務,但對于開發者來說," 不怕賊偷,就怕賊惦記 ",來自暗處、不知何時會出現的攻擊始終是一種隐患。
從技術型防護的角度來說,DDoS 攻擊只是錢的問題。遊戲的體量不同,攻擊的流量也會有大小區别,畢竟 " 殺雞焉用牛刀 ",攻擊也需要花費成本,如果沒平衡好這個度,很可能就會做虧本的買賣。
" 飼料雞 " 的成本低,但防 " 飼料雞 " 的成本高。比如攻擊者利用 " 飼料雞 " 對遊戲伺服器造成 200G 的流量攻擊,那麼遊戲項目組可能要去買 200G 的公有雲(例如騰訊雲、阿裡雲)資源來進行防護,前者成本可能只要幾百元,後者則需要幾萬元。
騰訊雲上的防護產品
攻擊者往往取兩者中間值偏下一些的金額作為 " 保護費 ",但項目組不能保證對方是誠實的。如果攻擊者 " 盜亦有道 ",只收一次保護費,項目組還能勉強接受;但如果對方覺得你是 " 肥羊 ",就會一次又一次地勒索。很多時候項目組不敢賭,但是又沒錢去買專門的防護服務,只能乖乖交錢。
對此,相對專業的建議是增強安全意識。一部分開發者沒有預防的概念,往往是事發之後亡羊補牢,而遭受第一次 DDoS 攻擊後損失的盈利反而比提前防護花的錢更多,得不償失。
根據專業安全服務商總結的經驗,成本較低的方法是,只要項目組在上線的頭一個月購買公有雲資源或相應的防護服務,後面就基本不會再有工作室來發動 DDoS 攻擊。小體量的遊戲花較少的錢,就能直接解決可能造成重大損失的問題。
外挂
相對于 DDoS,一般人對外挂的了解可能更多一些,也更關注外挂對自身遊戲體驗的影響。
有的外挂能夠監控或直接修改遊戲檔案,會對遊戲生态造成嚴重破壞。FPS 遊戲因品類熱度高、作弊收益大,以及數據儲存在客戶端,一直以來都是遊戲黑灰產攻擊的重災區。
例如去年《穿越火線》職業戰隊 " 假賽 " 事件中,戰隊方請了主播團隊,讓他們在開挂的環境下和職業選手進行對局,并通過後續線下約戰、洗白的方式來炒作。玩家們發現,主播團隊使用的外挂隐蔽性極高,如果不是因為完勝了職業選手,很難讓人聯想到使用了外挂。在相關報道中,這種挂又稱 " 主播定制挂 "。
" 主播定制挂 " 有兩大特點,一是恰到好處的功能閹割,二是有外力介入的防檢測手段。前者是為了讓主播能夠在技術方面 " 錦上添花 ",在對局中又能提供足夠好的 " 效果 "。比如 " 鎖定 " 功能需要在敵人現身、準星又離敵人身體很近的時候才能觸發,肉眼難以分辨這種微小的移動痕迹是不是出自外挂。至于後者——做 " 主播定制 " 服務的團隊往往會将特殊設備和外挂一起售賣,外挂放在設備裡,讓官方的檢測手段在一定程度上失靈。
如果不是太高調,開 " 主播定制挂 " 很難被人發現
從防護的角度來說,遊戲廠商往往是先拿到外挂樣本,用外挂樣本中類似識别碼的形式在玩家對局中進行預防檢測,假如某位玩家後台數據中出現了官方所掌握的識别碼,那麼官方就有權力采取措施,一般不會誤封。但主播定制挂的識别碼是單獨的,這套流程也就自然不管用了。
不過,玩家開挂的行為,就算常規流程檢測不出,官方也是可以進行人工判斷的,而人工判斷的依據是後台環境和玩家的一些行為數據——舉報在此刻便有了意義。
如果一個玩家收到了來自其他玩家的大量舉報,官方就會檢查他的後台環境和行為數據,并根據檢查的結果對其進行風險評級。評級的維度眾多,一般是看有沒有修改内存,或是否處于非常規的環境當中(例如虛拟機)。
安全團隊會把風險較高的玩家 ID 發送給項目組,由項目組決定後續采取的具體措施。有的玩家可能是 " 大 R",充了許多錢,直接封号有可能會引起法律糾紛,如果廠商拿不出足夠的 " 客觀證據 ",就會有較大概率輸掉官司。所以,一部分廠商會對 " 大 R" 睜一只眼、閉一只眼,對 " 小 R" 以下的玩家就是 " 寧可錯殺,不可放過 " 了。
比起主播定制挂," 腳本 " 的危害較小,但也會對遊戲的平衡性和生命周期造成直接影響。腳本往往出現在角色扮演、卡牌和策略類遊戲中,從防護角度來說,腳本是和工作室直接挂鉤的,有着經濟系統的 MMORPG 則是工作室的重災區。
腳本的作用是高效率地收集遊戲内資源,并将獲得的資源變現。從長遠角度來看,當遊戲内的資源被收集得過多,資源就會變得廉價,玩家們會傾向于找工作室買資源,而不是通過自己的遊戲勞動來 " 掙 " 資源。為了降低成本,腳本往往在虛拟機上或雲端運行,一個十幾人的工作室,可能同時開上千個腳本。也就是說,實際上,腳本是 " 殺不完 " 的。
腳本和工作室衍生出的另一種現象是 " 初始号 "。FairGuard 技術負責人陳士留和我談到了這件事:現在的二遊往往需要玩家通過遊戲中的重復勞動來換取成長性資源或角色,但是當遊戲運營了一兩年後,自建号的新人很難追上遊戲進度,向工作室購買 " 初始号 " 成為普遍選擇。
例如,2022 年 8 月 30 日,《蔚藍檔案》國際服運營商 Nexon 永久封禁了 28 萬個初始号,這些初始号不僅包括工作室手上的,還有許多已經流入玩家手中的。這在玩家群體中造成了 " 炎上 " ——玩家往遊戲裡課了金,又持續遊玩了一段時間,廠商封禁後卻不提供補償措施,玩家自然會質疑:為什麼廠商不對這種違規行為馬上處理,而是要過一段時間才處理呢?
Nexon 曾發布的封禁公告
陳士留告訴我,這是因為腳本并沒有修改遊戲内存數據,只是一種定式的 " 模拟點擊 ",刷小号、撸羊毛。所以,安全團隊需要從設備風險情況出發,并結合玩家上号後的行為判斷。比如說,玩家在一款手遊中做日常時,需要觸碰螢幕上的幾個固定位置,而手動操作和開腳本的用時和操作邏輯不一樣,在有後台防護的情況下,後台會馬上檢測到玩家的異常行為,并提示存在腳本風險。但和 FPS 的 " 主播定制挂 " 不一樣,二遊的聯機往往是 " 弱聯機 ",這種挂腳本刷資源的行為無法被舉報,遊戲廠商只能長期觀察,定期 " 一鍋端 "。
" 一鍋端 " 意味着滞後性,也就很難考慮賬号是否有玩家在正常遊玩,以及是否有充值行為。值得注意的是,玩家 " 炎上 " 的同時,遊戲因工作室減少而流水上升的例子也不少。
而在 " 初始号 " 的起源日本,很多廠商在漫長的 " 炎上 " 生涯中,已經默許了初始号的存在,與工作室結成 " 共生 " 關系。有些遊戲可能體量不大,缺少新人流入,初始号甚至起到了為開發商節省一些渠道、宣發成本的作用。只要不直接影響到其他玩家的體驗,有些開發商會容忍一些輕微修改遊戲内存的行為,例如 " 變速挂 "。
另一些廠商采取的是 " 民不舉、官不究 " 态度。比如 MMORPG《最終幻想 14》的 "ACT" 插件,如果玩家只使用它的 " 傷害監測 "" 機制播報 " 功能,官方并不會主動幹預,畢竟這種插件确實改善了玩家的遊戲體驗。但原則上說,遊戲不允許使用外挂,倘若拿着相應的檢測數據去 " 出警 " 其他玩家,大概率會被官方封禁。
《最終幻想 14》中的 " 出警 " 插件
總體來說,是不是外挂、封不封玩家,需要具體情況具體分析。對于玩家來說,只要按照正常流程遊戲,那麼一定不會被封禁。在這個過程中,廠商需要反思的是,自己的遊戲設計和版本規劃是不是存在不合理的地方,玩家是不是必須要靠某種軟性外挂(腳本)才能獲得良好的體驗?如果情況屬于此類,那在廠商采取打擊措施後,被 " 炎上 " 也并不奇怪。
破解
嚴格意義上說,修改遊戲内存的外挂也屬于破解的一部分,但破解還有許多更嚴重的情況,而在遊戲安全領網域,防破解也是最需要重視的部分。
在破解方面,最典型的案例是《傳奇》私服。早年《傳奇》被破解,源碼洩露,有人别有用心地将源碼删删改改,再加上自己的伺服器,便成了私服。在黑灰產領網域,當一款遊戲被破解,破解成果必然會像病毒一樣迅速傳播。當私服能產生巨大利益時,許多人都會忽視法律,開始铤而走險。
正常情況下,遊戲開發商需要找到版權方請求授權,制作正版產品。私服則像是 " 偷稅漏稅 ",省了給版權方交錢的一步,私服的福利多,那麼玩正版的玩家就少了,所造成的損失也難以估量。
FairGuard 市場總監李雷表示,類《傳奇》手遊現在還有至少兩百億的產業鏈,年年都在打擊,但就是打不掉。
某小遊戲破解平台
當然,《傳奇》是因為代碼洩露和破解太早,才會出現私服叢生的情況。更為常見的 " 破解 ",是讓付費遊戲能夠免費遊玩。這也帶來了一系列連鎖問題:一些有内購的小遊戲遭到破解後,會被放到網上低價售賣,讓開發商和運營商遭受損失;在安裝包内嵌入一些程式,在安裝時收集玩家的個人信息,然後把信息拿去販賣盈利;在原有的内購部分植入非法廣告,達到既模仿正版、又能賺錢的效果;更有甚者,還會采取 " 訂閱制 ",系統化地盈利,遠遠超過了遊戲安全所能容忍的底線。
不過,破解整個遊戲的情況較少,而破解加密資源的情況比較多。舉例來說,遊戲裡的圖片、音頻、文本等等内容,都算是 " 遊戲資源 ",在遊戲上線之前,需要先将這些資源進行打包加密,一般遊戲廠商的加密手段比較低級,不得不委托第三方來進行進一步加密。
李雷提到,最近幾年内容型的二次元遊戲,關于這方面的需求陡然增加。一方面是因為二遊的美術成本越來越高,美術資源也成了最重要的項目資產之一,占據項目成本的大頭。而一旦美術資源被破解,很可能沒多久市面上就會有玩法框架更簡陋、但美術内容相似的競品出現——在法律意義上,構成遊戲抄襲、換皮的判定标準仍然較為嚴格,開發者可能意識到競品破解了自己的美術資源,但難以找到切實證據。
另一方面,資源被破解意味着 " 劇透 ",而 " 劇透 " 會在一定程度上影響遊戲社區生态,還可能間接幹涉到運營方的版本規劃。比如一款二遊将待售賣的角色資源提前放進遊戲中,被人提前破解并在相關社群中進行傳播,這個角色會在信息流中逐漸失去對玩家的吸引力,從而導致盈利額的減少。
李雷重點提到了去年《少女前線 2:追放》的資源洩露事件,也就是 " 雷蒙夫人 " 事件,這次資源洩露直接導致之後的輿論爆發,以至于開發商散爆網絡失去了玩家的信任。從防護視角來看,以 " 少前 2" 的體量,在遊戲資源方面出安全問題,是難以想象的。
去年 10 月,網上随處可見《少前 2》的解包内容
李雷表示:" 一般中、大型的遊戲,在開始測試的半年前就會聯系專業公司做加密工作了,PvE 或者比較‘單機’的手遊需要防止出現像‘少前 2 ’的情況,PvP 遊戲則要考慮到被破解的資源會不會被用來制作外挂。"
而在實際情況中,熱門遊戲資源一旦洩露,必定會被迅速且廣泛地傳播,雖然這種行為違法,但遊戲公司也很難向傳播者追責。到了這一階段,開發者應該做的,是盯緊自己的項目資源是否被拿來售賣或進一步惡意利用,以防損失擴大。
忽視
在交流過程中,我們總會提到一個問題:一些小型廠商或者獨立開發者很容易忽視安全問題,或者說有相關的認知,但是缺乏應對經驗。中大廠雖然在發展過程中多多少少積累了相關的經驗,但面臨更迭迅速、日益猖獗的黑灰產時也會有 " 栽跟頭 " 的時候。
其實,不管是現實還是遊戲,安全問題一直是大問題。作為開發者,應該做到的是盡量提前做好預案,避免出了問題再想辦法解決。
所謂預案,向專業團隊購買 " 外包服務 " 是一種選擇,但并不是全部。開發者應該在制作遊戲時就考慮一些設計的邏輯:會不會被不法分子利用?能不能從服務端做一些校驗工作,提高破解與外挂的侵入門檻?實際上,這些工作并不需要花費太多成本,更多是觀念和 " 用心 " 的問題。而在這個基礎上出了事,再找安全團隊進行處理,也可以在一定程度上避免更多的損失。
對于開發者來說,這樣的觀念和 " 用心 " 尤為重要。如果有一款優秀的遊戲,因為開發者欠缺安全意識,上線時連最基本的 DDoS 攻擊問題都不知道該怎麼應對,讓一個團隊幾年的努力化為泡影,這不僅僅是開發者個人的損失,也是遊戲行業的損失。