(本文經合作夥伴 品玩 授權轉載,並同意 TechOrange 編寫導讀與修訂標題,原文標題為 〈macOS 的最新惡意軟件,有點像瘟疫公司的“猥瑣流”〉。)
【我們為什麼挑選這篇文章】macOS 發現最新惡意軟體!網路安全研究公司 Red Canary 日前查獲一款位於蘋果處理器的最新病毒 Silver Sparrow(銀雀),Red Canary該公司統計出全球受感染,不包含未確切感染的蘋果電腦便有近 4 萬台這麼多。
恰巧的是一個多月前蘋果電腦才剛推出 M1 處理器資安就出現漏洞,即便你沒有完全下載完受感染的檔案即時取消,仍會感染到 Silver Sparrow 病毒。
在資安工程師與 Red Canary 一同破解了兩個版本的 Silver Sparrow 病毒後,出現在電腦螢幕的兩個畫面讓所有人都傻眼了,原來那串文字嘲諷意味十足,甚至是所有工程師的共同回憶...(責任編輯:孫敬)
今年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 感染了嗎?歡迎在留言中和我們分享。
(本文經合作夥伴 品玩 授權轉載,並同意 TechOrange 編寫導讀與修訂標題,原文標題為 〈macOS 的最新惡意軟件,有點像瘟疫公司的“猥瑣流”〉。)
更多有關工程師的有趣新聞
Airbnb 推出「工程師學徒」計畫,手把手教你職場實戰 coding 技術!