macOS木馬Calisto深度分析
來自專欄嘶吼RoarTalk6 人贊了文章
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文件夾上傳到犯罪分子的伺服器上。研究人員發現,該伺服器已經下線了:
其他功能
通過對Calisto靜態分析發現了一些尚未使用的功能:
· 載入處理USB設備的kernel擴展;
· 從用戶目錄竊取數據;
· 和整個系統一起自毀。
與Backdoor.OSX.Proton的連接
從概念上講,Calisto後門聚合了一系列的Backdoor.OSX.Proton家族成員:
· 首先,傳播方法是相似的:惡意軟體偽裝成一個著名的反病毒軟體(Backdoor.OSX.Proton);
· 含有com.proton.calisto.plist的木馬樣本;
· 與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
本文翻譯自:https://securelist.com/calisto-trojan-for-macos/86543/如若轉載,請註明原文地址: http://www.4hou.com/technology/12700.html 更多內容請關注「嘶吼專業版」——Pro4hou
推薦閱讀:
※趨勢:加密貨幣挖礦活動影響數百萬安卓設備
※構建一個比較滿意的分散式掃描平台(上)
※洋蔥式信息安全觀察-起點:IT規劃
※「服務安全」Tomat安全設置和版本屏蔽,ASF及旗下項目簡介
※雲態勢感知產品-沙箱高級威脅檢測
TAG:信息安全 |