明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

警惕最新的Smoke Loader與Andromeda變種botnet

[摘要]一、概述近期我們翰海源團(tuán)隊(duì)一直在持續(xù)關(guān)注著一個(gè)Bo.net的演變,該Botnet從2014年8月末開(kāi)始活動(dòng),一直持續(xù)到2014年10月底,截至目前該Botnet仍然存活。同時(shí)我們也在金融、IT、政府...

一、概述

近期我們翰海源團(tuán)隊(duì)一直在持續(xù)關(guān)注著一個(gè)Bo.net的演變,該Botnet從2014年8月末開(kāi)始活動(dòng),一直持續(xù)到2014年10月底,截至目前該Botnet仍然存活。同時(shí)我們也在金融、IT、政府、銀行等行業(yè)發(fā)現(xiàn)了攻擊樣本,我們提醒客戶請(qǐng)警惕最新的Smoke LoaderAndromeda變種botnet。

Botnet使用釣魚(yú)郵件作為主要的傳播途徑,郵件大多以“my new photo”或者“New offer Job”為主題,攜帶一個(gè)名為“photo.zip”或者“offer.zip”的壓縮附件。

警惕最新的Smoke Loader和Andromeda變種botnet1cs.xzking.com/d/file/20141101/832b9f5bea501eb1ef4adbe77f5018c7.png' />

警惕最新的Smoke Loader和Andromeda變種botnet2

在監(jiān)控中發(fā)現(xiàn),該Botnet在9月份使用Smoke Loader 作為主要的攻擊載荷,在10月份之后,該Botnet開(kāi)始逐漸轉(zhuǎn)變?yōu)锳ndromeda,這兩種不同類型的Botnet具有一些十分相似的特征,但是出現(xiàn) 在同一個(gè)較大規(guī)模的Botnet中,并不是十分常見(jiàn)。

Smoke Loader Botnet在2011開(kāi)始一些俄語(yǔ)的黑客論壇公開(kāi)出售,2014年3月份作者在論壇申明該程序?qū)⒅会槍?duì)使用“俄語(yǔ)”的客戶出售(only for RU-speaking customers),不過(guò)在網(wǎng)上已經(jīng)流傳出了部分crack版本。

警惕最新的Smoke Loader和Andromeda變種botnet3

Andromeda Botnet幾乎在同一時(shí)間出現(xiàn),目前最新的官方版本為2.08,最初的Andromeda只針對(duì)使用俄語(yǔ)的客戶出售,2012年作者開(kāi)始將舊版本開(kāi)放給使用英語(yǔ)的客戶。

警惕最新的Smoke Loader和Andromeda變種botnet4

這兩種Botnet均通過(guò)模塊化進(jìn)行安裝,原始的安裝程序?yàn)橐粋(gè)裝載器,安裝后將根據(jù)需要下載其他功能模塊,可以竊取主機(jī)上的瀏覽器、FTP、郵件、即時(shí)通信工具的賬戶和密碼,接收控制指令對(duì)指定目標(biāo)發(fā)起DDos攻擊。

該Botnet從8月末開(kāi)始出現(xiàn),9月份大量通過(guò)郵件的方式傳播,從9月份開(kāi)始到10月末這段時(shí)間內(nèi)我們?cè)谀乘接性破脚_(tái)上監(jiān)控到的Botnet每天的活躍統(tǒng)計(jì)就有幾百,如下圖

警惕最新的Smoke Loader和Andromeda變種botnet5

該Botnet的控制中心主要分布在一些歐洲國(guó)家,其中主要的幾個(gè)分布在烏克蘭和俄羅斯境內(nèi)。

警惕最新的Smoke Loader和Andromeda變種botnet6

二、技術(shù)細(xì)節(jié)

2.1 裝載器

該Botnet使用的裝載器采用微軟.Net框架的C#語(yǔ)言編寫(xiě),代碼進(jìn)行混淆處理,我們發(fā)現(xiàn)這種框架具有極好的免殺效果,如下圖在9月19號(hào)捕獲到的樣本在VT上檢測(cè)率為0:

警惕最新的Smoke Loader和Andromeda變種botnet7

