新聞 > 科教 > 正文

Google警告三星 別亂動 Android 內核代碼

近日,Google Project Zero(GPZ)團隊向三星發出警告,如果三星在 Galaxy系列手機中修改內核代碼,將會暴露更多安全漏洞。

手機產商造成的安全漏洞

據了解,GPZ研究員 Jann Horn在三星 Galaxy A50的安卓內核中發現錯誤。Jann Horn指出,像三星這樣的智能手機製造商會通過添加下游定製驅動程序來直接訪問 Android的 Linux內核,結果造成了更多的安全漏洞。

同時,Jann Horn還表示,三星的做法在所有智能手機廠商中相當普遍——即手機廠商向 Linux Kernel中添加未經上游(upstream)內核開發者審核的下游(downstream)代碼,增加了與內存損壞有關的安全性錯誤。

儘管這些下游定製代碼旨在增加設備的安全性,但是它們可能會帶來新的安全漏洞。例如,三星原本準備增強內核安全的代碼結果帶來了內存損壞漏洞。2019年11月,Google向三星通報了這一漏洞。

據悉,該漏洞影響了三星的額外安全子系統,這個額外的系統名為 PROCA或 Process Authenticator。隨後,在2020年2月,三星表示已在手機更新程序中修復了該漏洞。

另外,值得一提的是,三星在2月份的手機系統更新中還包括一個針對「TEEGRIS設備」中嚴重缺陷的補丁。據介紹,TEEGRIS設備指的是搭載三星專有 TEE作業系統的較新 Galaxy手機上的可信執行環境(TEE);而 Galaxy S10就是 TEEGRIS設備之一。

在三星的描述中,SVE-2019-16132(雷鋒網按:三星對該漏洞的代號)是一個並不嚴重的問題,是由 PROCA中的 Use-After-Free和 Double-Free漏洞組成,允許黑客在一些運行 Android9.0和10.0的 Galaxy手機上「執行任意代碼」。

不過,在 Jann Horn看來,他更關注 Android如何減少智能手機供應商向內核添加獨特代碼帶來的安全問題。Jann Horn進一步補充說明:

Android已經通過鎖定哪些進程可以訪問設備驅動程序來降低此類代碼的安全影響。這些設備驅動程序通常是針對特定智能手機供應商的。

比如說,較新的 Android手機通過 Android中專用的助手進程——統稱為硬件抽象層(HAL)——訪問硬件。但 Jann Horn認為,智能手機供應商修改 Linux內核代碼的工作方式會破壞上述努力。

不僅如此,Jann Horn還表示,手機製造商應該使用 Linux已經支持的直接硬件訪問功能,而不是定製 Linux內核代碼。同時,Jann Horn還指出,三星增加的一些定製功能是不必要的,如果它們被刪除了,也不會影響設備的安全性。

據 Jann Horn的推測,PROCA是為了限制已經獲得內核讀寫訪問權限的攻擊者。但他認為,三星可以通過引導工程資源,從一開始就阻止攻擊者獲得這種訪問權限,從而提高效率。

Jann Horn解釋說:我認為,特定設備的內核修改最好上移到用戶空間驅動程序中,因為在用戶空間驅動程序中,它們可以用更安全的編程語言和 sandboxed來執行,同時也不會使更新的內核版本複雜化。

責任編輯: 李華  來源:雷鋒網 轉載請註明作者、出處並保持完整。

本文網址:https://hk.aboluowang.com/2020/0219/1411656.html