Re: [情報] 遊戲引擎Unity爆重大安全漏洞
昨天剛好看到漏洞發現者 RyotaK 寫的技術細節,簡單講一下
有技術背景的可以自己看:
https://flatt.tech/research/posts/arbitrary-code-execution-in-unity-runtime/
在 Android 上,手機 app 可以透過發起一個叫 intent 的東西打開另一個 app
打開的時候可以傳參數過去
而 Unity 在這部分沒有處理好,導致會直接載入其他 app 傳來的程式碼
因此一個惡意 app 就可以透過這種方式,再利用 Unity 包出來的遊戲執行程式碼
這是第一種攻擊方式
再強調一次
攻擊前提是:你先裝了一個惡意 app,再透過這個惡意 app 攻擊 Unity 引擎
攻擊成功之後,就看你原本遊戲有什麼權限,就可以拿到什麼權限
但由於你要先裝一個惡意 app
在你裝惡意 app 的時候,它其實本來就可以做很多事了,不需要透過 Unity
透過 Unity 就只是可以偷到這個 app 的更多資料,或是拿到更多權限
例如說 app 通常只有自己能存取自己的東西
因此透過 Unity 這個漏洞,可以讓其他 app 來把你東西偷走
第二種攻擊方式是,有些 app 會可以利用 URL 去發這個 intent
就不需要先裝惡意 app(這個不是預設的設置,需要開發者自己加上)
但由於 Android 本身的權限問題,會阻擋一些可疑位置的檔案載入
所以還需要搭配 app 本身的機制,想辦法讓攻擊者能夠寫一個檔案
接著再載入這個檔案才行
換句話說,假設一個遊戲要有問題,它本身的機制必須能讓攻擊者去寫入檔案
原文給的案例是 Facebook Messenger 的快取可以被攻擊者控制,利用它寫檔案
但遊戲的話應該就是 case by case 了,要先找到能控制寫檔案的方法
才有辦法寫入惡意程式碼,然後利用 URL 執行
總結一下,根據作者自己的技術細節,攻擊要成立的前提是:
1. 你已經裝了一個惡意 app
或是底下三個條件同時滿足:
1. 遊戲支援透過 URL 的方式打開
2. 攻擊者可以透過遊戲本身的機制,寫一個檔案並控制內容
3. 你點了一個惡意 URL,觸發 Unity 漏洞
由於文章只有寫到 Android 的,因此不太確定其他平台的細節
這漏洞之所以嚴重,是因為被觸發之後就可以控制 Unity 打包出來的 app
但觸發條件是否容易,就看大家怎麼想了
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.193.112.69 (日本)
※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1759572390.A.698.html
推
10/04 18:07,
1月前
, 1F
10/04 18:07, 1F
→
10/04 18:07,
1月前
, 2F
10/04 18:07, 2F
推
10/04 18:09,
1月前
, 3F
10/04 18:09, 3F
推
10/04 18:09,
1月前
, 4F
10/04 18:09, 4F
推
10/04 18:10,
1月前
, 5F
10/04 18:10, 5F
推
10/04 18:10,
1月前
, 6F
10/04 18:10, 6F
→
10/04 18:10,
1月前
, 7F
10/04 18:10, 7F
推
10/04 18:12,
1月前
, 8F
10/04 18:12, 8F
推
10/04 18:12,
1月前
, 9F
10/04 18:12, 9F
→
10/04 18:12,
1月前
, 10F
10/04 18:12, 10F
推
10/04 18:12,
1月前
, 11F
10/04 18:12, 11F
→
10/04 18:12,
1月前
, 12F
10/04 18:12, 12F
推
10/04 18:13,
1月前
, 13F
10/04 18:13, 13F
推
10/04 18:13,
1月前
, 14F
10/04 18:13, 14F
→
10/04 18:14,
1月前
, 15F
10/04 18:14, 15F
→
10/04 18:14,
1月前
, 16F
10/04 18:14, 16F
推
10/04 18:14,
1月前
, 17F
10/04 18:14, 17F
推
10/04 18:15,
1月前
, 18F
10/04 18:15, 18F
目前是還沒看到 web 相關的平台有問題,web 原本就沒辦法繞過瀏覽器執行指令
推
10/04 18:16,
1月前
, 19F
10/04 18:16, 19F
推
10/04 18:16,
1月前
, 20F
10/04 18:16, 20F
推
10/04 18:17,
1月前
, 21F
10/04 18:17, 21F
推
10/04 18:18,
1月前
, 22F
10/04 18:18, 22F
推
10/04 18:19,
1月前
, 23F
10/04 18:19, 23F
→
10/04 18:20,
1月前
, 24F
10/04 18:20, 24F
推
10/04 18:20,
1月前
, 25F
10/04 18:20, 25F
推
10/04 18:30,
1月前
, 26F
10/04 18:30, 26F
→
10/04 18:30,
1月前
, 27F
10/04 18:30, 27F
→
10/04 18:30,
1月前
, 28F
10/04 18:30, 28F
→
10/04 18:30,
1月前
, 29F
10/04 18:30, 29F
看起來是這樣沒錯,我的理解也差不多
推
10/04 18:30,
1月前
, 30F
10/04 18:30, 30F
推
10/04 18:31,
1月前
, 31F
10/04 18:31, 31F
→
10/04 18:31,
1月前
, 32F
10/04 18:31, 32F
→
10/04 18:31,
1月前
, 33F
10/04 18:31, 33F
※ 編輯: Y78 (61.193.112.69 日本), 10/04/2025 18:33:52
推
10/04 18:35,
1月前
, 34F
10/04 18:35, 34F
→
10/04 18:36,
1月前
, 35F
10/04 18:36, 35F
推
10/04 18:37,
1月前
, 36F
10/04 18:37, 36F
→
10/04 18:37,
1月前
, 37F
10/04 18:37, 37F
→
10/04 18:38,
1月前
, 38F
10/04 18:38, 38F
→
10/04 18:38,
1月前
, 39F
10/04 18:38, 39F
準備個惡意檔案倒是可以透過這些來準備,但是要把啟動參數傳進去的話
可能就要看個別 app 了?如果能傳啟動參數,代表本來就可以執行指令了
(在電腦上的話啦),可能就是做為一種提權的手段
推
10/04 18:40,
1月前
, 40F
10/04 18:40, 40F
推
10/04 18:42,
1月前
, 41F
10/04 18:42, 41F
→
10/04 18:42,
1月前
, 42F
10/04 18:42, 42F
→
10/04 18:42,
1月前
, 43F
10/04 18:42, 43F
推
10/04 18:43,
1月前
, 44F
10/04 18:43, 44F
推
10/04 18:44,
1月前
, 45F
10/04 18:44, 45F
→
10/04 18:44,
1月前
, 46F
10/04 18:44, 46F
推
10/04 18:45,
1月前
, 47F
10/04 18:45, 47F
→
10/04 18:50,
1月前
, 48F
10/04 18:50, 48F
推
10/04 18:51,
1月前
, 49F
10/04 18:51, 49F
推
10/04 18:53,
1月前
, 50F
10/04 18:53, 50F
推
10/04 19:06,
1月前
, 51F
10/04 19:06, 51F
推
10/04 19:07,
1月前
, 52F
10/04 19:07, 52F
→
10/04 19:07,
1月前
, 53F
10/04 19:07, 53F
※ 編輯: Y78 (61.193.112.69 日本), 10/04/2025 19:12:58
推
10/04 19:11,
1月前
, 54F
10/04 19:11, 54F
推
10/04 19:27,
1月前
, 55F
10/04 19:27, 55F
推
10/04 19:37,
1月前
, 56F
10/04 19:37, 56F
推
10/04 19:50,
1月前
, 57F
10/04 19:50, 57F
→
10/04 19:50,
1月前
, 58F
10/04 19:50, 58F
→
10/04 19:51,
1月前
, 59F
10/04 19:51, 59F
→
10/04 19:51,
1月前
, 60F
10/04 19:51, 60F
推
10/04 20:09,
1月前
, 61F
10/04 20:09, 61F
推
10/04 20:12,
1月前
, 62F
10/04 20:12, 62F
推
10/04 20:15,
1月前
, 63F
10/04 20:15, 63F
推
10/04 20:26,
1月前
, 64F
10/04 20:26, 64F
推
10/04 20:39,
1月前
, 65F
10/04 20:39, 65F
推
10/04 20:45,
1月前
, 66F
10/04 20:45, 66F
→
10/04 20:46,
1月前
, 67F
10/04 20:46, 67F
是的就是那個,有點長就懶得看了:https://reurl.cc/MzEp13
跟這個洞本身關係不大就是了,只是關於透過 app 控制檔案寫入的地方可以參考
※ 編輯: Y78 (61.193.112.69 日本), 10/04/2025 20:49:56
推
10/04 20:48,
1月前
, 68F
10/04 20:48, 68F
推
10/04 21:01,
1月前
, 69F
10/04 21:01, 69F
→
10/04 21:01,
1月前
, 70F
10/04 21:01, 70F
→
10/04 21:02,
1月前
, 71F
10/04 21:02, 71F
→
10/04 21:03,
1月前
, 72F
10/04 21:03, 72F
→
10/04 21:03,
1月前
, 73F
10/04 21:03, 73F
→
10/04 21:04,
1月前
, 74F
10/04 21:04, 74F
→
10/04 21:05,
1月前
, 75F
10/04 21:05, 75F
→
10/04 21:08,
1月前
, 76F
10/04 21:08, 76F
→
10/04 21:08,
1月前
, 77F
10/04 21:08, 77F
推
10/04 21:14,
1月前
, 78F
10/04 21:14, 78F
→
10/04 21:14,
1月前
, 79F
10/04 21:14, 79F
→
10/04 21:15,
1月前
, 80F
10/04 21:15, 80F
→
10/04 21:19,
1月前
, 81F
10/04 21:19, 81F
→
10/04 21:19,
1月前
, 82F
10/04 21:19, 82F
→
10/04 21:20,
1月前
, 83F
10/04 21:20, 83F
→
10/04 21:21,
1月前
, 84F
10/04 21:21, 84F
推
10/04 21:30,
1月前
, 85F
10/04 21:30, 85F
推
10/04 22:31,
1月前
, 86F
10/04 22:31, 86F
推
10/04 22:43,
1月前
, 87F
10/04 22:43, 87F
推
10/05 00:06,
1月前
, 88F
10/05 00:06, 88F
→
10/05 01:14,
1月前
, 89F
10/05 01:14, 89F
推
10/05 01:29,
1月前
, 90F
10/05 01:29, 90F
推
10/05 10:12,
1月前
, 91F
10/05 10:12, 91F
推
10/05 10:48,
1月前
, 92F
10/05 10:48, 92F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 4 篇):
177
342
C_Chat 近期熱門文章
11
16
PTT動漫區 即時熱門文章