WebCobra惡意軟體分析
McAfee安全研究人員發現一款新的俄羅斯惡意軟體WebCobra,該惡意軟體可以使用受害者機器的計算能力來進行加密貨幣挖礦活動。
加密貨幣挖礦惡意軟體很難檢測。因為一旦機器被黑,惡意APP就會在後臺執行,唯一的暗示就是效能降級。隨著惡意軟體消耗的計算力越來越多,機器執行速度就會變慢。
研究人員最近發現一款俄羅斯的應用程式WebCobra,會靜默地釋放和安裝Cryptonight加密貨幣挖礦機或Claymore的Zcash挖礦機。主要感染的區域有巴西、南非和美國。
該加密貨幣挖礦惡意軟體與其他加密貨幣軟體不同的是會根據受感染的機器配置不同釋放不同型別的挖礦機。
惡意軟體行為分析
主dropper是一個Microsoft安裝器,會檢查執行環境。在x86系統中,惡意軟體會將Cryptonight挖礦機程式碼注入到執行的程序中,並啟動程序監控器。在x64系統中,會檢查GPU配置並從遠端伺服器下載和執行Zcash挖礦機。
圖3: WebCobra安裝視窗
啟動後,惡意軟體會用下面的命令釋放和解壓一個密碼保護的Cabinet檔案:
圖4: 解壓釋放的檔案的命令
CAB檔案含有兩個檔案:
- LOC: 解密data.bin的DLL檔案
- bin: 含有加密的惡意payload
CAB檔案會用下面的指令碼來執行ERDNT.LOC:
圖5: 載入ERDNT.LOC DLL檔案的指令碼
ERDNT.LOC會解密data.bin並傳遞執行流到該路徑: [PlainText_Byte] = (([EncryptedData_Byte] + 0x2E) ^ 0x2E) + 0x2E
圖6: 解密路徑
程式會檢查執行環節來啟動適當的挖礦機,如下圖所示:
圖7: 根據系統配置啟動適當的挖礦機
data.bin解密和執行後,會嘗試一些反除錯、反模擬、反沙箱技術以及檢查是否有其他安全產品執行。這些步驟可以使惡意軟體潛伏的時間更長。
大多數安全產品都使用hook API來監控惡意軟體行為。為了避免被這類技術發現,WebCobra以資料檔案的形式在記憶體中載入ntdll.dll和user32.dll,然後覆寫這些函式的前8個位元組,這是用來unhook API的。
- unhooked ntdll.dll APIs
- LdrLoadDll
- ZwWriteVirtualMemory
- ZwResumeThread
- ZwQueryInformationProcess
- ZwOpenSemaphore
- ZwOpenMutant
- ZwOpenEvent
- ZwMapViewOfSection
- ZwCreateUserProcess
- ZwCreateSemaphore
- ZwCreateMutant
- ZwCreateEvent
- RtlQueryEnvironmentVariable
- RtlDecompressBuffer
- unhooked user32.dll APIs
- SetWindowsHookExW
- SetWindowsHookExA
感染x86系統
惡意軟體會注入惡意程式碼到svchost.exe,並用無限迴圈來檢查所有開啟的視窗來比較每個視窗的標題文字。這是WebCobra使用的另外一個檢查技術來確定是否執行在用於惡意軟體分析的隔離環境中。
- adw
- emsi
- avz
- farbar
- glax
- delfix
- rogue
- exe
- asw_av_popup_wndclass
- snxhk_border_mywnd
- AvastCefWindow
- AlertWindow
- UnHackMe
- eset
- hacker
- AnVir
- Rogue
- uVS
- malware
如果有以上字串在標題欄中出現,就終止開啟的視窗。
圖8: 如果視窗標題欄中含有特定字串就終止該程序
程序監控執行後,就會用挖礦機的配置建立一個svchost.exe例項,並注入Cryptonight挖礦機程式碼。
圖9: 建立svchost.exe例項並執行Cryptonight挖礦機
最後,惡意軟體會恢復挖礦機程序,並消耗所有CPU資源。
圖10: 被Cryptonight挖礦機感染的x86機器
感染x64系統
惡意軟體如果發現有wireshark執行就終止感染過程。
圖11:檢查wireshark
惡意軟體會檢查GPU的品牌和模式。如果安裝了以下GPU才會執行:
- Radeon
- Nvidia
- Asus
圖12:檢查GPU mode
如果檢查成功,惡意軟體會建立一個含有隱藏屬性的資料夾,並從遠端伺服器下載和執行Claymore的Zcash挖礦機。建立的資料夾為:C:\Users\AppData\Local\WIX Toolset 11.2
圖13: 下載 laymore Zcash挖礦機的請求
圖14: Claymore挖礦機
圖15: 用配置檔案執行挖礦機
最後在%temp%\–xxxxx.cMD中釋放一個batch檔案來刪除[WindowsFolder]\{DE03ECBA-2A77-438C-8243-0AF592BDBB20}\*.*.的dropper
圖16: 刪除dropper的batch檔案
挖礦機配置檔案如下:
圖17: Cryptonight的配置檔案
配置檔案含有:
The mining pool: 5.149.254.170
Username: 49YfyE1xWHG1vywX2xTV8XZzbzB1E2QHEF9GtzPhSPRdK5TEkxXGRxVdAq8LwbA2Pz7jNQ9gYBxeFPHcqiiqaGJM2QyW64C
Password: soft-net
圖18: Claymore Zcash挖礦機配置檔案
配置檔案含有:
The mining pool: eu.zec.slushpool.com
Username: pavelcom.nln
Password: zzz
MITRE攻擊技術一覽
- 通過命令和控制通道竊取資料
- 命令列介面
- Hook
- 本地系統的資料
- 檔案和目錄發現
- 查詢登錄檔
- 系統時間發現
- 程序注入
- 資料加密
- 多層加密
- 檔案刪除
- 資料混淆
IoC
IP addresses
• 149.249.13:2224
• 149.254.170:2223
• 31.92.212
Domains
• fee.xmrig.com
• fee.xmrig.com
• ru
• zec.slushpool.com
https://securingtomorrow.mcafee.com/other-blogs/mcafee-labs/webcobra-malware-uses-victims-computers-to-mine-cryptocurrency/