火絨安全團隊截獲一批蠕蟲病毒。這些病毒通過U盤、行動硬碟等移動介質及網路驅動器傳播,入侵電腦後,會遠端下載各類病毒模組,以牟取利益。這些被下載的有盜號木馬、挖礦病毒等,並且已經獲得約645個門羅幣(合60餘萬人民幣)。
一、 概述
該病毒早在2014年就已出現,並在國內外不斷流竄,國外傳播量遠超於國內。據”火絨威脅情報系統”監測顯示,從2018年開始,該病毒在國內呈現出迅速爆發的威脅態勢,並且近期還在不斷傳播。
火絨工程師發現,該病毒通過可移動儲存裝置(U盤、行動硬碟等)和網路驅動器等方式進行傳播。被該蠕蟲病毒感染後,病毒會將移動裝置、網路驅動器內的原有檔案隱藏起來,並建立了一個與磁碟名稱、圖示完全相同的快捷方式,誘導使用者點選。使用者一旦點選,病毒會立即執行。
病毒執行後,首先會通過C&C遠端返回的控制命令,將其感染的電腦進行分組,再針對性的獲取相應的病毒模組,執行盜號、挖礦等破壞行為。
病毒作者十分謹慎,將蠕蟲病毒及其下載的全部病毒模組,都使用了混淆器,很難被安全軟體查殺。同時,其下載的挖礦病毒只會在使用者電腦空閒時進行挖礦,並且佔用CPU資源很低,隱蔽性非常強。
不僅如此,該病毒還會刪除被感染裝置或網路驅動器根目錄中的可疑檔案,以保證只有自身會進入使用者電腦。由此可見,該病毒以長期佔據使用者電腦來牟利為目的,日後不排除會遠端派發其他惡性病毒(如勒索病毒)的可能。
“火絨安全軟體”無需升級即可攔截並查殺該病毒。
二、 樣本分析
近期,火絨截獲到一批蠕蟲病毒樣本,該病毒主要通過網路驅動器和可移動儲存裝置進行傳播。該病毒在2014年前後首次出現,起初病毒在海外傳播量較大,在國內的感染量十分有限,在進入2018年之後國內感染量迅速上升,逐漸呈現出迅速爆發的威脅態勢。該病毒程式碼執行後,會根據遠端C&C伺服器返回的控制命令執行指定惡意邏輯,甚至可以直接派發其他病毒程式碼到本地計算機中進行執行。現階段,我們發現的被派發的病毒程式包括:挖礦病毒、盜號木馬等。病毒惡意程式碼執行與傳播流程圖,如下圖所示:
病毒惡意程式碼執行與傳播流程圖
該病毒所使用的C&C伺服器地址眾多,且至今仍然在隨著樣本不斷進行更新,我們僅以部分C&C伺服器地址為例。如下圖所示:
C&C伺服器地址
該病毒會將自身拷貝到可移動儲存裝置和網路驅動器中,病毒程式及指令碼分別名為DeviceConfigManager.exe和DeviceConfigManager.vbs。被該病毒感染後的目錄,如下圖所示:
被該病毒感染後的目錄(上為可移動儲存裝置,下為網路驅動器)
火絨截獲的蠕蟲病毒樣本既其下載的其他病毒程式全部均使用了相同的混淆器,此處對其所使用的混淆器進行統一分析,下文中不再贅述。其所使用的混淆器會使用大量無意義字串或資料呼叫不同的系統函式,使用此方法達到其混淆目的。混淆器相關程式碼,如下圖所示:
混淆程式碼
混淆器中使用了大量與上圖中類似的垃圾程式碼,而用於還原載入原始PE映象資料的關鍵邏輯程式碼也被穿插在這些垃圾程式碼中。還原載入原始PE資料的相關程式碼,如下圖所示:
還原載入原始PE映象資料的相關程式碼
上述程式碼執行完成後,會呼叫載入原始PE映象資料的相關的程式碼邏輯。載入原始PE映象資料的程式碼,首先會獲取LoadLibrary、GetProcAddress函式地址及當前程式模組基址,之後藉此獲取其他關鍵函式地址。解密後的相關程式碼,如下圖所示:
解密後的載入程式碼
原始PE映象資料被使用LZO演算法(Lempel-Ziv-Oberhumer)進行壓縮,經過解壓,再對原始PE映象進行虛擬對映、修復匯入表及重定位資料後,即會執行原始惡意程式碼邏輯。相關程式碼,如下圖所示:
呼叫解壓縮及虛擬對映相關程式碼
蠕蟲病毒
該病毒整體邏輯分為兩個部分,分別為傳播和後門邏輯。該病毒的傳播只針對可移動儲存裝置和網路驅動器,被感染後的可移動儲存裝置或網路驅動器根目錄中會被釋放一組病毒檔案,並通過誘導使用者點選或利用系統自動播放功能進行啟動。蠕蟲病毒通過遍歷磁碟進行傳播的相關邏輯程式碼,如下圖所示:
遍歷磁碟傳播
被釋放的病毒檔案及檔案描述,如下圖所示:
被釋放的病毒檔案及檔案描述
蠕蟲病毒會通過在病毒vbs指令碼中隨機插入垃圾程式碼方式對抗安全軟體查殺,被釋放的vbs指令碼首先會關閉當前資源管理器視窗,之後開啟磁碟根目錄下的”_”資料夾,最後執行病毒程式DeviceConfigManager.exe。釋放病毒vbs指令碼相關邏輯,如下圖所示:
釋放病毒vbs指令碼相關邏輯
除了釋放病毒檔案外,病毒還會根據副檔名刪除磁碟根目錄中的可疑檔案(刪除時會將自身釋放的病毒檔案排除)。被刪除的檔案字尾名,如下圖所示:
被刪除的檔案字尾名
病毒在釋放檔案的同時,還會將根目錄下的所有檔案全部移動至病毒建立的”_”目錄中。除了病毒釋放的快捷方式外,其他病毒檔案屬性均被設定為隱藏,在使用者開啟被感染的磁碟後,只能看到與磁碟名稱、圖示完全相同的快捷方式,從而誘騙使用者點選。快捷方式指向的檔案為DeviceConfigManager.vbs,vbs指令碼功能如前文所述。通過這些手段可以使病毒程式碼執行的同時,儘可能不讓使用者有所察覺。
被釋放的病毒檔案列表
蠕蟲病毒釋放的快捷方式,如下圖所示:
蠕蟲病毒釋放的快捷方式
該病毒的後門邏輯會通過與C&C伺服器進行IRC通訊的方式進行,惡意程式碼會根據當前系統環境將當前受控終端加入到不同的分組中,再通過分組通訊對屬於不同分組的終端分別進行控制。病毒用來進行分組的資訊包括:語言區域資訊、當前系統平臺版本為x86或x64、當前使用者許可權等。後門程式碼中最主要的惡意功能為下載執行遠端惡意程式碼,再借助病毒建立的自啟動項,使該病毒可以常駐於使用者計算機,且可以向受控終端推送的任意惡意程式碼進行執行。病毒首先會使用使用者的語言區域資訊和隨機數生成使用者ID,之後向C&C伺服器傳送NICK和USER通訊命令,隨機的使用者ID會被註冊為NICK通訊命令中的名字,該操作用於受控終端上線。相關程式碼,如下圖所示:
受控終端上線相關程式碼
通過上圖我們可以看到,病毒所使用的C&C伺服器列表中和IP地址眾多,其中很大一部分都為無效域名和地址,主要用於迷惑安全研究人員。在受控端上線後,就會從C&C伺服器獲取控制指令進行執行。病毒可以根據不同的系統環境將當前受控終端進行分組,分組依據包括:語言區域資訊、當前使用者許可權、系統平臺版本資訊(x86/x64)。除此之外,病毒還可以利用控制命令通過訪問IP查詢(http://api.wipmania.com)嚴格限制下發惡意程式碼的傳播範圍。主要控制命令及命令功能描述,如下圖所示:
主要控制命令及命令功能描述
主要後門控制相關程式碼,如下圖所示:
後門控制程式碼
病毒會將遠端請求到的惡意程式碼釋放至%temp%目錄下進行執行,檔名隨機。相關程式碼,如下圖所示:
下載執行遠端惡意程式碼
挖礦病毒
病毒下發的惡意程式碼眾多,我們此次僅以挖礦病毒為例。本次火絨截獲的挖礦病毒執行後,會在電腦運算資源閒置時挖取門羅幣,對於普通使用者來說其挖礦行為很難被察覺。 在本次火絨所截獲到的樣本中,我們發現,病毒下發的所有惡意程式碼都使用了與蠕蟲病毒相同的混淆器。以混淆器還原載入原始PE資料程式碼為例進行對比,如下圖所示:
混淆器程式碼對比圖(左為被下發到終端的挖礦病毒、右為蠕蟲病毒)
挖礦病毒原始惡意程式碼執行後,會將病毒自身複製到C:\Users\使用者名稱\AppData\Roaming\svchostx64.exe位置,並建立計劃任務每分鐘執行一次。病毒會建立互斥量,通過檢測互斥量,可以保證系統中的病毒程式例項唯一。之後,病毒會使用挖礦引數啟動自身程式,再將挖礦程式(XMRig)PE映象資料注入到新啟動的程式中執行挖礦邏輯。在火絨行為沙盒中挖礦病毒行為,如下圖所示:
挖礦病毒行為
如上圖所示,挖礦引數中限制挖礦程式CPU佔用率為3%,並且會通過檢測系統閒置資訊的方式不斷檢測CPU佔用率是否過高,如果過高則會重新啟動挖礦程式。通過遍歷程式檢測工作管理員程式(Taskmgr.exe)是否存在,如果存在則會停止挖礦,待任務管理程式退出後繼續執行挖礦邏輯。病毒通過上述方法提高了病毒自身的隱蔽性,保證病毒可以儘可能的長時間駐留於被感染的計算機中。相關程式碼,如下圖所示:
挖礦邏輯控制程式碼
雖然病毒嚴格控制了挖礦效率,但是由於該病毒感染量較大,總共挖取門羅幣約645個,以門羅幣當前價格計算,合人民幣60餘萬元。病毒使用的門羅幣錢包賬戶交易資訊,如下圖所示:
病毒使用的門羅幣錢包賬戶交易資訊
三、 附錄
文中涉及樣本SHA256:
來源:cnBeta