【ITBEAR】9月29日消息,在游戲行業的發展歷程中,外掛與反外掛的斗爭始終是一條核心線索。從早期的《石器時代》、《冒險島》到如今熱門的《絕地求生》、《CS2》,外掛如同游戲世界的“掘墓人”,嚴重破壞了游戲的公平性和環境。盡管玩家對諸如金山游俠、風靈月影等外掛工具津津樂道,但游戲廠商對此卻深感憂慮。
為了延長游戲的生命周期,各大游戲廠商在外掛打擊上各顯神通。騰訊游戲近期宣布了一項新的反作弊措施——反作弊預啟動模式,旨在提供一個更加安全、可靠的游戲環境。《穿越火線》和《無畏契約》將成為首批支持該功能的游戲,據騰訊游戲介紹,這一新模式將大幅降低作弊或賬號安全風險。
與傳統的騰訊游戲安全(Anti-Cheat Expert)方案相比,反作弊預啟動模式的主要創新在于其對玩家的保護從游戲啟動擴展到了整個操作系統的運行周期。這一模式會跟隨Windows操作系統開機啟動,并在操作系統啟動階段開始加載,而非與游戲一同啟動。
為何騰訊游戲要推出這一新模式?原因在于現有的反外掛、反作弊手段已經顯得力不從心。傳統的游戲外掛主要以軟件形式存在,它們利用游戲廠商為降低服務器計算壓力而將大量計算放在客戶端的特點,滲透到客戶端與服務器端的數據通訊中。針對網絡數據鏈路上的不同節點,誕生了內存掛、封包掛等多種外掛形式。因此,反調試、ROOT檢測、反HOOK、虛擬化、完整性驗證等也成為了目前反外掛工具的基本功能。
以騰訊的TenProtect為例,它采取內核驅動接管系統級別的權限,實現了禁止調試器、掃描硬盤、隱藏游戲進程等效果。盡管TenProtect在驅動層直接hack系統可能導致一系列不穩定現象,但在反作弊技術層面,它確實名列前茅。
然而,如今外掛軟件也迎來了新的挑戰,硬件級別的外掛開始出現。近年來,一種名為DMA的外掛席卷了FPS網游,從騰訊的《CF》、《無畏契約》到valve的《CS2》,再到EA的《APEX》和動視暴雪的《使命召喚》都未能幸免。而現有的反作弊工具如BettlEye、VAC以及TenProtect都對此束手無策。
DMA外掛利用直接訪問內存技術(Direct memory access)讀取和修改玩家的內存數據,并將數據導出到其他設備上顯示。其特點是不需要CPU的干預,直接服務于外設。黑產通過FPGA(現場可編程門陣列)開發板刷仿真固件,讓反作弊軟件認為搭載了外掛程序的硬件是正常的聲卡、網卡、硬盤。
DMA外掛的強大之處在于反作弊軟件只能覆蓋一臺開啟了該功能的設備,對于運行外掛程序的FPGA開發板無法實現有效監管。因為運行外掛的FPGA開發板通常都是插在另一臺電腦上的,開掛者往往是一臺電腦正常游戲,另一臺電腦則用于顯示對局中其他玩家的位置信息。
但游戲是運行在操作系統中,無法通過操作系統驗證硬件到底是什么,這就是DMA外掛的棘手之處。因此,DMA外掛完全有條件偽裝到無法被任何技術手段檢測到。然而,DMA外掛也有一個致命弱點,即它并不是Windows操作系統的一部分,所以也無法做到開機自動配置運行環境。
騰訊此次推出的反作弊預啟動模式正是針對DMA外掛的這一缺陷。當反外掛程序與Windows一起啟動,也就意味著電腦的桌面剛顯示出來,程序就已經在后臺運行了。這時候如果開掛玩家啟動DMA外掛,自然就會被抓住。但這一模式也并非沒有代價,不間斷地掃描硬盤會帶來不可忽視的性能開銷,電腦變卡幾乎是必然的結果。這一點是否值得,就看玩家們怎么想了。