近日,微軟發現蘋果macOS系統存在一個“Shrootless”漏洞(CVE-2021-30892),攻擊者可以利用該漏洞繞過操作系統的系統完整性保護(SIP),進而執行任意代碼。
例如在繞過 SIP 防護措施后,攻擊者能夠安裝 rootkit 和無法檢測的惡意軟件、甚至覆蓋系統文件而不被 SIP 給阻止。
系統完整性保護是蘋果macOS系統中一個安全功能,最早出現在OS X El Capitan,由很多內核強制實施的機制構成。它的主要功能是保護系統文件及目錄,以免這些文件及目錄被沒有特定權限的進程修改,包括root用戶或者擁有root權限的用戶。
微軟安全研究人員(MSVR)表示,攻擊者可以創建一個特制的文件來劫持安裝過程。
“在蘋果繞過SIP保護的macOS進程時,我們(微軟安全團隊)發現了守護進程 system_installd 具有強大的 com.apple.rootless.install.inheritable 權限。獲得這個權限之后,攻擊者可利用system_installd的任何子進程來繞過SIP文件系統的限制?!?
微軟安全研究人員正是通過這一發現,從而找到了macOS系統完整性保護漏洞。
隨后,微軟安全研究人員根據以下算法,進行了相關的POC漏洞測試,覆蓋內核擴展排除列表:
- 使用 wget下載一個有蘋果簽名、并具有安裝后腳本的軟件包;
- 在這個軟件包中植入 /etc/zshenv 惡意文件來檢查父進程;system_installd 會通過調用默認 shell來運行它們;
- 通過創建可劫持安裝過程的自定義軟件包,攻擊者便可利用該機制來達成惡意目的。
值得慶幸的是,微軟上報該漏洞后,蘋果公司日前已經發布了該安全漏洞的修復辦法,相關補丁已經公布。在 macOS Monterey、Catalina 和 Big Sur 的安全補丁說明中,蘋果對微軟公司表示感謝。