微軟研究人員在 macOS 中發現一個安全漏洞,攻擊者利用該漏洞可以實現安全檢查繞過。
Gatekeeper 是 macOS 中的一個安全特征,可以自動檢查從互聯網下載的 Mac APP 是經過公證的還是開發者自簽名的,并要求用戶在啟動前進行确認或發布關于 APP 不可信的預警消息。
微軟首席安全研究員 Jonathan Bar Or 在 macOS Gatekeeper 中發現一個安全漏洞—— Achilles,漏洞 CVE 編号為 CVE-2022-42821。攻擊者利用該漏洞可以在有漏洞的 macOS 設備上繞過 Gatekeeper 的應用執行限制來部署惡意軟件。
Gatekeeper 繞過
Gatekeeper 的安全檢查是通過 com.apple.quarantine 這個擴展屬性實現的,web 浏覽器會對所有下載的文件分配 com.apple.quarantine 屬性,與 Windows 系統的 mark-of-the-web 類似。
攻擊者可以通過精心僞造的 payload 來濫用其中的邏輯問題來設置 ACL(訪問控制列表)權限,用于攔截 web 浏覽器和互聯網下載器為下載為 ZIP 文件的 payload 設置 com.apple.quarantine 屬性。
圖 設置任意訪問控制列表的代碼
因此,壓縮文件中的惡意 payload 中的惡意 APP 可以在受害者系統上啟動而不會被 Gatekeeper 攔截,攻擊者即可以下載和部署惡意軟件。
使用 ACL 繞過 Gatekeeper 的 PoC 視頻參見:https://www.microsoft.com/en-us/videoplayer/embed/RE5dQo5
12 月 13 日,蘋果已在 macOS 13 ( Ventura ) 、macOS 12.6.2 ( Monterey ) 、macOS 1.7.2 ( Big Sur ) 系統中修複了該漏洞。微軟稱,蘋果在 macOS Ventura 系統中引入的 Lockdown Mode 對定向複雜網絡攻擊的高風險用戶是一個可選的保護特征,該特征旨在組織零點擊的遠程代碼執行漏洞利用,因此無法應對 Achilles 漏洞。無論 Lockdown Mode 的狀态如何,終端用戶都應當盡快安裝補丁。
完整技術細節參見:https://www.microsoft.com/en-us/security/blog/2022/12/19/gatekeepers-achilles-heel-unearthing-a-macos-vulnerability