當前位置:
首頁 > 新聞 > macOS木馬Calisto深度分析

macOS木馬Calisto深度分析

Calisto木馬應該在2016年被創建,並且被上傳到VirusTotal了。但直到兩年後的2018年5月,反病毒軟體都一直沒有檢測到Calisto。

MacOS上的惡意軟體並不常見,發現的樣本中也含有一些非常常見的特徵。

傳播

雖然研究人員還沒有該後門傳播方式的可信證據。但Calisto安裝文件是一個未簽名的DMG鏡像,偽裝成Intego的安全軟體(mac版本)。有趣的是,Calisto開發者選擇的是該程序的第9版本。

下面比較一下惡意軟體和官網下載的Mac Internet Security X9:

從上圖可以看出,這兩個應用是非常相似的,如果之前沒有用過該應用的話,應該是很難看出來區別。

安裝

應用安裝時間會呈現給用戶一個虛假的許可協議,協議中的文本與Intego的協議內容是不同的,可能是開發者使用的之前版本的許可協議。

然後,惡意軟體會要求用戶輸入用戶名和密碼,這與在macOS上安裝其他軟體是一樣的。

在收到用戶輸入的憑證時,程序會掛起並出現錯誤,建議用戶從官網下載新的安裝包(是不是平時也遇到過這樣的情況?所以一切看起來都很正常)。

該技術其實很簡單,不過卻很有效。而官網下載的程序在安裝過程中不會出現什麼問題,而惡意軟體會在後台默默地工作。

木馬分析

開啟SIP

SIP,SystemIntegrityProtection(系統完整性保護),是為了保護系統進程、文件、文檔不被其它進程修改。Calisto的活動在SIP開啟時是非常受限的,因為SIP是2015年發布的,而Calisto是2016年或之前開發的,所以開發者好像並沒有考慮到SIP的限制作用。但是許多用戶在很多情況下都會關閉SIP,這也就給了Calisto很大的活動空間。所以,研究人員建議盡量不要關閉SIP。

通過子進程日誌和反編譯的代碼可以分析出Calisto的活動:

Trojan執行的命令日誌

Calisto樣本中硬編碼的命令

可以看到木馬使用了一個名為.calisto的隱藏目錄來存儲:

·Keychain存儲數據;

·從用戶登陸密碼窗口提取的數據;

·網路連接信息;

·Google Chrome中的數據:歷史記錄、書籤、Cookie。

Keychain存儲用戶保存的密碼和token,包括Safari中保存的。存儲的加密密鑰就是用戶的密碼。

如果SIP開啟,木馬在修改系統文件時就會發生錯誤,這回違反木馬的運作邏輯,導致木馬停止運行。

錯誤信息

SIP關閉或不可用的情況

SIP關閉後,Calisto可以運行的功能就變多了。首先,會執行上面的步驟,但木馬不會給SIP阻斷;然後,執行下面的步驟:

·複製自己到/System/Library/文件夾;

·設置為開機自動啟動;

·卸載DMG鏡像;

·加入到無障礙服務中;

·收集系統的額外信息;

·開啟系統遠程訪問許可權;

·轉發收集的數據到C2伺服器。

下面看一下惡意軟體執行的相關機制:

加入到開始菜單是macOS的經典技術,是通過在/Library/LaunchAgents/文件夾下創建一個.plist文件:

通過下面的命令卸載DMG鏡像:

為了擴展能力,Calisto會直接修改TCC.db文件來將自己加入到無障礙服務中,反病毒軟體對這類行為是非常敏感的。但該方法的另一個優點是不需要用戶交互就可以完成。

Calisto的一個重要特徵就是獲取用戶系統的遠程訪問許可權,為了獲取許可權,需要:

·開啟遠程登陸;

·開啟屏幕共享;

·為用戶配置遠程登陸許可權;

·允許所有用戶遠程登陸;

·開啟macOS中隱藏的root賬號,設置特定密碼。

使用的命令如下:

雖然macOS中存在root用戶,但是默認情況下是不開啟的。系統重啟後,Calisto會請求用戶數據,但這需要輸入真是root用戶密碼,而真是的root用戶密碼被Calisto修改了(root: aGNOStIC7890!!!)。這也說明了木馬的原始性。

最後,Calisto會嘗試將所有的數據從.calisto文件夾上傳到犯罪分子的伺服器上。研究人員發現,該伺服器已經下線了:

惡意軟體連接的C2伺服器

其他功能

通過對Calisto靜態分析發現了一些尚未使用的功能:

·載入處理USB設備的kernel擴展;

·從用戶目錄竊取數據;

·和整個系統一起自毀。

載入kernel擴展

處理用戶目錄

自毀

與Backdoor.OSX.Proton的連接

從概念上講,Calisto後門聚合了一系列的Backdoor.OSX.Proton家族成員:

·首先,傳播方法是相似的:惡意軟體偽裝成一個著名的反病毒軟體(Backdoor.OSX.Proton);

·與Backdoor.OSX.Proton類似,木馬能從用戶系統中竊取大量的個人數據,包括Keychain的內容。

Proton惡意軟體家族所有已知成員都在2017年被發現。而Calisto木馬是2016年檢測到的,因此可以假設這兩個木馬是同一作者,Calisto也可能是Backdoor.OSX.Proton的第一版本甚至原型系統。

為了防止Calisto、Proton和類似軟體,應該:

·保持更新操作系統;

·不要關閉SIP;

·只運行從可信源下載的經過簽名的軟體,比如從APP store下載的軟體;

·使用反病毒軟體。

MD5

DMG image: d7ac1b8113c94567be4a26d214964119

Mach-O executable: 2f38b201f6b368d587323a1bec516e5d


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 嘶吼RoarTalk 的精彩文章:

使用Linux容器迅速搭建滲透測試環境
注入系列——DLL注入

TAG:嘶吼RoarTalk |