簡介:
Google Play Store 上有一款名為 SHAREit 的應用程式。最近被 Trend Micro 的資安研究人員發現漏洞,不僅可以洩漏使用者敏感資訊,甚至可達到 RCE 攻擊。 SHAREit 在 Google Play Store 上已有十億次下載。
漏洞資訊:
透 過 解 析 應 用 程 式 的 程 式 碼 , 其 中 它 將 廣 播 接 收 命 名 com.lenovo.anyshare.app.DefaultReceiver 。 它 接 受 了 com.ushareit.package.action.install_completed 與 Extra Intent 在呼叫 startActivity() 這個函式。任何 app 都可以利用這個廣播元件來顯示 SHAREit 的內外部 app 活動。 另 外 , 它 也 定 義 了 FileProvider , 開 發 者 將 輸 出 屬 性 關 閉 ( 通 過 設 定 android:exported="false" ) , 但 卻 開 啟 了 android:grantUriPermissions="true" 這個屬性,讓第三方可以獲取短暫的讀取和存取權限。開發者還讓可以開放存取的範圍非常大,只要 是在 /data/data/ 底下的路徑都可以做存取。 研究人員也發現該應用程式在 dex2oat 首次執行後便會生成 vdex/odex,而在應用程式執行的時候會使用到這些文件,只要攻擊者可以 構造出帶有惡意程式碼的 vdex/odex 就可以用來執行。 內部程式也有設定可以下載符合來自 http/https 協定以及網域名稱符合 *.wshareit.com 或是 gshare.cdn.shareitgames.com 的 sapk 檔 案。以下程式碼是相關研究人員利用 Intent 來 bypass 出惡意的 payload,可以用來下載惡意程式。
由於 SHAREit 是可以直接下載到內存 SD card 的,因此可以透過以上方法對內存進行讀取與存取。
修補方式:
在 2021 年 2 月 23 日,官方已經釋出新版本來修補以上漏洞。
參考資料:
SHAREit Flaw Could Lead to Remote Code Execution (trendmicro.com)