卡巴斯基實(shí)驗(yàn)室(Kaspersky Lab)ICS CERT發(fā)現(xiàn)了一系列帶有惡意附件的網(wǎng)絡(luò)釣魚電子郵件,主要針對(duì)的是與工業(yè)生產(chǎn)相關(guān)的企業(yè)和機(jī)構(gòu)。網(wǎng)絡(luò)釣魚電子郵件偽裝成合法的商業(yè)邀請(qǐng)函,主要被發(fā)送給位于俄羅斯的工業(yè)企業(yè),且每一封電子郵件的內(nèi)容都與目標(biāo)收件人所從事的工作有很大的相關(guān)性。
根據(jù)我們收集到的數(shù)據(jù),這一系列攻擊開始于2017年11月,且目前仍在進(jìn)行中。值得注意的是,早在2015年就已經(jīng)有類似攻擊的記錄。
這些攻擊中使用的惡意軟件安裝了合法的遠(yuǎn)程管理軟件——TeamViewer或Remote Manipulator System/Remote Utilities(RMS),這使攻擊者能夠遠(yuǎn)程控制受感染的系統(tǒng)。另外,攻擊者還使用了各種技術(shù)來(lái)掩蓋系統(tǒng)被安裝在系統(tǒng)中的惡意軟件的感染和活動(dòng)。
根據(jù)現(xiàn)有數(shù)據(jù),攻擊者的主要目標(biāo)是從受害企業(yè)的帳戶中竊取資金。在攻擊者連接到受害者的計(jì)算機(jī)之后,他們會(huì)搜索并分析采購(gòu)文檔,以及其使用的財(cái)務(wù)和會(huì)計(jì)軟件。在此之后,攻擊者會(huì)尋找各種方法來(lái)實(shí)施財(cái)務(wù)欺詐,例如偽造用于付款的銀行信息。
在感染系統(tǒng)之后,如果攻擊者需要額外的數(shù)據(jù)或功能(如權(quán)限提升和獲取本地管理員權(quán)限、竊取用于財(cái)務(wù)軟件和服務(wù)的用戶身份驗(yàn)證數(shù)據(jù),或者用于橫向移動(dòng)的Windows帳戶),那么他們會(huì)將一個(gè)額外的惡意軟件集合下載到系統(tǒng)中,且它是專門針對(duì)每一位個(gè)人受害者的攻擊而量身定制的。這個(gè)惡意軟件集合可能包括間諜軟件、擴(kuò)展攻擊者對(duì)受感染系統(tǒng)控制的其他遠(yuǎn)程管理工具、用于利用操作系統(tǒng)和應(yīng)用軟件漏洞的惡意軟件,以及為攻擊者提供Windows帳戶數(shù)據(jù)的Mimikatz工具。
攻擊者很顯然是通過(guò)分析被攻擊企業(yè)員工的通信來(lái)獲取他們進(jìn)行犯罪活動(dòng)所需的信息。另外,他們也可以使用這些電子郵件中的信息來(lái)準(zhǔn)備新的攻擊——針對(duì)與當(dāng)前受害者合作的企業(yè)。除了經(jīng)濟(jì)損失之外,這些攻擊還會(huì)導(dǎo)致受害企業(yè)敏感數(shù)據(jù)的泄露。
網(wǎng)絡(luò)釣魚電子郵件
在大多數(shù)案例中,網(wǎng)絡(luò)釣魚電子郵件的內(nèi)容都與財(cái)務(wù)相關(guān),其附件的命名也體現(xiàn)了這一點(diǎn)。具體來(lái)說(shuō),其中一些電子郵件聲稱是由大型工業(yè)企業(yè)所發(fā)出的招標(biāo)邀請(qǐng)(見(jiàn)下文)。
惡意附件通常會(huì)是一個(gè)存檔文件。有些電子郵件沒(méi)有附件,在這些案例中,電子郵件的正文旨在引誘收件人點(diǎn)擊一個(gè)指向外部資源的鏈接,而惡意對(duì)象就會(huì)從這些資源下載。
以下是針對(duì)某些企業(yè)的攻擊中所使用的網(wǎng)絡(luò)釣魚電子郵件的示例:
網(wǎng)絡(luò)釣魚電子郵件的屏幕截圖
這封電子郵件聲稱自己是由一家知名的工業(yè)企業(yè)發(fā)出的。發(fā)送該電子郵件的服務(wù)器的域名與該企業(yè)官方網(wǎng)站的域名確實(shí)非常相似。電子郵件附帶有一個(gè)受密碼保護(hù)的存檔文件,而這個(gè)密碼可以在電子郵件的正文中找到。
值得注意的是,攻擊者在電子郵件中使用了該企業(yè)一名員工的全名(出于保密原因,我們對(duì)電子郵件的這部分內(nèi)容進(jìn)行了屏蔽處理,見(jiàn)上面的屏幕截圖)。這表明攻擊是經(jīng)過(guò)精心準(zhǔn)備的,并且攻擊者針對(duì)每一名目標(biāo)收件人都創(chuàng)建了包含與特定企業(yè)相關(guān)的詳細(xì)信息的個(gè)人電子郵件。
作為攻擊的一部分,攻擊者使用了各種技術(shù)來(lái)掩蓋感染過(guò)程。在此類案例中,除惡意軟件組件和遠(yuǎn)程管理應(yīng)用程序之外,Seldon 1.7(用于搜索招標(biāo)信息的合法軟件)也被安裝在了受感染的系統(tǒng)中。
為了不讓用戶懷疑他們?yōu)槭裁礇](méi)有獲取到在釣魚電子郵件中提到的采購(gòu)招標(biāo)信息,惡意程序所安裝的這個(gè)Seldon 1.7軟件實(shí)質(zhì)上是一個(gè)惡意版本。
合法軟件Seldon 1.7的窗口
在某些案例中,受害者看到的是一個(gè)部分損壞的圖像。
由惡意軟件打開的圖像
此外,還存在將一個(gè)已知的惡意軟件被偽裝成一份包含銀行轉(zhuǎn)帳收據(jù)的PDF文檔的案例。奇怪的是,收據(jù)的確包含有效的數(shù)據(jù)。具體來(lái)說(shuō),它提到了現(xiàn)有公司及其有效的財(cái)務(wù)細(xì)節(jié),甚至連汽車的VIN碼也與其型號(hào)相匹配。
銀行轉(zhuǎn)帳收據(jù)的屏幕截圖
在這些攻擊中使用的惡意軟件安裝了合法的遠(yuǎn)程管理軟件——TeamViewer或Remote Manipulator System/Remote Utilities(RMS)。
使用RMS實(shí)施的攻擊
有幾種已知的方法可以將惡意軟件安裝到系統(tǒng)中。惡意文件可以通過(guò)附加到電子郵件中可執(zhí)行文件運(yùn)行,也可以通過(guò)特制的Windows命令解釋程序運(yùn)行。
例如,上面提到的存檔文件就包含了一個(gè)與其擁有相同名稱的可執(zhí)行文件,并且它是一個(gè)受密碼保護(hù)的自解壓存檔文件。存檔文件會(huì)在提取文件的同時(shí)運(yùn)行一個(gè)腳本,用于安裝和啟動(dòng)系統(tǒng)中的實(shí)際惡意軟件。
惡意軟件安裝文件的內(nèi)容
從上面屏幕截圖中的命令可以看出,在復(fù)制文件后,腳本會(huì)刪除自身文件,并在系統(tǒng)中啟動(dòng)合法軟件——Seldon v.1.7和RMS,使攻擊者能夠在用戶不知情的情況下控制受感染的系統(tǒng)。
惡意軟件的文件將被安裝在%AppData%\LocalDataNT folder %AppData%\NTLocalData文件夾或%AppData%\NTLocalAppData文件夾中,這取決于它的版本。
當(dāng)它啟動(dòng)時(shí),合法的RMS軟件將加載操作所需的動(dòng)態(tài)庫(kù)(DLL),包括系統(tǒng)文件winspool.drv,它位于系統(tǒng)文件夾中,用于將文檔發(fā)送到打印機(jī)。由于RMS使用其相對(duì)路徑不安全地加載庫(kù)(供應(yīng)商已被告知此漏洞),因此使得攻擊者能夠進(jìn)行DLL劫持攻擊:他們將惡意庫(kù)放置在與RMS可執(zhí)行文件所處的同一個(gè)目錄中,從而導(dǎo)致一個(gè)惡意軟件組件被加載并獲得控制權(quán),而不是相應(yīng)的系統(tǒng)庫(kù)。
惡意庫(kù)會(huì)完成惡意軟件的安裝。具體來(lái)說(shuō),它會(huì)創(chuàng)建一個(gè)注冊(cè)表值,負(fù)責(zé)在系統(tǒng)啟動(dòng)時(shí)自動(dòng)運(yùn)行RMS。值得注意的是,在此次活動(dòng)的大多數(shù)案例中,注冊(cè)表值被放置在RunOnce鍵值中,而不是Run鍵值,這使得惡意軟件僅在下次系統(tǒng)啟動(dòng)時(shí)自動(dòng)運(yùn)行。之后,惡意軟件需要再次創(chuàng)建注冊(cè)表值。
之所以選擇這種方法,很可能來(lái)自于攻擊者想要通過(guò)這種方法來(lái)掩蓋惡意軟件在系統(tǒng)中的存在。另外,惡意庫(kù)還實(shí)現(xiàn)了對(duì)抗分析和檢測(cè)的技術(shù)。其中一種技術(shù)涉及使用哈希值動(dòng)態(tài)導(dǎo)入Windows API函數(shù)。通過(guò)這種方式,攻擊者就不必將這些函數(shù)的名稱存儲(chǔ)在惡意庫(kù)的主體中,這有助于他們對(duì)大多數(shù)分析工具隱藏程序的實(shí)際功能。
實(shí)現(xiàn)動(dòng)態(tài)導(dǎo)入函數(shù)的惡意代碼段的一部分
惡意動(dòng)態(tài)庫(kù)文件winspool.drv將解密由攻擊者準(zhǔn)備的配置文件,其中包含RMS軟件的設(shè)置、遠(yuǎn)程控制計(jì)算機(jī)的密碼以及通知攻擊者系統(tǒng)已成功被感染所需的設(shè)置。
其中一個(gè)配置文件包含了一個(gè)電子郵件地址,用于接收有關(guān)受感染系統(tǒng)的信息,包括計(jì)算機(jī)名稱、用戶名、RMS計(jì)算機(jī)的Internet ID等。其中,Internet ID是在計(jì)算機(jī)連接到RMS供應(yīng)商的合法服務(wù)器上生成的。這個(gè)標(biāo)識(shí)符隨后將用于連接到位于NAT后面的遠(yuǎn)程控制系統(tǒng)(在流行的即時(shí)消息解決方案中也使用了類似的機(jī)制)。
在已發(fā)現(xiàn)的配置文件中找到的電子郵件地址列表將在IoCs部分中提供。
一個(gè)RC4的修改版本被用于加密配置文件。上面提到的存檔文件中的配置文件如下所示。
解密后的InternetId.rcfg文件的內(nèi)容
解密后的notification.rcfg文件的內(nèi)容
解密后的Options.rcfg文件的內(nèi)容
解密后的Password.rcfg文件的內(nèi)容
在完成這些之后,攻擊者就可以使用系統(tǒng)的Internet ID和密碼在用戶不知情的情況下通過(guò)合法的RMS服務(wù)器使用標(biāo)準(zhǔn)的RMS客戶端來(lái)控制整個(gè)系統(tǒng)。
使用TeamViewer實(shí)施的攻擊
使用合法的TeamViewer軟件實(shí)施的攻擊與使用RMS軟件實(shí)施的攻擊非常相似,具體如上所述。最顯著的一個(gè)區(qū)別特征是,來(lái)自受感染系統(tǒng)的信息被發(fā)送到了惡意軟件的命令和控制服務(wù)器,而不是攻擊者的電子郵件地址。
與使用RMS一樣,惡意代碼通過(guò)將惡意庫(kù)替換為系統(tǒng)DLL注入到TeamViewer進(jìn)程中。在使用TeamViewer的案例中,攻擊者使用了msimg32.dll。
這并非一種專屬戰(zhàn)術(shù),合法的TeamViewer軟件之前曾被用于APT和網(wǎng)絡(luò)犯罪攻擊。在使用過(guò)這個(gè)工具集的組織中,最知名的應(yīng)該算是TeamSpy Crew。不過(guò),我們認(rèn)為在本文中描述的攻擊與TeamSpy無(wú)關(guān),而是另一個(gè)網(wǎng)絡(luò)犯罪集團(tuán)所為。奇怪的是,在分析這些攻擊的過(guò)程中被識(shí)別出來(lái)的用于加密配置文件和解密密碼的算法與去年4月份描述類似攻擊的一篇文章中所公布的算法完全相同。
大家都知道,合法的TeamViewer軟件并不會(huì)向用戶隱藏其啟動(dòng)或操作,尤其是在遠(yuǎn)程控制接入的時(shí)候會(huì)通知用戶??墒?,攻擊者需要在用戶不知情的情況下獲得對(duì)受感染系統(tǒng)的遠(yuǎn)程控制。為此,他們掛鉤了幾個(gè)Windows API函數(shù)。
攻擊者使用了一種名為“Hooking”的眾所周知的方法來(lái)將函數(shù)掛鉤起來(lái)。因此,當(dāng)合法的軟件調(diào)用其中一個(gè)Windows API函數(shù)時(shí),控制權(quán)將被傳遞給惡意DLL,而合法的軟件只會(huì)得到一個(gè)欺騙性的響應(yīng),而不是一個(gè)來(lái)自操作系統(tǒng)的響應(yīng)。
Windows API函數(shù)被惡意軟件掛鉤
掛鉤Windows API函數(shù)使攻擊者能夠隱藏TeamViewer的窗口,保護(hù)惡意軟件文件不被檢測(cè)到,并控制TeamViewer啟動(dòng)參數(shù)。
啟動(dòng)后,惡意庫(kù)通過(guò)執(zhí)行命令“ping 1.1.1.1”來(lái)檢查Internet連接是否可用,然后解密惡意程序的配置文件tvr.cfg。該文件包含各種參數(shù),例如用于遠(yuǎn)程控制系統(tǒng)的密碼、攻擊者的命令和控制服務(wù)器的URL、在發(fā)送到命令和控制服務(wù)器的請(qǐng)求中使用的HTTP標(biāo)頭的User-Agent字段、用于TeamViewer的VPN參數(shù)等。
解密后的惡意軟件配置文件的內(nèi)容
與RMS不同地方在于,Team Viewer使用內(nèi)置VPN遠(yuǎn)程控制位于NAT后面的計(jì)算機(jī)。
與RMS相同的地方在于,相關(guān)的值將被添加到RunOnce注冊(cè)表鍵值中,以確保惡意軟件在系統(tǒng)啟動(dòng)時(shí)自動(dòng)運(yùn)行。
惡意軟件會(huì)收集受感染計(jì)算機(jī)上的數(shù)據(jù),并將其連同遠(yuǎn)程管理所需的系統(tǒng)標(biāo)識(shí)符一起發(fā)送到命令和控制服務(wù)器。發(fā)送的數(shù)據(jù)包括:
操作系統(tǒng)版本
用戶名
計(jì)算機(jī)名
有關(guān)正在運(yùn)行惡意軟件的用戶權(quán)限級(jí)別的信息
系統(tǒng)中是否存在麥克風(fēng)和網(wǎng)絡(luò)攝像頭
是否安裝了防病毒軟件或其他安全解決方案,以及UAC級(jí)別
惡意軟件會(huì)通過(guò)以下WQL查詢來(lái)獲取有關(guān)系統(tǒng)中安裝的安全軟件的信息:
root\SecurityCenter:SELECT*FROMAntiVirusProduct
收集的信息將通過(guò)以下POST請(qǐng)求發(fā)送給攻擊者的服務(wù)器:
用于向命令和控制服務(wù)器發(fā)送加密數(shù)據(jù)的POST請(qǐng)求
涉及TeamViewer的攻擊的另一個(gè)顯著區(qū)別特征是能夠向受感染的系統(tǒng)發(fā)送命令,并讓它們由惡意軟件執(zhí)行。這些命令通過(guò)TeamViewer應(yīng)用程序中內(nèi)置的Chat(聊天)模塊從命令和控制服務(wù)器發(fā)送命令。當(dāng)然,聊天窗口會(huì)被惡意庫(kù)隱藏,且日志文件會(huì)被刪除。
被發(fā)送到受感染系統(tǒng)的命令將通過(guò)以下指令在Windows命令解釋程序中執(zhí)行:
cmd.exe/cstart/b
參數(shù)“/ b”表示由攻擊者發(fā)送的用于執(zhí)行的命令將在不創(chuàng)建新窗口的情況下運(yùn)行。
此外,當(dāng)惡意軟件從攻擊者的服務(wù)器接收到對(duì)應(yīng)的命令時(shí),它還會(huì)執(zhí)行自毀機(jī)制。
其他被使用的惡意軟件
當(dāng)攻擊者還需要其他數(shù)據(jù)(如授權(quán)數(shù)據(jù))的時(shí)候,他們會(huì)將間諜軟件下載到受害者的計(jì)算機(jī)上,以便收集電子郵箱、網(wǎng)站、SSH/FTP/Telnet客戶端的登錄名和密碼,以及記錄擊鍵和屏幕截圖。
在攻擊者的服務(wù)器上安裝并下載到受害者計(jì)算機(jī)上的其他軟件中,被發(fā)現(xiàn)包含來(lái)自以下家庭的惡意軟件:
Babylon RAT
Betabot/Neurevt
AZORult stealer
Hallaj PRO Rat
對(duì)于這些木馬而言,它們被下載到受感染系統(tǒng)中,很可能是被用來(lái)收集信息和竊取數(shù)據(jù)。除了遠(yuǎn)程管理之外,這些惡意軟件還包括以下功能:
記錄擊鍵
屏幕截圖
收集系統(tǒng)信息以及與已安裝程序和正在運(yùn)行的進(jìn)程有關(guān)的信息
下載其他惡意文件
使用計(jì)算機(jī)作為代理服務(wù)器
從流行的程序和瀏覽器中竊取密碼
竊取加密貨幣錢包
竊取Skype消息
進(jìn)行DDoS攻擊
攔截和欺騙用戶流量
將任意用戶文件發(fā)送到命令和控制服務(wù)器
在其他一些案例中,在對(duì)受感染系統(tǒng)進(jìn)行初步分析后,攻擊者會(huì)將一個(gè)額外的惡意軟件模塊下載到受害者的計(jì)算機(jī)中。這是一個(gè)包含多種惡意和合法程序的自解壓存檔文件,它很可能是針對(duì)某些特定系統(tǒng)而額外被下載的。
例如,如果惡意軟件是在沒(méi)有本地管理員權(quán)限的情況下執(zhí)行的,那么為了繞過(guò)Windows用戶帳戶控制(UAC),攻擊者則會(huì)使用上面提到的DLL劫持技術(shù)。但在這種情況下,使用的是Windows系統(tǒng)文件%systemdir%\migwiz\migwiz.exe和庫(kù)文件cryptbase.dll。
此外,攻擊者在一些系統(tǒng)中還安裝了另一個(gè)遠(yuǎn)程管理實(shí)用程序RemoteUtilities,它提供了比RMS或TeamViewer更強(qiáng)大的功能集來(lái)控制受感染的計(jì)算機(jī)。其功能包括:
遠(yuǎn)程控制系統(tǒng)(RDP)
從受感染的系統(tǒng)下載文件或上傳文件到受感染系統(tǒng)
控制受感染系統(tǒng)的電源
遠(yuǎn)程管理正在運(yùn)行的應(yīng)用程序的進(jìn)程
遠(yuǎn)程shell(命令行)
管理硬件
屏幕截圖和錄制屏幕
通過(guò)連接到受感染系統(tǒng)的設(shè)備錄制音頻和視頻
遠(yuǎn)程管理系統(tǒng)注冊(cè)表
攻擊者使用了RemoteUtilities的修改版本,使得他們能夠在用戶不知情的情況下執(zhí)行上述操作。
在某些案例中,除了cryptbase.dll和RemoteUtilities之外,攻擊者還安裝了Mimikatz實(shí)用程序。我們認(rèn)為,如果第一個(gè)受感染的系統(tǒng)沒(méi)有安裝財(cái)務(wù)數(shù)據(jù)處理軟件,那么攻擊者則會(huì)安裝Mimikatz。Mimikatz實(shí)用程序被攻擊者竊取企業(yè)員工的身份驗(yàn)證數(shù)據(jù),并獲取對(duì)企業(yè)網(wǎng)絡(luò)中其他計(jì)算機(jī)的遠(yuǎn)程訪問(wèn)。攻擊者使用這種技術(shù)會(huì)給企業(yè)帶來(lái)很大的威脅:如果他們成功獲取到了域管理員帳戶的憑證,那么他們則可以控制企業(yè)網(wǎng)絡(luò)中的所有系統(tǒng)。
攻擊的目標(biāo)
根據(jù)KSN的數(shù)據(jù),在2017年10月到2018年6月期間,大約有800屬于工業(yè)企業(yè)的員工計(jì)算機(jī)被本文中描述的惡意軟件所攻擊。
在2017年10月到2018年6月期間被攻擊的計(jì)算機(jī)數(shù)量(按月統(tǒng)計(jì))
據(jù)我們估計(jì),俄羅斯至少有400家工業(yè)企業(yè)成為了這次攻擊的目標(biāo),涉及到以下行業(yè):
制造業(yè)
石油和天然氣
冶金
工程
能源
建造
礦業(yè)
物流
基于此,可以得出結(jié)論,攻擊者并不專注于任何特定行業(yè)或領(lǐng)域的企業(yè)。與此同時(shí),他們的活動(dòng)清楚地表明了他們專注于破壞屬于工業(yè)企業(yè)的系統(tǒng)。網(wǎng)絡(luò)犯罪分子的這一選擇可能是因?yàn)楣I(yè)企業(yè)的網(wǎng)絡(luò)威脅意識(shí)和網(wǎng)絡(luò)安全文化遠(yuǎn)不如其他經(jīng)濟(jì)領(lǐng)域(如銀行或IT公司)的企業(yè)。另外,正如我們?cè)缜八岬降哪菢?,工業(yè)企業(yè)與其他領(lǐng)域的企業(yè)相比更習(xí)慣于在其賬戶上進(jìn)行涉及大量資金的操作。這些都使得它們成為對(duì)于網(wǎng)絡(luò)罪犯而言更具吸引力的目標(biāo)。
結(jié)論
這項(xiàng)研究再次表明,即使使用簡(jiǎn)單的技術(shù)和已知的惡意軟件,攻擊者也可以通過(guò)熟練地使用社會(huì)工程并在目標(biāo)系統(tǒng)中掩蓋惡意代碼來(lái)成功地攻擊大量的工業(yè)企業(yè)。犯罪分子積極地使用社會(huì)工程來(lái)避免用戶懷疑自己的計(jì)算機(jī)受到了感染。另外,他們還使用了合法的遠(yuǎn)程管理軟件來(lái)逃避防病毒解決方案的檢測(cè)。
這一系列攻擊主要針對(duì)的是俄羅斯的企業(yè),但同樣的戰(zhàn)術(shù)和工具同樣可用來(lái)攻擊全世界范圍內(nèi)任何國(guó)家的工業(yè)企業(yè)。
我們認(rèn)為,此次攻擊事件背后的幕后黑手很可能是一個(gè)犯罪集團(tuán),其成員對(duì)俄語(yǔ)有著很熟練的掌握,這一點(diǎn)可以從網(wǎng)絡(luò)釣魚電子郵件正文的高水平編寫以及修改俄語(yǔ)企業(yè)財(cái)務(wù)數(shù)據(jù)的能力上體現(xiàn)出來(lái)。
遠(yuǎn)程管理功能使犯罪分子能夠完全控制被破壞的系統(tǒng),因此可能的攻擊場(chǎng)景不僅限于盜竊資金。在攻擊目標(biāo)的過(guò)程中,攻擊者還能夠竊取屬于目標(biāo)企業(yè)及其合作伙伴和客戶的敏感數(shù)據(jù),對(duì)受害企業(yè)員工實(shí)施隱秘的視頻監(jiān)控,并可以通過(guò)連接到受感染計(jì)算機(jī)的設(shè)備來(lái)錄制音頻和視頻。
分享到微信 ×
打開微信,點(diǎn)擊底部的“發(fā)現(xiàn)”,
使用“掃一掃”即可將網(wǎng)頁(yè)分享至朋友圈。