游戲機黑客披露了“實際上無法修補”的PS4/PS5 漏洞
知名的游戲機黑客 CTurt近日炮轟了PS4和PS5游戲機中一個“實際上無法修補”的漏洞,他詳細說明了一種概念驗證方法(https://www.youtube.com/watch?v=GIl1mR0HLnc),這種方法允許在索尼游戲機上安裝任意的自制應用程序。
CTurt表示,一年前他通過漏洞懸賞計劃向索尼披露了他編寫的漏洞利用工具Mast1c0re,但看不到索尼發布補丁的跡象。這種攻擊方法利用了在PS4(和 PS5)上運行某些PS2游戲的模擬器所使用的即時(JIT)編譯中存在的錯誤。這種編譯為模擬器提供了特殊權限,可以在應用程序層本身執行PS4就緒的代碼(基于原始的S2代碼)前一刻不斷寫入代碼。
如果黑客控制該進程的兩端,就可以編寫系統認為合法且安全的特權代碼。CTurt談到PS4網絡瀏覽器上的一個此后已修補的JIT漏洞時說:“由于我們將JIT系統調用用于預期用途,這其實不是漏洞,而是巧妙的花招。”
趁虛而入
為了控制模擬器,黑客理論上可以利用存在于幾十年前的PS2游戲中任意數量的已知漏洞。雖然其中一些漏洞只需摁下按鈕即可激活,但大多數漏洞需要使用一款已知的可被利用的游戲,訪問存儲卡上特殊格式的保存文件,從而導致緩沖區溢出,進而可以訪問原本受保護的內存(多年來類似的漏洞被用于PSP和任天堂3DS黑客攻擊)。
不過這種方法有點受限制,因為PS4和PS5無法直接識別標準的PS2光盤。這意味著任何可被利用的游戲都必須是這種形式:可以通過PSN下載的PS2-on-PS4游戲,或者是通過Limited Run Games等游戲發行商以與PS4兼容的物理光盤形式發布的少數PS2游戲。
將可被利用的PS2保存文件放到PS4上也不是簡單的過程。CTurt不得不使用已經被黑入的PS4,對修改后的Okage Shadow King保存文件進行數字簽名,讓它可以與他的PSN ID協同使用。然后CTurt使用系統的USB保存導入功能,將該文件導入到目標系統上。
基本工作到位后,CTurt逐步演示了一系列復雜的緩沖區及堆棧溢出、存儲器泄漏以及用來控制PS2模擬器的內存漏洞利用工具。獲得這種控制權后,他能夠訪問內置加載程序功能,通過本地網絡傳輸單獨的PS2 ISO文件,然后告訴模擬器通過虛擬光盤加載該游戲。
雖然將其他PS2游戲加載到模擬器中很好,但CTurt的真正目的是以此作為跳板,進而在系統上運行任意的自制代碼。
CTurt告訴媒體,黑客仍然需要利用單獨的(并且可能是可修補的)內核漏洞來獲得對PS4的“全面控制”。但是mast1c0re漏洞利用工具本身應該足以運行復雜的程序,包括JIT經過優化的模擬器,甚至可能一些盜版的商業PS4游戲。理論上來說,Mast1c0re還可以用作黑入PS5虛擬機管理程序的跳板,該虛擬機管理程序控制這款游戲機上的低級系統安全。
發現不了,就修補不了
雖然過去曾出現過PS4自制漏洞利用工具,但索尼一直在竭力發布固件更新,旨在使這些工具至少有些過時。但CTurt強調,索尼幾乎不可能堵住造就mast1c0re的漏洞。這是由于這種可被利用的PS2模擬器版本與市面上每一款PS2-on-PS4游戲打包在一起,而不是作為游戲機操作系統的核心部分單獨存儲。
如果是物理PS2-on-PS4光盤,這意味著只要你在播放前拒絕任何在線更新,該漏洞應該會繼續帶來風險。如果是數字版本,即使該漏洞后來被修補,也有方法可以使用來自本地服務器的代理HTTP流量,降級到存儲的、可被利用的版本。
CTurt表示,嚴格上來講,它并非完全無法修補——但這款游戲機就是這么設計的,索尼不會改變它。一旦你擁有可被利用的游戲(數字版或物理版),索尼就很難從你的游戲機刪除游戲或修補游戲。
PS2仿真“從根本上有悖于[索尼]自己的安全模型,因為它使特權代碼沒有現成的機制來修補未來的潛在漏洞”,CTurt寫道。
雖然任天堂從任天堂eShop刪除了可被利用的3DS游戲,試圖盡量減小公開黑客活動造成的破壞,但CTurt特別指出,索尼尚未從PSN刪除可被利用的PS2游戲。CTurt還特別指出:“PlayStation在報道一年后對我作出的官方回應是,他們決定不嘗試修補這條攻擊鏈。”
這一切都表明mast1c0re漏洞可能會繼續存在。雖然目前這只是一種概念驗證而已,但PlayStation黑客界似乎將來很可能會再接再厲0,在開發PS4和PS5自制代碼方面創造眾多的機會。
本文翻譯自:https://arstechnica.com/gaming/2022/09/console-hacker-reveals-ps4-ps5-exploit-that-is-essentially-unpatchable/如若轉載,請注明原文地址。