macOS很安全?這只是錯覺
一句“PHP是世界上最好的編程語言”可以成功惹毛一票程序員。同樣,隨口一句“Windows系統比Mac系統更安全(或反之)”也能讓IT安全人員吵個不可開交。Windows誕生的頭10年該產品輕易坐穩史上最好攻擊操作系統(OS)的寶座,成功攻擊的數量更讓公眾對Windows的安全性失去信任。相比之下,很多果粉則覺得MacOS基於蘋果的封閉系統環境理應比Windows系列更加安全。
在長達幾十年的用戶爭奪戰後,相關Windows和Mac的安全話題似乎已經演變成了技術信仰問題。而隨著蘋果設備的大批量出貨,MacOS的安全神話也正被逐漸打破。
那麼,如今的MacOS還像我們想像的那樣安全嗎?其如今又面臨著哪些安全威脅呢?在6月11日舉辦的TenSec 2019峰會上,騰訊mac安全專家王朝飛結合現階段研究成果進行了分享。
MacOS安全嗎?
截止2019Q1,Mac終端的市場佔有率是6.82%,Windows卻高達93.2%。兩個數據作比對,不少人會覺得Mac終端的市場份額還是相對小眾的,但實際情況卻並非如此。
“在某些行業公司裡,如互聯網公司、設計公司Mac所佔比例遠高於此,且比例呈現不斷攀升的趨勢。”
王朝飛稱,在騰訊Mac設備已經佔據全部在用機型的25%,同樣的情況也存在於其他行業的公司。有時候,看似小眾的Mac產品安全性往往對於企業用戶來說至關重要。
Mac系統本身的安全性做得如何呢?自面世至今,MacOS引入了很多的安全機制,其中主流版本10.14主要有以下四大安全機制:
1、Gatekeeper——對互聯網下載應用程序進行簽名校驗。
2、Xprotect——對應用程序進行靜態特徵檢測,包括字符串,哈希,壓入,規則匹配等,可理解成是MacOS自己集成的一個小的殺軟。
3、SIP——又叫Rootless,主要是對系統運行進程、系統關鍵文件以及內核擴展加載進行保護。
4、Sandbox——對應用程序所能訪問的軟件資源、硬件資源和網絡資源等做限制。
上述四大安全機制可以保證應用程序從下載落地到終端執行的安全。
然而,這並不能100%保證MacOS的安全。自MacOS面世至今,這四大安全機制已經出現過無數漏洞並支持黑客進行PAAS或者DOS攻擊。
據統計,從2016到2017年,針對Mac平台的惡意程序增長了270%。僅在2018年一年,增長速度達到165%。截至目前,MacOS的惡意程序量級已經達到10萬級。其中,具有針對MacOS入侵能力的APT組織23個,木馬家族62個。
“可以說,MacOS上的高級持續性威脅其實是一直存在的。”
MacOS攻擊演示
在模擬攻擊案例中,王朝飛採用Remote Custom URL Scheme的攻擊手法,從黑客角度分享了對MacOS終端展開攻擊的全過程。
Custom URL Scheme可以被類比成Windows中不同的文件拓展對應不同的默認關聯程序。舉個例子,假如在瀏覽器中輸入http://baidu.com,那麼瀏覽器就會去解析這個域名。如果一個Mac上的App聲稱它支持hXXp這種URL scheme格式,那麼如果在瀏覽器中輸入hXXps.baidu.com那麼系統就會自動去關聯這個App來解析URL scheme。
顧名思義,Remote Custom URL Scheme就是一種遠程利用的方式。
攻擊的第一步,通常黑客會向目標終端發送一份包含惡意鏈接的釣魚郵件。終端收到釣魚郵件之後,將引導用戶用Safari瀏覽器打開包含惡意鏈接的郵件,並自動訪問到黑客所控制的惡意站點。
此時,Safari瀏覽器會自動下載惡意站點中所存儲的惡意壓縮包並自動解壓,從而導致壓縮包裡面的惡意App落地。
同時,系統會自動將App所支持的URL scheme進行註冊,以此將URL scheme與其關聯起來並自動引導Safari訪問註冊過的惡意URL scheme關聯到惡意App。
其攻擊過程分為三個關鍵點:
1、Safari瀏覽器——這是絕大多數Mac終端默認的瀏覽器,其具備“下載後打開’安全的’文件”設置選項,一旦該選項開啟瀏覽器則認為惡意壓縮包是安全的從而導致解壓落地。
2、惡意App——Mac上的App多為dmg格式。在其文件結構中,包含了應用到的二進製文件、資源,甚至各種腳本。
利用其中的pdc文件(類似一種配置文件),惡意App可以在文件中聲明所要支持的URL scheme。
3、惡意站點——當用戶收到包含惡意鏈接的郵件後,打開鏈接。映入眼簾的是正常的Google搜索頁面,同時引導Safari自動下載惡意壓縮包、註冊到惡意URL scheme並顯示偽裝後的惡意App運行請求。
對於終端用戶來說,整個攻擊過程顯得十分隱蔽。期間,用戶只會收到一個被偽裝成系統提示的惡意鏈接,一旦用戶點擊執行則會啟動惡意程序執行。
MacOS檢測與監控
除此之外,還有很多針對MacOS的攻擊方式,每種對於Mac終端來說都面臨著嚴峻的安全威脅。
那麼,如何應對這樣的安全威脅呢?
一個黑客完整的入侵途徑中,可將其劃分為初始記錄、執行、提權、持久化、蒐集取證等階段,每個階段都會有一些典型的攻擊手法。其攻擊手法及檢測辦法整理如下:
1、針對Mac使用虛假App欺騙用戶下載執行——可以通過App簽名校驗與名稱是否相符來確認App的真實性;
2、利用隱藏在App資源目錄中的腳本執行惡意程序——通過監控進程,惡意腳本通常會被隱藏在需要被賦予執行權限的試探目錄中,可以認為這是一個異常點。
3、利用微軟宏執行的攻擊行為——微軟宏執行的攻擊分為從系統模塊導入、調用vb函數MacScript()和調用vba函數AppleScriptTask()三種方式,可通過調用其父子進程進行監測;
4、惡意程序持久化——基於Xprotect對程序路徑、哈希、簽名等進行檢測,對類似/tmp/的隱藏文件加強關注;
5、惡意程序權限提升——直接依靠0day漏洞來提權的情況很少見,常見的提權方式有兩種:一個是通過App的惡意升級程序來欺騙用戶輸入密碼獲得特權;其次是直接通過App冒充正常的應用。
當一個程序去請求Root認證的時候,最終會對應到一個進程。通過判斷進程所在路徑及其簽名來判斷。而對於調用到系統安全子進程的,可以通過監控該子進程所對應的命令行中是否包含認為惡意的腳本或者程序來加以確認。
6、針對Mac終端收集、竊取信息——常見的手段包含截屏、鍵盤記錄、敏感信息竊取和擴散四種,針對不同竊取場景的使用特性設計檢測截屏頻率、執行、安裝鍵盤監控程序等。
王朝飛稱,構建基礎的EDR通常會用到進程網絡、進程關係、進程命令行和文件操作監控四類,這四類數據源可以覆蓋ATT&CK中120種入侵攻擊手段,監控概率接近80%。
“在基礎監控的基礎上,若要構建全面的EDR系統,則需收集更多的終端數據。”