你可能知道,川普政府被禁止的美國公司與做生意華為幾個月前。最近華為出了大事智慧型手機發布, 這伴侶30專業版由於出口禁令,第一款沒有谷歌應用程式的華為手機發布。缺乏Google應用程式是該裝置上的一個嚴重污點,因為它現在發貨時沒有 Android 應用程式生態系統,也沒有 Play 商店、Gmail、Google 地圖、YouTube、Chrome、Google Assistant 等殺手級 Google 應用程式。ARS 鐵三角

這個故事最初出現在

技術藝術,技術新聞、技術政策分析、評論等的可信來源。Ars 由 WIRED 母公司 Condé Nast 所有。

像往常一樣,互聯網一直在想出解決方法來解決這個問題,以便在 Mate 30 Pro 上安裝 Google 應用程式。Google 應用程式的灰色市場分發是 Android 改裝領域的一門科學,並且很容易在通常不隨 Google 應用程式提供的東西上獲取 Google 應用程序,例如 Amazon Kindle Fire 設備、基於開源 Android 代碼(像 LineageOS),以及進口設備面向沒有谷歌的中國市場。

不幸的是,這些方法都不適用於 Mate 30 Pro。它們要么依賴未鎖定的引導程序,該加載程序允許用戶將 Google 應用程式刷新到通常只讀的系統分區,要么依賴系統中留下的“存根應用程式”由設備製造商專門為 Google 應用程式進行分區,因此旁加載版本可以獲得工作所需的系統級權限。Mate 30 不允許使用這兩種方法。

隨著所有傳統技術的出現,網路上將 Google 應用程式安裝到 Mate 30 上的全新方法是透過一個名為 Lzplay.net 的網站。您可以在幾乎所有主要 Android 新聞網站上看到宣傳該網站的新聞文章。我用谷歌搜尋“mate 30 pro 安裝 Play 商店,」並且實際上推薦了第一頁上的每個結果樂遊網。很容易理解為什麼 Lzplay 無處不在:訪問網站,安裝應用程序,混搭“下一步”幾次,然後,Google 應用程式就出現在您的華為設備上。

它似乎眨眼間就安裝了六個系統應用程序,幾乎沒有用戶互動。儘管谷歌應用程式不應該能夠獲得它們工作所需的系統級權限,但由於這個應用程序,它們以某種方式做到了。這就像魔法一樣。

Lzplay 速度快、操作簡單,而且就將 Google 應用程式安裝到您的華為裝置而言,它很有效。這也是我見過的最大的 Android 改裝安全噩夢。不,這並不誇張。

專業提示:不要將隨機的中文網站設定為智慧型手機的遠端管理員

Lzplay.net 插入 Android 的行動裝置管理 (MDM) API,該 API 適用於企業服務,例如安卓工作版,或您公司的 IT 部門。這是一個遠端管理 API,旨在讓您的 IT 部門完全控制公司發行的設備。目標是讓您的 IT 部門基本上能夠像您在設備面前一樣遠端控制設備,允許他們靜默安裝和卸載應用程式、更改鎖定螢幕密碼、遠端擦除設備,以及做一百萬件其他事情。

觀看任何影片指南下載應用程式後,您將看到“啟動裝置管理員?”螢幕彈出窗口,帶有一個巨大的滾動列表,詳細說明了所有可怕的權限。此時,您應該真正停下來思考一下,向未知實體授予這些權限是否是一個好主意。(完全不是。)

這組權限,曾經是稱為「設備所有者」的資訊只能提供給您100% 信任的實體:Google 的Android for Work 等應用程式、您公司的MDM 提供者為您公司發行的手機提供的應用程序,或者您可能擁有Android 驅動的資訊亭或您個人想要遠端管理的 IoT 裝置。這些選項都很好。不好的是將這些權限授予像 Lzplay.net 這樣的隨機網站。

照片:Michaela Handrek-Rehle/Bloomberg/Getty Images

沒有人知道誰或什麼擁有 Lzplay.net,因此沒有人知道該網站是否值得信賴,或者他們想從這一切中得到什麼。由於網站上沒有版權聲明或任何形式的所有權聲明,因此無法進行太多挖掘。whois 查詢顯示,該網站託管在中國大陸,並且僅在三個月前創建,但這些事實都沒有激發太多信心。

