主要發現
iVerify 最近發現了一個名為「Showcase.apk」的 Android 應用程式包,自 2017 年 9 月以來,全球出貨的大量 Pixel 裝置中預裝了這個應用程式。該應用擁有過多的系統權限,包括遠端代碼執行和遠端安裝套件的能力,給裝置帶來極大的安全風險。
- 不安全的下載方式:Showcase.apk 透過不安全的 HTTP 協議從美國的一個 AWS 伺服器下載配置文件,這使得配置文件易受攻擊,從而讓裝置易於被攻擊者利用。
- 中間人攻擊風險:這個漏洞讓數百萬台 Android Pixel 裝置容易受到中間人攻擊 (MITM),網絡犯罪者可以藉此注入惡意代碼或安裝間諜軟體。
- 無法簡單卸載:目前,使用者無法透過標準的卸載程序移除此應用程式,谷歌也尚未針對這個漏洞提供修補程式。
- 預裝於系統中:Showcase.apk 似乎預裝在 Pixel 韌體中,並包含在谷歌 OTA 映像檔內,雖然該應用預設未啟用,但有多種方法可以將其啟用。
事件背景
今年早些時候,iVerify 在 Palantir Technologies 的一台 Android 裝置上發現了安全問題,隨即與 Palantir 和 Trail of Bits 展開了調查。調查顯示,這個應用程式包 Showcase.apk 是 Pixel 韌體的一部分,一旦啟用,便可能會讓操作系統暴露在駭客攻擊之下,並易於遭受中間人攻擊、代碼注入和間諜軟體的侵害。這個漏洞可能會導致數十億美元的資料損失。iVerify 已根據其 90 天的披露過程向谷歌提交了詳細的漏洞報告,但目前尚不清楚谷歌何時會發布補丁或移除此軟體。
Showcase.apk 的技術分析
- 系統級運行:Showcase.apk 的代碼在系統層級運行,並設計為將手機轉變為展示裝置,這改變了操作系統的正常運作方式。由於該應用程式運行在高度特權的上下文中,這遠遠超出了其設計目的所需的權限。
- 未驗證的域名:應用程式在檢索配置文件時,未能對靜態定義的域名進行身份驗證或驗證。如果應用程式已經保持持久的配置文件,尚不清楚是否有額外的檢查來確保指令和控制或文件檢索的配置參數是最新的。
- 不安全的變量初始化:應用程式在進行證書和簽名驗證時使用不安全的預設變量初始化,導致在驗證失敗後仍被視為有效。
- 文件下載漏洞:應用程式透過不安全的 HTTP 協議與預定義的 URL 通信,以檢索遠端文件和配置文件,這使得網絡犯罪者能夠輕易地預測並利用這些弱點。
結論
Showcase.apk 的發現,再加上如在 Microsoft Windows 上運行第三方內核擴展的其他高知名度事件,強調了在操作系統中運行第三方應用程式的透明度和討論的重要性。這也顯示出進行品質保證和滲透測試的必要性,以確保安裝在數百萬裝置上的第三方應用程式的安全性。
此外,谷歌為何要在每台 Pixel 裝置上安裝這個僅在少數裝置上需要的 Showcase.apk 仍然是個謎。由於這個安全問題的嚴重性,協助發現此問題的 Palantir Technologies 正計劃逐步淘汰其移動設備中的 Android 裝置,並在未來幾年內全面轉向 Apple 裝置。在大多數 iVerify 研究人員分析的裝置上,這個應用程式預設處於未啟用狀態,且需要手動啟用。為了避免危害用戶,我們已在完整報告中刪除了有關啟用應用程式的方式。可能還有其他方式啟用該應用,或者存在預設啟用的情況。