如何推測惡意軟件的下一次攻擊
當我們分析一個流行的惡意軟件家族時,會首先查看其使用的惡意基礎(chǔ)設(shè)施,從而收集線索,查找幕后的開發(fā)者。
本文就以Dridex為例,來說說如何利用惡意基礎(chǔ)設(shè)施來推測下一次可能的攻擊。
Dridex
Dridex銀行木馬于2014年首次出現(xiàn),至今仍是最流行的惡意軟件家族之一。 2020年3月,Dridex成為最受歡迎的惡意軟件之首。
Dridex是由一個名為“Evil Corp”的網(wǎng)絡(luò)犯罪組織創(chuàng)建的,該組織估計對全球銀行系統(tǒng)造成了1億美元的損失。在本文中,我們提供了迄今為止有關(guān)Dridex的關(guān)鍵細節(jié)的介紹。探索了Dridex開發(fā)的歷史,并展示其關(guān)鍵技術(shù)特征和傳播方法。
Dridex中的關(guān)鍵模塊名稱:
- Evgeniy Bogachev:臭名昭著的ZeuS惡意軟件的創(chuàng)建者。
- Maksim Yakubets:負責Eride Corp網(wǎng)絡(luò)犯罪集團的負責人,該集團負責Dridex的運營。
Dridex出現(xiàn)之前,ZeuS最為流行
Zeus是木馬惡意軟件,它的功能包括將受感染的計算機變成一個僵尸網(wǎng)絡(luò)節(jié)點,竊取銀行憑證,下載并執(zhí)行單獨的惡意模塊。根據(jù)聯(lián)邦調(diào)查局的調(diào)查,網(wǎng)絡(luò)犯罪組織的成員試圖利用ZeuS在全球竊取約2.2億美元。
以下時間線顯示了ZeuS發(fā)展的關(guān)鍵點:
當ZeuS源代碼在2011年泄漏時,此惡意軟件的各個分支開始出現(xiàn)。它是非常流行的惡意軟件,并發(fā)展出了許多不同的惡意軟件分支。在撰寫本文時,ZeuS與29個不同的惡意軟件家族相關(guān)聯(lián),共有大約490個版本。
2014年5月,美國聯(lián)邦調(diào)查局(FBI)發(fā)布了一份公告,其中描述了博加喬夫(Evgeniy Bogachev)的情況,并承諾懸賞300萬美元,以獲取有助于逮捕和/或定罪的信息。
Dridex時代
ZeuS家族消失后,Dridex就發(fā)展起來了。該惡意軟件是Bugat演變(于2010年出現(xiàn))的結(jié)果,Bugat v5在2014年被命名為Dridex。據(jù)稱,Andrey Ghinkul(來自摩爾多瓦)是2015年Dridex僵尸網(wǎng)絡(luò)背后的管理員之一。Igor Turashev也是Dridex僵尸網(wǎng)絡(luò)背后的管理員之一。
Denis Gusev是EvilCorp背后的主要投資者之一,更多與Dridex有關(guān)的名字可以在美國財政部制裁聲明中找到。
下面的時間線顯示了Dridex演進的一些里程碑:
Dridex繼而從2017年開始使用Bitpaymer產(chǎn)生了許多勒索軟件,該分支繼續(xù)使用2019年開發(fā)的DoppelPaymer和2020年開發(fā)的WastedLocker。
在2019年,Dridex至少擁有14個活動的僵尸網(wǎng)絡(luò),其中一些以前已經(jīng)被發(fā)現(xiàn),而另一些則是新開發(fā)的。僵尸網(wǎng)絡(luò)通過其ID號來區(qū)分。這些是目前最活躍的:10111, 10222, 10444, 40200, 40300。在2019年底,聯(lián)邦調(diào)查局發(fā)布了一份公告,其中描述了Dridex的作者,并承諾提供500萬美元的獎勵(此前為E.Bogachev提供300萬美元)。
也有證據(jù)表明,馬克西姆過著奢華的生活方式,這無疑是由于他的惡意活動所致。
到目前為止,Maksim Yakubets尚未被執(zhí)法部門逮捕。正如前面提到的,在2020年,Dridex是世界上最流行的惡意軟件家族。
感染鏈
在開始對Dridex樣本本身進行分析之前,我們想了解惡意軟件背后的基礎(chǔ)結(jié)構(gòu)。如何傳播?目標是什么?支持文件的初始檢測率是多少?
Dridex的傳播
當運營商想要傳播Dridex時,他們會使用來自不同網(wǎng)絡(luò)犯罪集團的已建立的垃圾郵件程序,將惡意文件附加到精心制作的電子郵件中。在Dridex生命周期的不同時期,Necurs、Cutwail和Andromeda僵尸網(wǎng)絡(luò)都參與了Dridex的傳播。
當用戶下載并打開此類文檔(可能是Word或Excel)時,將啟動嵌入式宏,以下載并執(zhí)行Dridex有效載荷。
目標
Dridex的目標是來自世界各地的不同知名機構(gòu):
- 美國銀行帳戶;
- 美國信用卡公司;
- 美國金融投資公司;
- 歐洲銀行帳戶;
- 沙特阿拉伯、卡塔爾、阿曼的政府機構(gòu);
誘餌
為了提高Dridex的傳播成功率,惡意攻擊者將其垃圾郵件偽裝成合法的電子郵件。我們可以舉出UPS、FedEx和DHL等公司的例子,這些公司的標識和郵寄風格都被用作這類電子郵件的誘餌。
當受害者點擊鏈接時,帶有惡意文檔的存檔或惡意文檔本身都會被打開。
最初的檢出率
當首次在野外看到Dridex傳輸文件時,它的檢出率非常低。在下面的截圖中,我們看到了Dridex的Excel文檔的初始檢測率:
Dridex傳播文件的初始檢測率
加載程序和有效載荷
Dridex示例包括加載程序和有效載荷,我們將在下面討論每個部分的重點。
反調(diào)試技術(shù)
Dridex加載程序利用OutputDebugStringW函數(shù)使惡意軟件分析更加困難,不同的加載程序會產(chǎn)生不同的輸出(其中“Installing…”字符串非常流行),但該思想在各處都是相同的:創(chuàng)建一個包含大量無意義調(diào)試消息的長循環(huán)。在下面的圖中,我們看到了這樣一個循環(huán)的示例,該循環(huán)的迭代次數(shù)約為2億:
帶有0xBEBBE7C(大約2億次)迭代的循環(huán)調(diào)用OutputDebugStringW
日志中的輸出如下所示:
Dridex調(diào)試消息淹沒了分析日志
混淆
有效載荷被嚴重混淆,幾乎沒有函數(shù)被直接調(diào)用。調(diào)用解析是在標識庫及其包含的函數(shù)的哈希值的幫助下執(zhí)行的。下面的截圖顯示了這樣的分辨率示例:
Dridex有效載荷中的調(diào)用解析示例
所有對關(guān)鍵Dridex任務(wù)重要的函數(shù)都是這樣調(diào)用的。
對Internet函數(shù)的解析調(diào)用示例
我們使用Labeless工具來解決混淆的函數(shù)調(diào)用,惡意軟件中的字符串使用RC4算法和樣本中存儲的解密密鑰進行混淆。
配置
有效載荷內(nèi)部的主要關(guān)注點是其配置,它包含以下重要細節(jié):
- 木馬ID;
- C&C服務(wù)器的數(shù)量;
- C&C服務(wù)器本身的列表;
配置示例:
有效載荷內(nèi)部Dridex配置的示例
本示例中的木馬ID為12333,命令和控制服務(wù)器包括:
- 92.222.216.44:443
- 69.55.238.203:3389
- 66.228.47.181:443
- 198.199.106.229:5900
- 104.247.221.104:443
- 178.254.38.200:884
- 152.46.8.148:884
網(wǎng)絡(luò)活動
Dridex從配置向服務(wù)器發(fā)送POST請求以獲取更多命令,等待200 OK響應(yīng)。請注意,這些服務(wù)器不是真實的C&C服務(wù)器,而是連接到真實服務(wù)器的代理。
Dridex僵尸網(wǎng)絡(luò)基礎(chǔ)設(shè)施
惡意軟件發(fā)送到C&C服務(wù)器的信息包含以下數(shù)據(jù):
- 計算機名;
- 僵尸網(wǎng)絡(luò)身份證號碼;
- 請求類型;
- 操作系統(tǒng)的架構(gòu);
- 已安裝軟件列表;
這些數(shù)據(jù)用RC4算法加密,密鑰存儲在惡意軟件的加密字符串中。
至少有6種不同類型的請求;其中有以下幾種:
- " list ":獲取配置;
- " bot ":接收bot模塊;
使用IOC盡早發(fā)現(xiàn)
感染越早被發(fā)現(xiàn),緩解的機會就越大。為了在花費最少資源的情況下盡快捕獲感染,我們希望專注于初始傳播階段。
但是,檢測只是一個方面。我們可能會自信地說某些東西是惡意的,但我們也想對威脅進行分類。為此,我們必須確保該特定惡意軟件確實是Dridex。
讓我們再次看看Dridex感染鏈,并確定我們可以用于檢測和識別的不同階段:
Dridex檢測的不同階段
在Dridex感染的不同階段,我們可以使用以下指標進行檢測。
第一階段,惡意文件:
文件哈希;
- 文件內(nèi)的圖片;
- 文件的內(nèi)部結(jié)構(gòu);
- 內(nèi)部使用的宏;
第二階段,服務(wù)器:
- 域;
- 網(wǎng)址;
第三階段,加載程序和有效載荷:
- 樣本哈希;
- 配置文件中的IP地址;
為什么這么多因素很重要?
我們已經(jīng)看到Dridex的基礎(chǔ)設(shè)施和指標以及其他流行的惡意軟件家族(例如Emotet和Ursnif)之間的關(guān)聯(lián)。當用于傳送上述所有惡意軟件時,惡意文檔具有共同的指標。一些C2服務(wù)器,確切地說,是代理服務(wù)器——被Dridex和Emotet使用,盡管端口和連接類型是不同的。
因此,在得出結(jié)論之前,我們必須分析很多細節(jié)。與我們所擁有的特定僵尸網(wǎng)絡(luò)相關(guān)的獨特因素越多,就越容易說出另一種攻擊是否具有相同的模式。
當然,對惡意軟件進行分類的理想方法當然是獲取并分析最終的有效載荷:如果是Dridex,則在惡意軟件之前啟動的所有內(nèi)容也都歸為Dridex。但是,在知道結(jié)果之前可能需要一些時間(有時在獲得最初的惡意文檔之后需要相當長的時間)。通過分析感染鏈早期階段的所有指標,我們可以更快、更有信心地進行分類。
另一個有趣的注意事項是利用相同的網(wǎng)絡(luò)下載Dridex示例,我們分析了用于此目的的域,解析了它們的IP,發(fā)現(xiàn)其中很多都位于同一網(wǎng)絡(luò)84.38.180.0/22中,總共可用地址少于1024個。該網(wǎng)絡(luò)屬于俄羅斯ASN Selectel公司,該公司很少刪除惡意內(nèi)容或垃圾郵件。
我們在84.38.180.0/22網(wǎng)絡(luò)(以及同一ASN內(nèi)的其他網(wǎng)絡(luò))中看到了以下鏈接到Dridex域的IP地址,日期顯示Dridex域首次指向相應(yīng)的IP:
盡管僅憑此因素不足以識別Dridex,但這是處理Dridex IOC時要參考的一個很好的輔助細節(jié)。
檢測
下面的圖表顯示了不同日期的Dridex峰值
6月29日Dridex感染峰值
7月6日至7月8日Dridex感染峰值
能夠盡早攔截Dridex攻擊至關(guān)重要,在許多情況下,如果7月6日至7月8日之間連續(xù)幾天都沒有發(fā)送垃圾郵件,則僵尸網(wǎng)絡(luò)的活動在第二天就會變慢,并且我們獲得的IOC匹配次數(shù)不會像高峰期那樣多
Dridex的發(fā)展
自7月22日以來,我們還沒有發(fā)現(xiàn)任何新的Dridex垃圾郵件樣本。 Dridex在9月7日重新出現(xiàn),顯示其活動峰值連續(xù)2天大幅增加:
Dridex運營商更新了Dridex執(zhí)行的第一階段:他們添加了更多可從其下載有效載荷的URL,而不是最早版本的惡意文檔中的單個URL?,F(xiàn)在,在單一文件中,他們的數(shù)量可能高達50個。
我們一直在監(jiān)控這個僵尸網(wǎng)絡(luò),并在不同的執(zhí)行階段檢測它的有效載荷。
本文翻譯自:https://research.checkpoint.com/2021/stopping-serial-killer-catching-the-next-strike/