很多文章和影片都掩蓋了 Lzplay 的工作原理以及它可以存取多少權限。您訪問該網站,安裝 Lzplay 應用程序,然後授予其超強大的設備管理員權限,此時它會執行其操作並安裝 Google 應用程式。此時,大多數指南都會繼續討論您是如何完成的以及之後如何重置您的裝置。他們幾乎沒有人提到你如何仍然將這個 Lzplay.net 應用程式設定為你的裝置管理員,以及如何,除非你卸載它,否則你的手機將永遠擁有這個帶有後門的隨機第三方。卸載設備管理員應用程式也不像卸載普通應用程式那麼容易,除非您首先深入了解設定並首先以管理員身份將其刪除,否則您無法刪除該應用程式。

了解更多

連線指南開源

Android 改裝場景始終存在一些安全性問題。改裝通常涉及鼓勵人們安裝具有強大 root 權限的應用程序,如果他們願意,這些應用程式可能會對手機執行非常令人討厭的惡意操作。社群通常解決這個問題的方法是安裝開源應用程序,任何人都可以審核程式碼並查看它在做什麼,或者使用少數已經存在多年的受信任的根應用程式開發人員,已經向社會證明了自己。在安裝谷歌應用程式的情況下,正常的Google應用程式經銷商喜歡打開缺口將一次性軟體包刷入系統分區後就完成了。執行此操作的腳本是開源,並且您可以驗證它安裝的專有 Google 應用程式沒有被篡改,這要歸功於 Android 的 APK 簽名。

Lzplay.net 方法並沒有獲得任何這些社群安全網。正如我之前提到的,該網站已經成立三個月了,託管在中國,沒有人知道誰擁有它。然而,真正令人震驚的是整個遠端後門情況,假設你將 Lzplay 留在手機上,就像大多數指南建議的那樣。Lzplay 今天可能不會做任何惡意的事情,但由於它仍然具有設備管理員權限,明天它可以輕鬆地用比特幣礦工填充您的手機,遠端安裝勒索軟體,或磚砌您的手機。我根本不建議使用這種方法,並且將這個非常強大的應用程式永遠留在您的手機上是一個巨大的安全問題。

Lzplay疑點重重的手段及來歷

Lzplay 在過去一兩週內迅速崛起,部分原因是它非常適合將 Google 應用程式安裝到華為 Mate 30 上。Google 應用程式旨在存取僅限系統的權限,從而允許它們向其他應用程式提供服務。一個例子是統一的 Google 帳戶 APK,它處理所有其他應用程式的登入職責,而您無法將其作為普通的使用者空間應用程式來執行。由於 Google 應用程式始終作為系統分區上手機的一部分提供,因此依賴這些額外的權限就可以了。不過,你不能像普通應用程式那樣側載它們,而且由於 Mate 30 沒有允許用戶修改系統分區的解鎖引導程序,因此應該無法將 Google 應用程式放在 Mate 30 上。它發揮作用。如何?

答案很可疑。Lzplay 插入僅存在於華為 Mate 30 上的特殊權限,這些權限允許將側載應用程式標記為「系統」應用程序,並授予它們通常無法使用的權限。也就是說,華為增加了自己的後門,破壞了Android的權限系統,而Lzplay就利用了它。這一切發生得快得驚人:Lzplay.net 上線,文章在 Mate 30 發售之前就在網路上傳播開來。Mate 30 於 9 月 26 日在中國發布,但新聞文章在 9 月 23 日才開始流傳。

John Wu,Android 安全研究員和支援 root 的 Android 應用程式的開發者馬吉斯克,最近挖進Lzplay 應用程式和華為(中文!)開發人員文件可準確了解幕後情況。華為實現了Android的MDM API,但隨後為Lzplay等設備管理員應用程式添加了兩個額外的權限:「com.huawei.permission.sec.MDM_INSTALL_SYS_APP」大概是「安裝系統應用程式」和「com.huawei .permission.sec.MDM_INSTALL_UNDETACHABLE_APP」用於安裝任何「不可拆卸的應用程式」。

允許第三方應用程式修改系統分區將是特別可怕的,因為 Mate 30 上沒有可解鎖的引導程序,因此無法返回到新狀態。華為的「Install_sys_app」權限並沒有那麼糟糕——吳說,華為系統分區仍然是唯讀的,相反,第三方應用程式可以被標記為系統應用程序,但實際上不是系統應用程式。他們不進入系統分區,但他們仍然獲得系統級分區,這要歸功於華為的作業系統補充。

立即註冊

報名參加小工具實驗室通訊您可以使用新聞和評論。

這在有 Google Play 的手機上永遠不會發生,因為授權 Google Play 應用程式的要求之一是遵守Android 相容性定義文檔(CDD)。CDD 已完全編纂了許可系統的工作方式,以及您想要的章節引用第 9.1 節第 3 段:“保護等級為 PROTECTION_FLAG_PRIVILEGED 的權限必須僅授予預先安裝在系統映像特權路徑中的應用程式。”換句話說,如果你不在系統分割區,你就無法擁有系統級權限。華為這種提升系統權限的「標記」方式是被明確禁止的。

