狡猾的macOS惡意軟件是如何隱藏在資源派生中的?
回顧2020年,我們看到了macOS攻擊者策略發生了許多改變。這些措施包括轉換為Shell腳本,使用Rust和Go等替代編程語言,在Electron應用程序中打包惡意軟件,以及通過隱寫術擊敗Apple的公證安全檢查。這些技術中的許多已經利用了新的或最近的變化或發展,但是我們卻在macOS 10.15及更高版本上觀察到的一種卻采取了相反的技術策略,并利用了Mac OS 9以來一直存在的舊技術,以隱藏用戶和文件掃描工具上的惡意軟件載荷。
在本文中,我們將研究一個看起來像Bundlore廣告軟件的新變體如何將其有效載荷隱藏在一個命名資源派生中。蘋果機系統使用一種叫做資源派生”(Resource Fork)的技術記錄文件的相關信息,比如文件圖標等。
惡意軟件傳播
可以在提供流行軟件“免費”版本的站點上隨意可見該惡意軟件,在本文的示例中,我們發現該惡意軟件由名為“mysoftwarefree”的網站傳播,它會向用戶保證免費提供Office 365副本。

指示用戶刪除任何當前安裝的Office,從Microsoft下載合法的免費試用版,然后從惡意網站上的按鈕下載“所需文件”,以獲取“完整版Office 365 ProPlus,而無需限制”。

一旦用戶上鉤,一個名為“dmg”的文件就會下載到用戶的設備上。
命名資源派生的擴展屬性
在安裝的磁盤映像中,事情遠非惡意軟件站點承諾的那樣。沒有MS Office的副本,但看起來很像典型的“ Bundlore / Shlayer”滴管。

與這些磁盤圖像一樣,圖形化的說明可以幫助用戶繞過Gatekeeper和Notarization提供的內置macOS安全檢查。在macOS Catalina上,此繞過操作不會阻止XProtect在執行時掃描代碼,但是XProtect目前不知道此特定代碼。
如果我們去終端查看一下磁盤映像上的內容,令人驚訝的是看起來好像不多。
但是請注意,權限列表上的@是微小的203字節Install.command文件的權限。這表示該文件具有一些擴展屬性,這就是使事情變得有趣的地方。
我們可以使用xattr -l列出擴展屬性,似乎有一個com.apple.ResourceFork屬性,至少在開始時看起來像一個圖標文件,這并不罕見,像這樣的資源派生在歷史上曾經被用來存儲諸如縮略圖之類的東西。

但是,此資源派生很大。如果我們向下滾動到底部,我們將看到大約141744字節的添加數據。

更具說服力的是,如果我們檢查Install.command文件本身,我們將看到它是一個簡單的shell腳本,它暴露了資源派生中真正包含的內容。

從偏移量9092開始,腳本通過密碼為“oZwb”的funzip實用程序對派生中的數據進行管道傳輸,以解密數據,并將其放入帶有前綴為“Installer”的隨機名稱的Darwin用戶TMPDIR中。
該文件原來是具有43b9157a4ad42da1692cfb5b571598fcde775c7d1f9c7d56e6d6c13da5b35537的SHA256的Mach-O。
快速查看VirusTotal可以發現SentinelOne的靜態AI (DFI)引擎將其識別為惡意文件,并被某些供應商標記為Bundlore變體。

那么什么是資源派生,攻擊者為什么要使用它呢?
資源派生是一種命名派生,一種用于存儲結構化數據(如圖像縮略圖,窗口數據甚至代碼)的舊文件系統技術。資源派生不是將信息存儲在特定偏移量的一系列字節中,而是將數據保留在結構化記錄中,類似于數據庫。有趣的是,資源派生的大小限制沒有超出文件系統本身的大小,正如我們在本文所看到的,派生不可見直接在Finder或終端,除非我們列表文件的擴展屬性通過ls -l@或xattr - l。

使用資源派生來隱藏惡意軟件是我們以前從未見過的一種非常新奇的技術,但對它的研究還不是很深入,即參與者使用這種技術的目的是什么。盡管通過這種方式壓縮二進制文件對查找器和終端都是隱藏的,但正如我們所看到的,只要閱讀Install.command shell腳本,任何人都可以很容易地找到它。
然而,許多傳統的文件掃描器不會采用這種技術。其他Bundlore變體在磁盤映像容器和應用程序包中使用了加密文本文件,但掃描器可以很快學會找到這些文件。使此類文件泄漏的原因之一是混淆或加密的代碼(通常為base64)的長度過長,這對于合法軟件而言是異常的。
通過將加密和壓縮的文件隱藏在命名的資源派生中,攻擊者很顯然是希望避開某些類型的掃描引擎。盡管此示例沒有經過代碼簽名,因此也沒有經過Apple的公證檢查,但鑒于最近Bundlore變體使用的隱匿術竅門確實繞過了Apple的自動檢查,這仍然是一個公開漏洞。
總結
將惡意軟件隱藏在文件的資源派生中只是macOS惡意軟件開發者用來嘗試逃避防御工具的最新技巧。盡管它不是特別復雜且易于手動發現,但它是逃避動態和靜態AI檢測引擎不支持的某些工具,也確實是一個很隱蔽的方法。


樣本哈希
本文翻譯自:https://labs.sentinelone.com/resourceful-macos-malware-hides-in-named-fork/






























