移花接木大法:新型“白利用”華晨遠控木馬分析

wyzsk發表於2020-08-19
作者: 360安全衛士 · 2015/05/28 5:11

0x00 前言


“白利用”是木馬對抗主動防禦類軟體的一種常用手法。國內較早一批“白利用”木馬是透過系統檔案rundll32.exe啟動一個木馬dll檔案,之後又發展出劫持合法軟體的dll元件來載入木馬dll的攻擊方式。

隨著安全軟體對“白利用”的防禦機制日益完善,木馬也在花樣翻新。近期,360QVM引擎團隊發現“華晨同步專家”遠控木馬家族採用了比較另類的“白利用”技術:該木馬利用白檔案載入dll檔案後,再次啟動白檔案並解除安裝白程式記憶體空間,然後重新填充病毒程式碼執行。

這種“移花接木”的手法,使得病毒程式碼均透過白程式主模組執行,能夠繞過多數安全軟體的主動防禦規則,具有較強的存活能力。以下是對此木馬詳細的技術分析:

0x01 木馬分析


該木馬偽裝成“美女圖片”透過社交軟體、電子郵件等方式傳播,一旦中招,電腦將被駭客傳送指令執行攝像頭監控、螢幕監控等遠端控制行為。目前已知該木馬主要變種達到22個。

enter image description here

圖:“華晨同步專家”遠控木馬及變種

enter image description here

圖:木馬執行過程

“華晨同步專家”木馬檔案:

enter image description here

enter image description here

美女圖片.exe:執行後會釋放update.exe、ETComm.dll、wc.dat這三個檔案,並執行update.exe。這種“三合一”的打包方式相比壓縮包更利於木馬傳播。

  1. update.exe:盛大網路的ET語音啟動程式
  2. ETComm.dll:用於劫持盛大程式的木馬dll檔案
  3. wc.dat:zlib壓縮加密的遠端控制木馬

我們首先從ETComm.dll入手分析:

ETComm.dll分析過程

DllMain中首先獲取模組完整路徑

enter image description here

比較自身完整路徑是否為C:\$WinBackUP.H1502\BinBackup\Images\update.exe 如果不在C:\$WinBackUP.H1502\BinBackup\Images目錄下則將ETComm.dllwc.datupdate.exe複製過去,接下來直接進入100016A0

enter image description here

100016A0進來以後首先訪問C:\$WinBackUP.H1502\BinBackup\Images\wc.dat

enter image description here

申請一段記憶體後將wc.dat的內容讀進去

enter image description here

將讀出來的檔案內容的前四位與0x36異或,得出0x14E00

enter image description here

將解密出來的0x14e00給到一個變數

緊接著就申請出來一塊0x14E00大小的記憶體

之後將這些資料作為引數傳遞到Zlib的解壓函式中

enter image description here

解出來的資料如下

enter image description here

由此我們可以得出wc.dat的結構,第一個DWORD存放的是UnpackFileSize,之後的資料存放的是壓縮後的檔案資料,此時是最好的dump時機。

Dump出來的檔案:

enter image description here

接下來是為記憶體執行exe做準備了

alignPEToMem函式主要作用為載入PE到記憶體,該函式主要內容為對其exe節資料進行初始化操作。AttachPE主要作用為建立外殼程式(盛大網路ET語音啟動程式),並替換程式資料然後執行真正的病毒程式碼

enter image description here

我們重點來看下AttachPE函式的行為:

首先掛起模式再次執行C:\$WinBackUP.H1502\BinBackup\Images\update.exe

enter image description here

呼叫GetThreadContext獲取資訊目標程式的執行緒控制程式碼

enter image description here

得到的資訊存放在結構體lpContext中,接著讀取了目標程式的lpContext結構體中Ebx+8的資料。

[lpContext.Ebx+8]處存的是外殼程式的載入基址,該目標程式的基址為0x00400000

enter image description here

動態獲取ntdllZwUnmapViewOfSection並呼叫,解除安裝目標程式原外殼記憶體資料

enter image description here

重新在目標傀儡程式中申請傀儡程式碼用到的記憶體,0x00400000大小為2C000

enter image description here

enter image description here

記憶體申請成功後在傀儡程式的Context.ebx+8中寫入新的基址(因為兩個檔案基址都為0x400000,所以這一步並沒有什麼用,但是如果對於兩個基址不一樣的檔案這一步就非常必要了)

enter image description here

然後在新申請的記憶體中寫入已經展開了所有節資料的病毒程式碼,大小為0x2C000

enter image description here

重置執行環境中的入口地址,新的OEP為基址+0x0002A820

enter image description here

更新傀儡程式執行環境後恢復傀儡程式執行

enter image description here

至此ETComm.dll的任務已經完成,直接退出了程式

enter image description here

接下來我們來分析被偷樑換柱的update.exe程式

從入口點我們可以看出是UPX加殼

enter image description here

直接ESP定律到程式OEP,入口點程式碼可以看出是VC6.0所編譯

enter image description here

來到Main函式我們可以看到先是呼叫了一些sleep(0)

enter image description here

後面有一些字串單位元組賦值,我們可以看出他拼出來的字串是Kernel32.dll和GetMoudleFileNameA,分別給到了變數LibFileName和ProcName

enter image description here

動態獲取GetMoudleFileNameA

enter image description here

透過GetMoudleFileNameA獲取到檔案所在路徑後,將該路徑寫入登錄檔作為啟動項,啟動項名稱為“Realtek高畫質晰音訊管理器”

enter image description here

enter image description here

獲取資源中的名為“dll”的資源

enter image description here

enter image description here

解密演算法為

xor 0xF1
add 0xF1

中間有很多sleep(0)做干擾

enter image description here

解出來的檔案

enter image description here

Dump出來是dll簡單觀察發現是華晨遠控(Gh0st修改)

enter image description here

繼續往下就是記憶體載入dll。拋棄系統的LoadLibrary和GetProcAddress來自己實現則會使dll不用落地,其目的是躲避安全軟體的雲查殺。

LoadLibrary的實現過程如下:

申請記憶體,寫入PE頭資料

enter image description here

迴圈複製各個節資料

enter image description here

處理重定位

enter image description here

讀取dll的引入表部分,載入引入表部分需要的,並填充需要的函式入口的真實地址

enter image description here

dll

enter image description here

修改各個節記憶體屬性,單獨設定其對應記憶體頁的屬性

enter image description here

enter image description here

執行DllMain函式

enter image description here

enter image description here

GetProcAddress實現過程:

enter image description here

呼叫自寫GetProcAddress獲取“Fi”匯出函式並呼叫

enter image description here

Fi函式負責將整個遠控執行起來了。

以下是遠控基本資訊:

遠控上線地址:dddd.ndiii.com
埠:2012
分組名稱:Default
遠控官網:http://www.jinjingltsh.com/

“華晨同步專家”官網號稱“擁有國家政府機關認證,與眾多安全廠商均有合作”,實際上完全是其捏造的。

enter image description here

enter image description here

0x02 總結


透過以上分析我們看出,“華晨同步專家”遠控木馬的新穎之處,在於利用白程式記憶體執行exe,記憶體執行dll,真正的病毒檔案並不落地,僅存活在記憶體當中,具有較強的免殺能力。

根據VirusTotal對此木馬較新變種樣本的掃描結果,57款防毒軟體中有17款可以將其檢出,檢出率約為30%:

enter image description here

本文章來源於烏雲知識庫,此映象為了方便大家學習研究,文章版權歸烏雲知識庫!

相關文章