在 Android 操作系統中,研究人員發現了一個編號為 CVE-2024-31317 的嚴重漏洞。該漏洞允許攻擊者借助 Zygote 進程,在整個系統范圍內執行代碼并提升權限。此缺陷影響運行 Android 11 或更早版本的設備,在 Android 生態系統中暴露出一個不容忽視的安全隱患。
背景和漏洞詳細信息
Zygote 進程作為 Android 的基礎組件,承擔著生成新的應用程序和系統級進程的關鍵任務。它以系統權限運行,這使其成為了企圖提升訪問權限的攻擊者的重點目標。
Android 啟動過程的高級概述
該漏洞的根源在于系統服務器處理 “hidden_api_blacklist_exemptions” 設置的方式。這種處理方式存在缺陷,導致某些應用程序能夠繞過 Android 的隱藏 API 限制。具體而言,系統服務器在向 Zygote 傳遞此設置時,未能正確轉義換行符,這一疏忽給攻擊者創造了可乘之機,他們能夠向 Zygote 進程注入任意命令。
通過 ADB Shell 進行利用
攻擊者可借助 Android Debug Bridge(ADB)Shell 來利用這一漏洞。ADB Shell 具備 “WRITE_SECURE_SETTINGS” 權限,能夠修改 “hidden_api_blacklist_exemptions” 設置。攻擊者通過向該設置注入惡意命令,就能夠以系統范圍的權限執行任意代碼。
Android 系統服務器源代碼中存在漏洞的部分。
概念驗證漏洞展示了攻擊者如何通過注入有效載荷來生成具有提升權限的新進程,從而將權限從普通 shell 用戶提升至系統用戶。據研究人員介紹,這一進程可被配置為執行諸如啟動持久 shell 等命令,使得攻擊者能夠持續控制設備。
利用此漏洞可能引發嚴重后果。若漏洞未得到妥善清除,極有可能導致設備陷入啟動循環。
風險緩解措施
為降低這些風險,用戶可以通過 ADB Shell 刪除被修改的 “hidden_api_blacklist_exemptions” 設置,然后重啟設備,以此恢復 Zygote 的正常運行。不過,這一操作也會清除任何已注入的有效載荷,意味著攻擊者若想重新獲取提升的訪問權限,需要再次重復利用該漏洞的過程。
此漏洞的發現,凸顯了保護 Android 核心進程的重要性,同時也強調了及時進行漏洞修補,以防范此類安全隱患的緊迫性。
參考及來源:https://gbhackers.com/android-zygote-injection-flaw/
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.