加密貨幣挖礦在2018年有了非常快速的增長。由于加密貨幣的價值,黑客有足夠的動力來利用受害者機器的CPU算力進行加密貨幣挖礦活動。本文分析一種攻擊Windows服務(wù)器的門羅幣挖礦惡意軟件。
KingMiner惡意軟件最早是2018年6月出現(xiàn)的,并且迅速出現(xiàn)2個更新的版本。攻擊者在惡意軟件開發(fā)過程中使用了許多的繞過技術(shù)來繞過模擬和檢測方法,導(dǎo)致許多的殺軟引擎都沒有發(fā)現(xiàn)。
攻擊流
研究人員發(fā)現(xiàn)KingMiner惡意軟件會攻擊Microsoft服務(wù)器(大多是IIS\SQL)并嘗試猜測其密碼。然后會在受害者機器上下載Windows Scriptlet文件(.sct)并執(zhí)行。
在執(zhí)行過程中,有以下步驟:
· 檢測機器的CPU架構(gòu);
· 如果有老版的攻擊文件存在,并kill掉相關(guān)的exe文件進程,然后刪除這些文件;
· 基于檢測到的CPU架構(gòu),下載payload zip文件(zip\64p.zip)。這不是真實的zip文件,而是為了繞過模擬檢測的XML文件。

圖1: HTTP響應(yīng)中的zip payload
· XML payload中包含base64 blob,編碼后會出現(xiàn)在該ZIP文件中。

ZIP文件中含有5個文件:
· config.json – XMRig CPU挖礦機配置文件
· md5.txt – 只含有字符串zzz.的文本文件
· powered.exe (老版本中叫做fix.exe) –主可執(zhí)行文件
· soundbox.dll/soundbox.dll – 含有powered.exe要導(dǎo)出的函數(shù)的DLL文件
· x.txt/y.png –二進制blob文件。這也不是一個真實的PNG文件

圖 2: 攻擊的第一階段

圖 3: config.json –含有錢包地址和私有池的XMRig配置文件
模擬可執(zhí)行文件不會產(chǎn)生任何活動。
在所有的文件都提取出來后,md5.txt文件中的內(nèi)容就會加到相關(guān)的DLL文件中(sandbox.dll\active_desktop_render_x64.dll)。
然后powered.exe/fix.exe會被調(diào)用和執(zhí)行,然后創(chuàng)建一個XMRig挖礦機文件和許多值為Test.的新注冊表。

圖 4: 含有DLL文件的函數(shù)
可執(zhí)行文件會從DLL文件中調(diào)用函數(shù):
· ClearDesktopMonitorHook – 該函數(shù)會返回值1。
· King1 –創(chuàng)建一個線程并相關(guān)二進制blob文件(x.txt/y.png)中的內(nèi)容。這會導(dǎo)致生成一個可執(zhí)行文件,即XMRig CPU挖礦機的精簡版。
DLL文件中含有4個函數(shù),可能在之后用到:
· King2 – 該函數(shù)會返回值1。
· King3 – 該函數(shù)會返回值1。
· King4 – 該函數(shù)會返回值1。
· SetDesktopMonitorHook – 調(diào)用King1。

圖 5: 函數(shù)king1,創(chuàng)建線程并將二進制blob y.png/x.txt作為參數(shù)

圖 6: 攻擊的第二階段
XMRig CPU挖礦機會運行并使用受害者機器的所有CPU算力。
雖然配置為使用CPU算力的75%,但實際上使用的是100%。

圖 7: 惡意powered.exe文件使用CPU 100%算力
KingMiner的進化
Check Point研究人員監(jiān)控到KingMiner惡意軟件在第一次出現(xiàn)后共出現(xiàn)兩個變種。惡意軟件還不斷加入新的特征和繞過方法來避免被檢測和分析。

除此之外,惡意軟件在不斷進化中還預(yù)留了許多占位符用于之后的更新,這也會使檢測變得更難。
繞過技術(shù)
惡意軟件使用繞過技術(shù)是其成功的關(guān)鍵。許多相關(guān)的簡單價值可以使惡意軟件繞過常見的模擬和檢測方法:
· 混淆32p.zip/64p.zip文件。ZIP文件含有基本的XML格式數(shù)據(jù)。在從語法上進行描述或分析后,就可以看到ZIP文件了。
· 主可執(zhí)行文件powered.exe和從DLL中導(dǎo)出的函數(shù)。只執(zhí)行可執(zhí)行文件確保了沒有其他活動。
· 加入md5.txt內(nèi)容到DLL文件中。
· 解碼x.txt/y.png內(nèi)容到可執(zhí)行文件XMRig CPU挖礦機中。
這些繞過技術(shù)都降低了被檢測到的概率:

威脅情報
KingMiner攻擊者使用私有的挖礦池來避免其活動被監(jiān)控。該挖礦池的API已經(jīng)被關(guān)閉了,而且有問題的錢包地址沒有在公共挖礦池中使用過。所以還不能確定使用的域名,因為這也是私有的。但可以看出攻擊的范圍非常廣,包括墨西哥、印度、挪威等。

圖 6: 攻擊地理分布圖
總結(jié)
KingMiner是一款不斷發(fā)展中的加密貨幣挖礦惡意軟件,可以繞過常見的檢測和模擬系統(tǒng)。通過應(yīng)用簡單的繞過技術(shù),攻擊者可以增加攻擊成功的可能性。研究人員預(yù)測這些繞過技術(shù)在2019年會不斷進化,并成為加密貨幣挖礦攻擊的主要組成
|