更多

    Fortnite Android 版 Beta 存漏洞 騎劫安裝程式原理知多啲

    Mickey Chan
    Mickey Chan
    愛模擬飛行、希望終有一日回到單車上的宅,眼鏡娘控。座右銘: 1.膽固醇跟美味是成正比的; 2.所有人都可以騙,但絕對不能騙自己; 3.賣掉的貨才是錢,不賣的收藏品不值一文; 4.踩單車,是為了吃更多美食! 5.正義的話語,不一定出自正義之人的口;

    Epic Games 公布《 Fortnite 》 Beta 版讓 Samsung Galaxy 手機用戶和受邀請玩家率先試玩,令 Android 手機用家興奮雀躍。不過今次測試版下載方法是採用邀請制,不是在 Google Play Store 上下載,而是到 Epic Games 的官方網站上下載。但就有人發現 Epic Games 提供的安裝程式存在漏洞,可以讓駭客有機可乘,安裝任意的惡意程式,並且在沒有通知用戶下取得手機存取權限。到底箇中原理是怎樣的?

    Samsung Galaxy 手機用戶和受邀請玩家可以在 Epic Games 下載《 Fortnite 》安裝程式率先試玩

    Google 在 8 月 15 日通知 Epic Games 發現這個漏洞的,而 Epic Games 就在 8 月 17 日推出了修正版。本來 Epic Games 是要求 Google 給予 90 時間才公開這個漏洞的,不過 Google 就決絕地表示由於修正檔已推出了 7 日,所以會以標準的慣例將漏洞的細節公開。 Epic Games 的 CEO Tim Sweeney 雖然感謝 Google 告知漏洞,不過他認為不少玩家都未進行更新, Google 這麼快公開漏洞細節實在太不負責任。

    有人在 Google 的舉報系統裡舉報《 Fortnite 》安裝程式存在漏洞
    有人在 Google 的舉報系統裡舉報《 Fortnite 》安裝程式存在漏洞

    那麼《 Fortnite 》 Android Beta 版安裝程式裡的漏洞是怎麼運作的呢?舉報的人是這樣解釋的:

    首先,由於這個程式不是經 Google Play Store 下載的,所以要安裝它就要開啟「允許安裝未知來源的應用程序」設定,這是 Google 不推薦的做法。

    然後,由於安裝程式要將《 Fortnite 》下載到外部儲存裡,所以本身就需要寫入外部儲存 WRITE_EXTERNAL_STORAGE 的權限。不過,原來得到了這個權限後,這個 App 就可以在下載和驗證程式後,立即將下載來的 APK 檔替換掉。所以只要用 Android 的 FileObserver 檔案監視物件,就可以立即將下載回來的檔案換成別的惡意程式,讓《 Fortnite 》安裝程式去安裝。

    在 Samsung 手機上,《 Fortnite 》安裝程式是透過一個私有的 Galaxy Apps API 來無聲無色地安裝 APK 的,這個 API 會檢查安裝了的 APK 檔的 Package 名稱是不是叫「 com.epicgames.fortnite 」,因此,惡意程式只要有同一個 Package 名稱就可以靜俏俏地安裝了。

    假如那個惡意 APK 還指定了 targetSdkVersion (目標 Android SDK 版本,本來是用作保證程式向前兼容的)在版本 22 或以下的話,惡意 APK 就可以在安裝時取得所有它請求的權限。

    [row][third_paragraph]

    駭客程式只需要有 WRITE_EXTERNAL_STORAGE 權限就可以伺機發動攻擊
    駭客程式只需要有 WRITE_EXTERNAL_STORAGE 權限就可以伺機發動攻擊

    [/third_paragraph][third_paragraph]

    先到 Galaxy Apps 去下載官方《 Fortnite 》安裝程式
    先到 Galaxy Apps 去下載官方《 Fortnite 》安裝程式

    [/third_paragraph][third_paragraph]

    啟動《 Fortnite 》安裝程式後就會開始下載《 Fortnite 》,過程中安裝程式需要存取檔案的權限。
    啟動《 Fortnite 》安裝程式後就會開始下載《 Fortnite 》,過程中安裝程式需要存取檔案的權限。

    [/third_paragraph][/row][row][third_paragraph]

    給予存取檔案權限後就會下載檔案,下載完了之後就會驗證,不過⋯⋯
    給予存取檔案權限後就會下載檔案,下載完了之後就會驗證,不過⋯⋯

    [/third_paragraph][third_paragraph]

    完成安裝,看來一直都是從官方網站下載《 Fortnite 》。不過⋯⋯
    完成安裝,看來一直都是從官方網站下載《 Fortnite 》。不過⋯⋯

    [/third_paragraph][third_paragraph]

    竟然變成了惡意程式!
    竟然變成了惡意程式!

    [/third_paragraph][/row][row][double_paragraph]

    手機還認為這個惡意程式是從 Galaxy Apps 下載回來的!

    [/double_paragraph][double_paragraph]

    惡意程式還已取得想要的權限,全程都沒有問過用戶。
    惡意程式還已取得想要的權限,全程都沒有問過用戶。

    [/double_paragraph] [/row]

    這種漏洞容許手機上的程式騎劫《 Fortnite 》安裝程式,去安裝惡意 APK ,並取得所有通常要用戶批准的權限,Google 稱這種漏洞叫做「 man in the disk (碟中人)」。

    [ot-video][/ot-video]

    如果你是 Samsung 手機用戶,又已安裝了,或是打算安裝《 Fortnite 》安裝程式的話,要注意幾點:

    1. 未安裝的話,只應該安裝官方的最新安裝程式,而不要胡亂到不知名網站下載不明來歷的安裝程式,因為就算不是惡意軟件也可能是舊版本的;
    2. 已安裝的話,一定要檢查更新,安裝 8 月 17 日後推出的版本。

    您會感興趣的內容

    相關文章