樣本信息
病毒名稱:3601劫持病毒
所屬家族:Trojan-DDoS.Win32.macri.atk
病毒行為:連接惡意網(wǎng)址下載代碼遠(yuǎn)程執(zhí)行、對lpk.dll進(jìn)行劫持
分析目標(biāo):分析病毒具體的行為,搞清楚病毒的實(shí)現(xiàn)原理,給出合理的方式查殺病毒。
大小: 24576 byte
修改時(shí)間: 2007年1月22日, 16:48:04
MD5: b5752252b34a8af470db1830cc48504d
SHA1: aec38add0aac1bc59bfaaf1e43dbdab10e13db18
CRC32: 4EDB317F
殼類型:UPX殼
編寫語言:VC6
病毒行為:連接惡意網(wǎng)址下載代碼遠(yuǎn)程執(zhí)行、對lpk.dll進(jìn)行劫持
病毒的主要惡意行為
先利用云沙箱獲取基本運(yùn)行情況,如下圖所示。
行為分析
使用火絨劍對病毒的行為進(jìn)行分析,可以歸為以下四類:對文件的操作、對注冊表的操作、對進(jìn)程的操作、對網(wǎng)絡(luò)的操作。
對文件的操作
① 創(chuàng)建fadbwg.exe文件(之后經(jīng)過分析此文件名是隨機(jī)的六個(gè)字母),并寫入數(shù)據(jù):
② 刪除原始的病毒文件:
③ 創(chuàng)建hra33.dll文件和臨時(shí)文件,并寫入數(shù)據(jù):
④ 在多個(gè)文件夾中創(chuàng)建lpk.dll并寫入數(shù)據(jù):
對注冊表的操作
在注冊表中創(chuàng)建Ghijkl Nopqrstu Wxy項(xiàng),并對注冊表有刪除操作:
對進(jìn)程的操作
創(chuàng)建了進(jìn)程,經(jīng)過排查發(fā)現(xiàn)創(chuàng)建的都是cmd、find、rar的進(jìn)程:
對網(wǎng)絡(luò)的操作
病毒對注冊表進(jìn)行了操作,并且有網(wǎng)絡(luò)連接。
發(fā)送網(wǎng)絡(luò)數(shù)據(jù)包,經(jīng)過查看數(shù)據(jù)包流量猜測是發(fā)送了計(jì)算機(jī)的相關(guān)信息:
惡意代碼分析
經(jīng)查殼工具PEID檢查,發(fā)現(xiàn)該病毒加了UPX殼。根據(jù)ESP定律進(jìn)行脫殼處理。
主程序首先通過查看注冊表鍵值來確定服務(wù)是否創(chuàng)建,若服務(wù)未創(chuàng)建則創(chuàng)建并啟動(dòng)服務(wù);若服務(wù)已經(jīng)創(chuàng)建,則對自己進(jìn)行復(fù)制,并且修改相關(guān)服務(wù),最后刪除自己。并且病毒釋放了一個(gè)hra33.dll文件。
病毒為了防止重復(fù)操作,會(huì)先檢測服務(wù)是否創(chuàng)建。
繼續(xù)跟進(jìn),發(fā)現(xiàn)病毒在ADVAPI32.dll中加載函數(shù),并遍歷文件。
病毒利用時(shí)間隨機(jī)數(shù)來生成文件名并進(jìn)行拼接,最后復(fù)制到C:windows目錄下。
繼續(xù)分析,病毒創(chuàng)建了服務(wù),并且修改了相關(guān)的配置,啟動(dòng)服務(wù)。
緊接著病毒添加了注冊表鍵。
可以運(yùn)行病毒,去查看注冊表進(jìn)行對比。
病毒通過字符串拼接來執(zhí)行CMD命令刪除自己。
此時(shí),病毒創(chuàng)建了新的線程,自己已經(jīng)刪除,繼續(xù)分析新的線程。新的程序進(jìn)行了服務(wù)初始化操作。
在跟到4053a6函數(shù)中,會(huì)對注冊表進(jìn)行檢查,并且打開了hra33.dll,復(fù)制了相關(guān)資源到hra33.dll。
對資源進(jìn)行了更新操作。
通過OD可以看到具體的資源。
繼續(xù)分析,發(fā)現(xiàn)hra33.dll被釋放,這個(gè)dll具有劫持功能,將exe相同目錄復(fù)制lpk.dll。
繼續(xù)分析創(chuàng)建線程的函數(shù)。
其中第一個(gè)線程會(huì)初始化一些字符串,用于獲取主機(jī)名和網(wǎng)絡(luò)連接相關(guān)的函數(shù),有可能是利用弱口令進(jìn)行局域網(wǎng)傳播病毒。
經(jīng)過以上分析,可以判定第一個(gè)線程是通過弱口令感染局域網(wǎng)其他主機(jī),當(dāng)用戶名和密碼通過后,可以使用共享目錄將病毒傳播。
繼續(xù)分析創(chuàng)建的第二個(gè)線程。
跟到回調(diào)函數(shù)中,發(fā)現(xiàn)有創(chuàng)建了一個(gè)子線程。
繼續(xù)分析回調(diào)函數(shù)。
發(fā)現(xiàn)這個(gè)函數(shù)進(jìn)行了網(wǎng)絡(luò)連接。若連接成功,就繼續(xù)運(yùn)行,失敗了就返回。
繼續(xù)分析,發(fā)現(xiàn)該線程獲取了一些系統(tǒng)信息,用來判斷系統(tǒng)型號(hào)。
? 同時(shí)獲取了CPU信息。
?繼續(xù)獲取了適配器信息。
獲取了內(nèi)存信息。
發(fā)現(xiàn)函數(shù)4060f0加載了一些dll,并且嘗試發(fā)送了數(shù)據(jù)。
?使用接收到的數(shù)據(jù)進(jìn)行判斷,并作出相應(yīng)的處理。
信息為0x10時(shí),從網(wǎng)絡(luò)上下載惡意代碼保存到臨時(shí)文件,并執(zhí)行。
信息為0x12,根據(jù)時(shí)間隨機(jī)生成數(shù)拼接文件名,并初始化信息。
通過網(wǎng)頁下載新的病毒,下載成功刪掉原來的所有信息。
自身會(huì)被刪除。
當(dāng)信息為0x14時(shí),會(huì)打開IE瀏覽器。
當(dāng)信息為0x6時(shí),則執(zhí)行的操作與0x12一樣。
當(dāng)信息為其他情況時(shí),基本上都是進(jìn)行了初始化Socket操作。
接下來對線程三進(jìn)行分析,跟進(jìn)子線程回調(diào)函數(shù)。
繼續(xù)分析回調(diào)函數(shù)。
繼續(xù)跟進(jìn)子線程回調(diào)函數(shù)。
發(fā)現(xiàn)函數(shù)與線程基本一樣,但是連接的的域名改變了。
用IDA Pro加載hra33.dll,對它進(jìn)行分析。
發(fā)現(xiàn)10019e6添加lpk函數(shù)時(shí),會(huì)遍歷文件,如果遇到exe文件就在相同目錄下拷貝lpk.dll,如果有.rar或者.zip文件,就用100142b進(jìn)行感染。
? 等線程執(zhí)行完畢后退出線程,使用10001123釋放dll。
查殺方案
病毒特征:關(guān)鍵字符串
Ghigkl
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/
1NTUHRYRExYRExYREx3c0eQJChcRFUM=
寫yara 規(guī)則:
然后可以使用ClamAv進(jìn)行查殺。
手工查殺
①結(jié)束相關(guān)進(jìn)程樹;
②刪除注冊表HKEY_LOCAL_MACHINEsystemCurrentControlsetservicesGhijkl Nopqrstu Wxy下注冊表鍵;
③刪除病毒exe和hra32.dll;
④遍歷磁盤和壓縮包,刪除lpk.dll。