裝載器主要負(fù)責(zé)將一字節(jié)數(shù)組拷貝到一塊可寫(xiě)可讀可執(zhí)行的內(nèi)存區(qū)域,并將代碼的控制權(quán)轉(zhuǎn)交給這一字節(jié)數(shù)組:

警惕最新的Smoke Loader和Andromeda變種botnet8

部分裝載器包含以下的pdb路徑:

c:cryptor.servercryptorscsharp_19_09_2014_20_11_44outdir_zjNXqqGibngGNetThreeNetThreeobjx86 ReleaseNetThree.pdb

2.2 注入器

兩種Bot均通過(guò)多次的注入來(lái)執(zhí)行最終的惡意代碼。

2.2.1 Smoke Loader

SmokeLoader裝載器成功將控制器交給shellcode后,shellcode會(huì)首先通過(guò)注冊(cè)表項(xiàng):

HKLMSystemCurrentControlSetServicesDiskEnum

來(lái)判斷是否在以下虛擬機(jī)環(huán)境中:

Virtual、VMware、 QEMU、Xen

我們發(fā)現(xiàn)在Andromeda 2.06的版本中也用到了同樣的方法來(lái)檢測(cè)虛擬機(jī)環(huán)境。

如果沒(méi)有檢測(cè)出虛擬機(jī)環(huán)境,則shellcode讀取裝載器的一段加密數(shù)據(jù)并在內(nèi)存中進(jìn)行解密:

警惕最新的Smoke Loader和Andromeda變種botnet9

解密后的數(shù)據(jù)是一個(gè)可執(zhí)行文件,該文件并不會(huì)寫(xiě)入到磁盤(pán)上,而是通過(guò)進(jìn)程注入的方式來(lái)執(zhí)行。

Smoke Loader會(huì)將這段可執(zhí)行文件注入到Explorer.exe進(jìn)程中,注入的代碼并不是最終要執(zhí)行的惡意代碼,而是另一個(gè)注入器,這個(gè)注入器會(huì)通過(guò) XOR解密另一段代碼并將最終的惡意代碼注入到 svchost.exe進(jìn)程中:

警惕最新的Smoke Loader和Andromeda變種botnet10

2.2.2  Andromeda

整個(gè)裝載過(guò)程中,Andromeda與Smoke Loader幾乎完全相同,在注入的過(guò)程中有部分不同,下圖標(biāo)注部分是Andromeda中的解密標(biāo)記:

警惕最新的Smoke Loader和Andromeda變種botnet11

警惕最新的Smoke Loader和Andromeda變種botnet12

解密完成后shellcode將重新創(chuàng)建一個(gè)掛起的(SUSPEND)自身進(jìn)程,然后將解密后的代碼注入:

警惕最新的Smoke Loader和Andromeda變種botnet13

與Smoke Loader一樣,到這里只是完成了第一次注入,接下來(lái)注入代碼會(huì)根據(jù)當(dāng)前系統(tǒng)的版本為32或者64位來(lái)選擇注入svchost.exe或msiexec.exe。

以注入msiexec.exe為例,注入代碼之前會(huì)首先創(chuàng)建一個(gè)掛起的msiexec.exe進(jìn)程,通過(guò)文件讀取msiexec.exe可執(zhí)行文件 到內(nèi)存中,然后通過(guò)ZwUnMapViewOfSection卸載整個(gè)進(jìn)程空間的數(shù)據(jù),修改原始文件中的入口地址為惡意代碼的地址,通過(guò) ZwMapViewOfSection來(lái)將代碼注入到新創(chuàng)建的SUSPEND進(jìn)程并調(diào)用ResumeThread重新啟動(dòng)進(jìn)程。

警惕最新的Smoke Loader和Andromeda變種botnet14

警惕最新的Smoke Loader和Andromeda變種botnet15

Smoke Loader和Andromeda均會(huì)創(chuàng)建一個(gè)守護(hù)進(jìn)程來(lái)檢測(cè)指定路徑下的可執(zhí)行程序運(yùn)行狀態(tài),一旦發(fā)現(xiàn)被終止會(huì)立即重啟主模塊。

