2017年9月,360互聯(lián)網(wǎng)安全中心首家發(fā)現(xiàn)了利用msSQL進(jìn)行大規(guī)模入侵并釋放挖礦木馬的僵尸網(wǎng)絡(luò)。木馬先期通過(guò)永恒之藍(lán)漏洞進(jìn)行傳播,后期轉(zhuǎn)為對(duì)msSQL進(jìn)行弱口令攻擊傳播,入侵成功后釋放挖礦木馬,獲利達(dá)數(shù)百萬(wàn)之多。相關(guān)分析詳見(jiàn)2017年發(fā)布的報(bào)告:《悄然崛起的挖礦機(jī)僵尸網(wǎng)絡(luò):打服務(wù)器挖價(jià)值百萬(wàn)門羅幣》。
近日,360互聯(lián)網(wǎng)安全中心又發(fā)現(xiàn)了一批使用msSQL進(jìn)行傳播的挖礦木馬的新型變種。此次木馬攻擊主要利用“白利用”這一通常出現(xiàn)在遠(yuǎn)控或盜號(hào)木馬上的隱藏手段,說(shuō)明此類木馬已經(jīng)具有了與安全軟件對(duì)抗的意識(shí)。并且利用自身在擴(kuò)散形式上的優(yōu)勢(shì)快速傳播,出現(xiàn)僅6天,單日攻擊次數(shù)就突破了10萬(wàn)次。另外,該木馬早期曾出現(xiàn)過(guò)一個(gè)僅攻擊一次就自我退出的版本,但該版本在大量傳播之后便消失,我們懷疑這是一個(gè)作者早期用于驗(yàn)證程序功能的測(cè)試版。

圖1
樣本分析

圖2
DLL模塊被命名為active_desktop_render.dll,其導(dǎo)出表如下

圖3
執(zhí)行邏輯
exe啟動(dòng)后會(huì)加載active_desktop_render模塊,調(diào)用其導(dǎo)出函數(shù)SetDesktopMonitorHook,實(shí)際樣本中直接調(diào)用了king1函數(shù)。king1函數(shù)首先判斷當(dāng)前模塊名稱,不同的文件名稱則執(zhí)行的流程也會(huì)不同,例如當(dāng)
前名稱為assist.exe時(shí),則下載l.txt并內(nèi)存加載執(zhí)行,其他如下圖所示:

圖4
之后根據(jù)系統(tǒng)版本調(diào)整當(dāng)前工作目錄(用于后續(xù)文件落地時(shí)使用),其中不高于xp版本的位于根目錄下/Docume~1/AllUse~1/Applic~1/,否則為/Users/Public/,同時(shí)間隔10分鐘嘗試下載a-n.txt名稱的文件,其中大部分文件以插件形式內(nèi)存加載執(zhí)行。

圖5
插件模塊及域名生成算法
通過(guò)上文可以知道,該dll的行為實(shí)則類似于插件管理器,其大多數(shù)情況下通過(guò)遠(yuǎn)程下載模塊并自行加載,下圖是樣本模塊加載流程示意圖。

圖6
插件模塊的加載
down_memLoader函數(shù)通過(guò)死循環(huán)等待文件下載成功,

圖7

圖8
域名生成算法(DGA)
樣本下拉插件模塊的服務(wù)器域名并不固定,而是通過(guò)前綴后綴方式拼接而成,其中前綴生成算法如下

圖9
后綴從如下列表中獲取

圖10
通過(guò)簡(jiǎn)化之后其域名生成算法如下:

知道域名后,再拼接插件名稱得到下載地址,但訪問(wèn)時(shí)服務(wù)器會(huì)檢測(cè)當(dāng)前請(qǐng)求的UA部分,樣本內(nèi)嵌的UA名稱為onlyme。
d與l模塊
d模塊延遲十分鐘后結(jié)束如下進(jìn)程,其中 manager.exe和diagnosis.exe分別為m和n模塊(未獲取到),a.exe是提權(quán)用到的程序。

圖11
l模塊負(fù)責(zé)結(jié)束上述進(jìn)程并重新啟動(dòng)help.exe,間隔時(shí)間為10小時(shí)。
p模塊
p模塊在啟動(dòng)后,首先判斷當(dāng)前進(jìn)程是否擁有管理員權(quán)限,若有則創(chuàng)建(已有則打開(kāi))名稱為helpsys的服務(wù),其二進(jìn)制文件路徑指向自身help.exe程序,如果權(quán)限不夠,則遠(yuǎn)程拉取遠(yuǎn)端tqdll.txt和tq.txt文件,通過(guò)名稱可以猜測(cè)其主要功能為提權(quán),若成功,則在下次運(yùn)行時(shí)即可創(chuàng)建服務(wù),保證自身持久化駐留服務(wù)器。

圖12
b模塊
b模塊是x64環(huán)境下使用到的,其部署64位環(huán)境下exe(repair.txt)和dll模塊(64zhu.txt),所有exe和dll功能與本文分析基本一致,只不過(guò)在x64下運(yùn)行。同時(shí)下拉config.json與x.png,x.png 為xmr礦機(jī)(被64zhu.txt內(nèi)存加載運(yùn)行),礦機(jī)配置文件config內(nèi)容如下
|