蘋果修補核心零時差漏洞 能繞過macOS安全防護安裝惡意程式
蘋果周一發佈macOS 11.3 Big Sur,除了加入新功能外,更重要的是修補了一個已經駭客開採來安裝惡意程式,卻不會觸發Mac電腦安全防護的零時差漏洞。
Mac電腦提供完整的防護機制,防範用戶不小心安裝惡意軟體。雖然點擊和零點擊攻擊程式很常上頭條,但更常見的手法是把木馬程式偽裝成遊戲、更新程式或用戶想要的軟體。
蘋果防護機制
蘋果工程師深知木馬程式比複雜的攻擊程式更常威脅Mac用戶,它們會暗中安裝惡意程式,而幾乎只需很少,甚至不需用戶互動。Mac電腦安全核心包含三種機制,包括
- 檔案隔離:需要用戶明顯確認,從網路上下載的檔案才能執行。
- 守門員:防止App安裝,除非它是由蘋果認識的開發商簽發。
- 必要的App公證(notarization):只有蘋果掃瞄過沒有惡意程式才允許App安裝
但不久前,Mac安全專家發現一隻名為Shlayer的惡意程式開採了一項漏洞,使其能完全壓制住三種安全機制。
2018年出現的Shlayer就以使用嶄新的資料隱碼術躲避偵測令人印象深刻。去年九月它成功繞過蘋果要求的App公證。去年卡巴斯基指出Shlayer是該公司產品偵測次數最多的Mac惡意軟體,變種將近3.2萬個。
Shlayer是在今年一月被發現開採零時差漏洞。它並非使用Mac執行檔常見的Mach-O格式,這次攻擊的執行檔元件是macOS script,會以特定順序執行一系列指令。
一般從網路下載的scripts會被歸類為App Bundle,需遵守其他執行檔相同的規定。但稍稍改一下就能使scripts完全閃過這些要求。
只要移除info.plist—這是一個對iOS提供app、bundle或framework屬性列表的結構化文字檔—script就再也無法被登錄為macOS的可執行檔bundle。它會被視為一個PDF或其他非執行檔,就不落在守門員(Gatekeeper)或其他防護機制的處理範圍內。
被開採的漏洞CVE-2021-30657是由安全研究人員Cedric Ownens發現並通報蘋果。他說他是使用Appify開發工具,使用「紅隊演練」的模擬安全攻防工具時發現該漏洞。他發現Appify可以將shell script轉為可雙擊啟動的App,而這麼做可以繞過Gatekeeper。他也立即通報蘋果。
蘋果周一發佈的macOS 11.3將該漏洞修補掉了。Owens表示,這項漏洞似乎從2019年6月的macOS 10.15,即當公證機制引入時就已存在。
無巧不巧軟體管理公司Jamf研究人員Jaron Bradley則發現Shlayer變種正在攻擊CVE-2021-30657,詳細分析發現它可繞過蘋果防護機制,在不觸發用戶警告情況下安裝,進一步分析則讓我們相信,惡意程式作者已發現到macOS的零時差漏洞,且在2021年初用惡意程式加以開採。
Mac安全專家Patrick Wardle則開發了概念驗證攻擊程式示範Shlayer變種運作方式。這個可執行script從網路下載後偽裝成名為「Patrick’s 履歷」的PDF檔,一旦有人雙擊開啟,就會啟動名為計算機應用程式。換成惡意檔也一樣能輕鬆啟動,使蘋果的防護機制形同虛設。
來源:Ars Technica