Unity遊戲引擎內的安全漏洞

在過去8年以Unity遊戲引擎製作的遊戲都,都可能讓攻擊者進入用戶的電腦或智能電話,該引擎用作PC、Console和流動裝置遊戲的開發,受影響引擎為2017.01,作品覆蓋Android、Linux、MacOS和Windows平台。

Unity安全漏洞的運作方式

安全漏洞CVE-2025-59489可引致遊戲執行惡意編碼,或讓攻擊者存取裝置上的資料,攻擊者可以向遊戲傳送啟動參數,存在漏洞版本的Unity Runtime會處理程序複數指令進行偵錯,有這些指令,Unity引擎載任任何在指定啟動參數的library,包括惡意的內容,它可以載入Windows的.dll檔案、Android和Linux的.so library和macOS上的.dylib。如此一來,較低權限的惡意應用程式可以啟動具有啟動參數的遊戲,讓它下載和執行惡意library,而且擁有相同權限和存取遊戲自身。

另一種攻擊利用這個安全漏洞可以從遠端進行,如果遊戲可以點擊瀏覽器上的某超連結,遊戲就能啟動(遊戲必需登記為URI架構程序),惡意網站先遊說用戶下載惡意library檔案,然後以此library啟動具漏洞的遊戲。利用這安全漏洞的危險性很大程度取決於遊戲設定,OS版本和設定,但Unity、Valve和Microsoft一致建議更新所有系統上的遊戲。

遊戲安全漏洞的危險

利用上述的安全漏洞可以提升權限和繞過防護,一個不知名的應用程式在現代操作系統內,通常會被與其他隔離,並且禁止存取敏感資訊,但它仍能啟動已安裝的應用程式,所以當遊戲以攻擊者準備的參數啟動遊戲,它便會讀取惡意library,這library和防護機制被系統視為遊戲的一部份,擁有相同權限和存取遊戲自身,可以躲在防毒軟件的偵測之下,遊戲有時需要系統內的相對高級權限,使攻擊者即使不是裝置上的管理員也是「被尊敬的使用者」。

安全漏洞有在現實世界用作攻擊嗎?

Unity強調,有關的漏洞由道德駭客發現,至今沒有證據顯示被用作真實攻擊,但安全漏洞被公佈之後,有心的黑客可能在數天之內就裝備CVE-2025-59489,所以採取預防措施不無道理。

修復安全漏洞

主要的工作由遊戲開發商完成,更新Unity編輯器,使用修改版本的Unity Runtime重新編譯遊戲,並在網站或應用程式商店上發佈。用戶應該留意及定期更新他們的Unity引擎的遊戲。Valve已經更新Steam的客端和修復透過客端執行的遊戲,現在會對上述危險參數的遊戲會被封鎖。Microsoft已確定安全漏洞並不影響Xbox版本的遊戲,但提供了其他平台上受影響遊戲的清單,並建議移除未被修復漏洞的遊戲。

除了更新遊戲,玩家應該確定電腦和智能電話,受到可靠的防護方案保護,不但能防範很多安全漏洞被利用,也防止執行惡意程式的第一階段執行。

如果遊戲不再更新該如何修復漏洞

如果開發商不再支援遊戲,Unity提供Unity Application Pacher應用程式,它偵測遊戲正在使用的Unity版本,並下載更新的library修復漏洞,補丁後的遊戲仍需要在網站或應用程式商店上重新發佈。玩家方面,只要Windows版本的補丁工具有效,因為要維持遊戲的運作之餘更改遊MacOS或Andorid的遊戲元件十分困難。

資料來源:Kaspersky Blog