微軟披露macOS平臺上的Shrootless漏洞 相關(guān)補丁已可用
許多安全公司與大型科技企業(yè)都有自建團隊,旨在發(fā)現(xiàn)軟件中的缺陷和漏洞、與軟件供應(yīng)商私下溝通,然后按照行業(yè)標準流程來發(fā)布修復(fù)程序。與此同時,以 Google Project Zero 為代表的團隊,也致力于幫助發(fā)現(xiàn)和修補第三方的安全問題。而本文要為大家介紹的,則是微軟在蘋果 macOS 上發(fā)現(xiàn)的“Shrootless”漏洞。
(來自:Microsoft 365 Defender Research Team)
微軟指出,Shrootless 漏洞可被惡意攻擊者利用,以繞過操作系統(tǒng)的系統(tǒng)完整性保護(SIP),進而執(zhí)行任意代碼。
與此同時,微軟安全團隊發(fā)現(xiàn)了一種用于提權(quán)的新型攻擊技術(shù)。簡單翻閱該公司的博客文章后,可知問題主要歸咎于“由蘋果簽名、并具有安裝后腳本的軟件包”的安裝方式。
通過創(chuàng)建可劫持安裝過程的自定義軟件包,攻擊者便可利用該機制來達成惡意目的。
比如在繞過 SIP 防護措施后,攻擊者能夠安裝 rootkit 和無法檢測的惡意軟件、甚至覆蓋系統(tǒng)文件而不被 SIP 給阻止。
在某些情況下,軟件包需要訪問受 SIP 保護的目錄,比如系統(tǒng)更新。
可知蘋果為此類軟件包分配了一些特權(quán)(
com.apple.rootless.install 和 com.apple.rootless.install.inheritable),但它們同樣也可被利用來繞過 SIP 。
在評估有權(quán)繞過 SIP 保護的 macOS 進程時,微軟安全團隊發(fā)現(xiàn)了守護進程 system_installd 具有強大的
com.apple.rootless.install.inheritable 權(quán)限。
在此基礎(chǔ)上,攻擊者便可利用 system_installd 的任何子進程,來完全繞過 SIP 文件系統(tǒng)限制。
借助 Microsoft Defender for Endpoint 的后入侵組件(post-breach component),安全團隊決定檢查 system_installd 的所有子進程。
結(jié)果讓他們感到十分震驚,因為其中一些可能允許攻擊者濫用、并繞過 SIP 。比如在安裝蘋果簽名的 .pkg 包時,它就會調(diào)用 system_installed 并負責(zé)安裝前者。
但若軟件包中含有任何安裝后腳本,則 system_installd 會通過調(diào)用默認 shell(在 macOS 上為 zsh)來運行它們。
有趣的是,當 zsh 啟動時,它會查找文件 /etc/zshenv 。如果找到,哈輝自動從該文件運行命令 —— 即使在非交互模式下也是如此。
所以對于潛在的攻擊者來說,他們在設(shè)備上執(zhí)行任意操作的最可靠路徑,就就是創(chuàng)建惡意的 /etc/zshenv 文件,然后等待 system_installd 來調(diào)用 zsh 。
更糟糕的是,微軟還發(fā)現(xiàn) zshenv 可作為通用攻擊模式,而不僅僅是 Shrootless —— 濫用此 shell 或?qū)е绿貦?quán)提升。
慶幸的是,作為協(xié)調(diào)漏洞披露(CVD)流程的一部分,微軟與蘋果私下分享了其調(diào)查結(jié)果。后者承認了這個問題,并于 2021 年 10 月 26 日向公眾發(fā)布了漏洞修復(fù)補丁。
在 macOS Monterey、Catalina 和 Big Sur 的安全補丁說明中,蘋果還強調(diào)了微軟對此做出的貢獻。有關(guān)詳情,還請查看 CVE-2021-30892安全公告。