2.3 對(duì)抗

2.3.1 代碼混淆

除了在裝載器的C#代碼中進(jìn)行過(guò)變量和函數(shù)名的混淆外,這兩種Botnet在shellcode的執(zhí)行過(guò)程中均使用同一種函數(shù)名校驗(yàn)和的方法來(lái)執(zhí)行系統(tǒng)函數(shù)。

警惕最新的Smoke Loader和Andromeda變種botnet16

2.3.2 Anti-VM

除了前面提到的Smoke Loader通過(guò)注冊(cè)表來(lái)當(dāng)前運(yùn)行的環(huán)境之外,Andromeda會(huì)遍歷系統(tǒng)當(dāng)前進(jìn)程并計(jì)算進(jìn)程名的CRC32的HASH,然后檢查是否存在包含 vmtoolsd.exe、vmwareuser.exe、regmon.exe、filemon.exe、VBoxService.exe 、VBoxTray.exe、WireShark.exe、procexp.exe 等18個(gè)進(jìn)程的HASH。

警惕最新的Smoke Loader和Andromeda變種botnet17

2.3.3 Anti-API Hook

除了前面的幾種,Andromeda中的shellcode將所有需要的API函數(shù)的第一條指令保存在自己的代碼區(qū),然后通過(guò)兩次跳轉(zhuǎn)來(lái)調(diào)用API,這種方法并沒(méi)有在Smoke Loader中使用。

警惕最新的Smoke Loader和Andromeda變種botnet18

2.4 網(wǎng)絡(luò)通信

2.4.1 Smoke Loader

Smoke使用計(jì)算機(jī)名的CRC32和磁盤(pán)序號(hào)的異或作為每臺(tái)主機(jī)的標(biāo)識(shí)和互斥體名,首次運(yùn)行連接C&C的網(wǎng)絡(luò)數(shù)據(jù)包如下:

警惕最新的Smoke Loader和Andromeda變種botnet19

其中POST數(shù)據(jù)內(nèi)容經(jīng)過(guò)加密,解密后的數(shù)據(jù)格式如下:

cmd=getload&login=[MutexName]&sel=cool1&ver=5.1&bits=0&admin=1&hash=[MutexName]

cmd:command

login:主機(jī)的唯一標(biāo)識(shí)符

sel:botid

ver:版本號(hào)

bits:系統(tǒng)版本標(biāo)識(shí),32或者64位

admin:當(dāng)前程序運(yùn)行用戶是否為管理員

hash:主機(jī)的唯一標(biāo)識(shí)符

返回頁(yè)面?zhèn)窝b成一個(gè)404頁(yè)面并攜帶一段加密的數(shù)據(jù),這段數(shù)據(jù)經(jīng)過(guò)Xor編碼,編碼的Key為附加數(shù)據(jù)的第一個(gè)字節(jié):

警惕最新的Smoke Loader和Andromeda變種botnet20

解碼后的內(nèi)容如下:

Smk0 : socks_rules=127.0.0.1 : :hosts_rules=127.0.0.1 localhost : : :plugin_size=60500

當(dāng)返回的HTTP包中的vary字段包含 0-AAAAA時(shí)代表Smoker Loader的模塊,模塊通過(guò)HTTP傳輸并且沒(méi)有任何的加密和編碼。

警惕最新的Smoke Loader和Andromeda變種botnet21

完整的Smoke Loader Botnet的模塊如下:

警惕最新的Smoke Loader和Andromeda變種botnet22

2.4.2 Andromeda

Andromeda Botnet的模塊通過(guò)RC4進(jìn)行加密并帶有一個(gè)偽裝的PK頭。

警惕最新的Smoke Loader和Andromeda變種botnet23

首次運(yùn)行后發(fā)送到控制服務(wù)器的數(shù)據(jù)包如下:

警惕最新的Smoke Loader和Andromeda變種botnet24

POST的數(shù)據(jù)內(nèi)容經(jīng)過(guò)RC4加密并用Base64進(jìn)行了編碼,RC4加密的key硬編碼在樣本中,本次的RC4 Key為“754037e7be8f61cbb1b85ab46c7da77d”

