楠木軒

macOS的最新惡意軟件,有點像瘟疫公司的“猥瑣流”

由 烏雅建義 發佈於 科技

今年2月初,安全機構 Red Canary 在蘋果電腦操作系統 macOS 上發現了一種全新的惡意軟件。

當然,在號稱更加安全的 macOS 上出現病毒/惡意軟件,算不上駭人聽聞。不過,安全工程師們對這款惡意軟件抱有很大的興趣,主要在於它有三個特別突出的特性:

1)M1 處理器原生支持;2)使用 JavaScript 執行;3)該惡意軟件目前缺乏負載 (payload),也即實際對用户的系統造成負面影響的內容。

Red Canary 將其命名為 Silver Sparrow(銀雀)。

雖然按照前述第三條來看,該惡意軟件目前沒有什麼值得稱道的危害性,不過根據安全公司 Malwarebytes 追蹤,Silver Sparrow目前已經在全球範圍感染過接近4萬台電腦(主要集中於美國)——這只是該機構能夠追蹤到的終端,追蹤不到的已感染電腦可能更多。

更重要的是,該惡意軟件包含了對蘋果 M1 ARM64 架構的原生支持,而考慮到蘋果正式推出 M1 處理器電腦產品也只是幾個月前的事情——Silver Sparrow 潛在的危害程度不容小覷。

Red Canary 認為,M1 兼容性、全球感染範圍、高感染率,以及技術成熟程度,足以讓該惡意軟件成為一個“相當嚴重的威脅”。

目前,Silver Sparrow 已經存在兩個版本,均偽裝成 macOS 軟件安裝包 (.pkg) 的樣子。其中第二個版本 update.pkg 加入了對 ARM64 架構的支持。

正如前面提到,M1 兼容性讓這款惡意軟件非常引人注目,因為 M1 仍然是蘋果電腦產品中非常新的一個平台,而針對該平台的安全威脅目前少之又少。

讓我們繼續來看這個奇異的惡意軟件。它的兩個版本安裝包,採用的都是 JavaScript 代碼,並且利用了macOS 安裝器的 JavaSciprt API。Red Canary 在一篇博客文章中指出,正是這一點讓 Silver Sparrow 在已知常見的 macOS 病毒/惡意軟件當中獨樹一幟。

在 macOS 上,用户不小心點擊惡意廣告後可能會下載到病毒或惡意軟件,體現為 .pkg 或 .dmg 安裝包格式,通常會偽裝成 Flash Player 的安裝器或升級包。這些惡意軟件的工作方式是使用 preinstall 或 postinstall(安裝前/安裝後)腳本來執行命令。

而在 Silver Sparrow 上,這個全新的惡意軟件直接用 JavaScript 函數來執行命令,這樣的行為是在蘋果 macOS 安裝器原生的 JavaScript API 支持下才得以實現。這也是安全人士首次發現採用這一方式完成安裝的 macOS 惡意軟件。

正是因此,惡意軟件內含的 JavaScript 代碼可以在用户點開安裝器並確認安裝(見下圖)之後就立即執行。這意味着,如果你沒有走完安裝流程,關掉了安裝器,也沒有用,惡意代碼已經被執行了,你的電腦已經被 Silver Sparrow 感染了……

在感染成功之後,用户的應用列表裏會出現一個應用,按照惡意軟件版本的不同,這個應用的名字可能叫 tasker 或者 updater。跟進 Silver Sparrow 的安全機構都認為,這個應用沒有任何內容也沒有什麼特殊功能,看起來像是佔位用的。

前面提到,這個惡意軟件目前不含任何負載,也即會對用户系統造成負面影響的代碼之類的東西。這令安全人員感覺非常奇怪……讓我們來進一步看看這到底是怎麼一回事:

感染之後,惡意軟件每個小時都會跟一個 AWS S3 服務器聯繫,而服務器會返回一些數據。這些返回數據中包含一個下載鏈接 "downloadUrl",但截至目前,安全機構在所有已感染電腦上看到的下載鏈接都是空的:

