谷歌警示三星:修改Android內核代碼行為會暴露更多漏洞
Google Project Zero (GPZ)團隊近日向三星發出警告,表示後者在Galaxy系列手機中修改內核代碼的行為將會暴露更多的安全BUG。GPZ研究員Jann Horn表示,以三星為代表的多家智能手機廠商通過添加下游自定義驅動的方式,直接硬件訪問Android的Linux內核會創建更多的漏洞,導致現存於Linux內核的多項安全功能失效。
Horn表示這個問題是在三星 Galaxy A50的Android內核中發現的。不過他表示,這種情況在Android 手機廠商中非常普遍。也就是說,這些廠商向Linux Kernel中添加未經上游(upstream)內核開發者審核的下游(downstream)代碼,增加了與內存損壞有關的安全性錯誤。
即使這些下游定制旨在增加設備的安全性,它們也會引入安全性錯誤。谷歌於2019年11月向三星報告了該漏洞,隨後在今年2月面向Galaxy系列手機的更新中修復了這個問題。
該錯誤影響了三星的PROCA(過程驗證器)安全子系統。三星在其安全網站上將漏洞SVE-2019-16132描述為中等問題。它允許在運行Android 9和Android 10操作系統的某些Galaxy智能手機上“可能執行任意代碼”。
Horn解釋說:“Android通過鎖定可以訪問設備驅動程序的進程(通常是特定於供應商的)來減少此類代碼對安全性的影響。”一個例子是,較新的Android手機通過專用的幫助程序來訪問硬件,這些幫助程序在Android中統稱為硬件抽象層(HAL)。
不過Horn表示,手機廠商通過修改Linux Kernel核心部分的工作方式,這破壞了“鎖定攻擊面”上做出的努力。Horn建議智能手機製造商使用Linux中已經存在的直接硬件訪問功能,而不是更改內核代碼。例如,PROCA旨在阻止已獲得對內核的讀寫訪問權限的攻擊者,但三星需要花費工程時間來阻止攻擊者首先獲得該訪問權限。