不過,由於沒有谷歌應用程序,CDD 不適用,華為可以做出任何它想要的破壞安全的改變。如果您想要一個真實的例子來說明為什麼 Google 的無數 Android 規則是必要的,請注意,OEM 只需發布一個非 Google 手機版本就可以破壞 Android 安全模型。

正如 John Wu 所寫,這個 API 並非只供任何第三方開發人員使用:

根據全中文文檔,第三方開發者/公司需要簽署法律協議並將其發送給華為才能獲得SDK的存取權限。對於每個項目,開發人員都必須提交請求以及理由以及願意授予的權限清單。此外,每個版本的APK二進位檔案都必須上傳到華為進行進一步檢查,然後最終可以使用華為的特殊金鑰進行簽署。

吳接著說:「從這一點來看,很明顯華為對這款『LZPlay』應用程式非常了解,並且明確地允許它的存在。這個應用程式的開發者必須以某種方式了解這些未記錄的API,簽署法律協議,經過幾個階段的審查,並最終讓該應用程式獲得華為的簽名。一切都完成了距離 Mate 30 公開發布至少還有三天。

華為已經被問到它是否支援 Lzplay,老實說,考慮到 Lzplay 的強大,這可能是最好的情況。不過,華為否決了這個想法,並發表了以下聲明:安卓中心:“華為最新的Mate 30系列沒有預裝GMS,華為也沒有與www.lzplay.net有任何關係。”

目前還不可能進行進一步的研究,因為正如 Wu 所寫,Lzplay 應用程式“被 QiHoo Jiagu (å¥èå åº) 混淆/加密,並且對於逆向工程而言並非易事。”所以有人不遺餘力地隱瞞了 Lzplay 正在做什麼,所以我們不知道它是如何運作的,也不知道它是誰製造的。

Lzplay 和 Mate 30 不確定的未來

在我寫這篇文章的整個過程中,我偶爾會刷新一下樂遊網看看它是否還活著。有時它會上升,有時它會下降,有時應用程式下載有效,有時則無效。該網站目前似乎正在經歷一些困難。目前尚不清楚原因。

在我撰寫本文時,圍繞 Mate 30 的 Google 生態系統似乎也在崩潰。一旦刷了Google應用,Mate 30就莫名其妙地通過了谷歌的“安全網”對早期審查單元進行設備完整性檢查,這是運行 Google Pay 和一些銀行應用程式等高安全性支付應用程式所必需的。正如 Google 的文檔所述,SafetyNet 的存在“是為了幫助確定您的伺服器是否與在正版 Android 設備上運行的正版應用程式進行交互”,因此在任何情況下 Mate 30 都不應通過。這款手機沒有通過 Android CDD,因此不是 Android 裝置(Google 擁有該商標),而 SafetyNet 的存在專門用於阻止經過修改和 root 的 Android 版本存取某些應用程式。

昨天,Mate 30突然停止經過SafetyNet 檢查,Google Pay 和其他銀行應用程式停止運作。為什麼它首先通過是一個謎。但值得注意的是,工作一周後,當 Wu 在 Twitter 上標記該應用程式後,它就不再透過 SafetyNet。也許谷歌正在傾聽?

目前,Mate 30 僅在中國銷售,而且由於大多數谷歌伺服器在中國被封鎖,整個災難不會引起那麼廣泛的安全問題。華為並沒有真正在美國開展業務,但它在歐洲有著巨大的影響力,在那裡它是第二大智慧型手機供應商,落後三星,市佔率為 18%。雖然歐洲的正式發布日期尚未確定,但 Mate 30 Pro 登陸歐洲似乎已成定局。如果當沒有谷歌的手機進入需要谷歌應用程式的領域時,Lzplay 能夠生存下來,我們可能會看到許多人將他們的手機交給一個未知的實體,只是為了訪問那些可愛的谷歌應用程式。

如果與華為結盟的實體創建 Lzplay 的目的是為了緩解潛在 Mate 30 客戶對 Google 應用程式的焦慮,那麼現在看來確實適得其反。Google Pay 等應用程式的未來狀態不斷變化,Lzplay 凸顯了 Google 生態系統以外的生活是多麼陰暗和危險。華為可以透過讓用戶完全控制他們的設備並允許他們解鎖引導程式來解決所有這些問題,因此正常的Google應用程式刷新技術可以工作,但到目前為止,它似乎並不想這樣做。