在安裝完成後,Silver Sparrow 會回調一個域名並且彙報兩組數據,其中包括了原始安裝包下載的鏈接。這在惡意軟件領域比較常見,意味着其開發者希望追蹤軟件的分發渠道。

不僅如此,這個惡意軟件回調的域名利用了 Akamai 的 CDN 服務。Red Canary 就此指出,這可能意味着惡意軟件的開發者對雲服務的理解甚高,因為 AWS 和 Akamai 是世界頂級的雲服務提供商,大部分機構通常不會對 它們的域名進行訪問封鎖。“這一發現進一步證明,我們面對的是一個技術非常成熟的對手,”Red Canary 寫道。

安全工程師 Erika Noerenberg 對 Silver Sparrow 進行拆解,發現它的第一個版本(只有 x86 支持)分發的只是一句佔位內容。這句話想必大家也已經很熟悉了:

而第二個版本加入了 M1 ARM64 架構支持,分發的同樣是一句佔位內容,看起來同樣人畜無害:

除了上述這些佔位內容之外,Silver Sparrow 完全沒有任何其它已知的,會對用户系統造成任何損害的代碼。

更蹊蹺的是,安全工程師發現,Silver Sparrow 會定期進行本地文件檢查,如果在某個路徑下找到某個文件,就會完全刪除其在用户電腦上的所有存在。

macOS 在 Library 路徑下默認不存在這個文件,Red Canary 也不清楚在什麼樣的情況下這個文件會出現。這個文件有可能是 Silver Sparrow 的開發者想要避免的東西,也有可能是該軟件生命週期的一部分,在完成任務之後清除痕跡的機制。

“這一(自我清除)機制的存在也是個謎,”Red Canary 在文章中寫道。

Malwarebytes 追蹤顯示,在已知全世界數萬台已經感染 Silver Sparrow 的電腦上,截至目前沒有任何一台電腦下載了任何可能造成實質危害的負載。

“這款惡意軟件的終極目標是個謎。我們沒有辦法可以確切瞭解它究竟要分發什麼樣的負載。”Red Canary 寫道。

這不禁令人想起了著名遊戲《瘟疫公司》(Plague Inc.) 的一種經典流派:猥瑣流。

《瘟疫公司》讓玩家扮演病毒,最終目標是感染全世界,可以在感染的過程中不斷獲得升級點數,升級自己的傳播力、抗藥性和致死性。

而猥瑣流的基本思路就是儘量先升滿傳播“猥瑣發育”,讓病毒悄無聲息地感染全世界,然後把攢下的點數全部扔到致死能力有關的天賦樹上,一瞬間爆發殺死所有人。

從目前已知的情況來看,Silver Sparrow 和《瘟疫公司》的猥瑣流玩法(至少跟前期“猥瑣發育”的部分)十分相似。它的技術成熟,感染數量已經較高,而且已經展現出了開發者對於 macOS 系統以及依靠雲服務的分發機制有較高的瞭解。

雖然今天的 Silver Sparrow 人畜無害,但誰也無法保證它在未來不會突然爆發,造成嚴重的後果。

目前安全人員不清楚 Silver Sparrow 的真實開發者是誰。不過蘋果公司在收到報告之後,已經關閉了其安裝包的證書擁有者 Saotia Seay 和 Julie Willey 的開發者賬户。

如果你是 macOS 用户,接下來可能會想要知道:我如何確定自己是否有被 Silver Sparrow 感染過呢?

答案很簡單。如果你能在以下路徑內找到對應的文件,説明你的電腦已經被感染(過)了:

如果這些文件存在的話,你需要在電腦上找到所有已知和 Silver Sparrow 有關的文件,並且在 Terminal 裏用 rm 命令完全刪除它們。

至於具體需要刪除哪些文件,你可以到 Red Canary 的網站上查看(點開鏈接後,移步到 "Indicators of Compromise" 小節,可以找到所有文件及其路徑)。如果你對 macOS 文件系統和 Terminal 命令不熟悉的話,建議找專業人士代你操作。

刪除完相關文件之後,重啓電腦就好啦。

你的電腦被 Silver Sparrow 感染了嗎?歡迎在留言中和我們分享。