解密后的POST數(shù)據(jù)如下:

id:%lu bid:%lu os:%lu la:%lu rg:%lu id: 根據(jù)系統(tǒng)磁盤(pán)信息生成的一個(gè)標(biāo)識(shí) bid:botnet的build id os:操作系統(tǒng)的版本信息,32位或64位 la: 本地ip地址的十進(jìn)制表示形式 rg:進(jìn)程是否在管理員權(quán)限下運(yùn)行

2.5 功能

下圖是該Smoke Loader Botnet的控制臺(tái)界面:

警惕最新的Smoke Loader和Andromeda變種botnet25

Smoke Bot可以通過(guò)模塊對(duì)指定的目標(biāo)地址發(fā)起DDos,模塊支持以下類型的DDos攻擊:

HTTP GET Flood、HTTP POST Flood 、Download Flood、 UDP Flood、SYN Flood 、TCP Flood、HTTPS GET Flood、 HTTP Slowloris Flood

可以嗅探包括以下類型的FTP及瀏覽器保存帳號(hào)信息:

FTP, BitKinex, BulletProof FTP Client, Classic FTP, CoffeeCup FTP, Core FTP, CuteFTP, Directory Opus, ExpanDrive, FAR Manager FTP, FFFTP, FileZilla, FlashFXP, Fling, FreeFTP/DirectFTP, Frigate3 FTP, FTP Commander, FTP Control, FTP Explorer, FTP Navigator, FTP Uploader, FTPRush, LeapFTP, NetDrive, SecureFX, SmartFTP, SoftX FTP Client, TurboFTP, UltraFXP, WebDrive, WebSitePublisher, Windows/Total Commander, WinSCP, WS_FTP

Apple Safari, Flock, Google Chrome, Internet Explorer, Mozilla Browser, Mozilla Firefox, Mozilla Thunderbird, Opera, SeaMonkey

SomkeLoader會(huì)在受感染主機(jī)上查找保存的郵件地址,并將找到的郵件地址經(jīng)過(guò)Base64編碼后發(fā)送給控制中心。

警惕最新的Smoke Loader和Andromeda變種botnet26

Andromeda的功能與SmokeLoader近乎相同,下圖是Andromeda Bot的Builder界面。

警惕最新的Smoke Loader和Andromeda變種botnet27

2.8 文件B超行為分析圖

來(lái)張文件B超的高清無(wú)碼圖:

警惕最新的Smoke Loader和Andromeda變種botnet28

三 、安全排查

1.檢查系統(tǒng)注冊(cè)表項(xiàng): HKCUSoftwareMicrosoftWindowsCurrentVersionPoliciesExplorerRun 中是否存在指向名為svchost.exe的啟動(dòng)項(xiàng)。 2. 檢查系統(tǒng)臨時(shí)目錄是否存在名為***.tmp.exe的文件。 3. 檢查系統(tǒng)AppData目錄是否存在未知的可執(zhí)行文件。 4. 檢查系統(tǒng)中是否存在以上列舉MD5的文件。 5. 檢查網(wǎng)絡(luò)流量中是否存在上述列舉的C&C請(qǐng)求。

四、結(jié)論

不管在功能還是對(duì)抗的過(guò)程上,Smoke Loader和Andromeda都具有極為相似的特征,而隨著僵尸網(wǎng)絡(luò)市場(chǎng)越來(lái)越復(fù)雜的利益鏈條關(guān)系,僵尸網(wǎng)絡(luò)之間的關(guān)系也變得錯(cuò)綜復(fù)雜,曾經(jīng)就出現(xiàn)過(guò) 垃圾郵件僵尸網(wǎng)絡(luò)Cutwail和Zeus僵尸網(wǎng)絡(luò)之間發(fā)起相互攻擊的例子,而現(xiàn)在我們已經(jīng)看到Smoke Loader Botnet和Andromeda Botnet正在聯(lián)合,這樣的例子以后可能還會(huì)更多。


上面是電腦上網(wǎng)安全的一些基礎(chǔ)常識(shí),學(xué)習(xí)了安全知識(shí),幾乎可以讓你免費(fèi)電腦中毒的煩擾。