新型勒索軟件Nokoyawa簡(jiǎn)析
歷史追溯和影響
Nokoyawa是今年早些時(shí)候出現(xiàn)的一種新型基于Windows平臺(tái)開(kāi)發(fā)的勒索軟件。收集的最早樣本是于2022年2月編譯的,并且與原勒索軟件Karma具有大量代碼存在相似之處(Karma是另一種可以上溯到Nemty的勒索軟件,而Nemty是相關(guān)研究人員在2019年報(bào)告的勒索軟件家族)。
最近,我們獲得了這個(gè)勒索軟件活動(dòng)的一個(gè)新變種,并觀察到它一直在通過(guò)對(duì)于其它勒索軟件的開(kāi)源代碼的重用來(lái)不斷地改進(jìn)自身。在本文中,我們將討論Nokoyawa Ransomware的一般行為以及它最近添加的新功能,即以最大限度地增加可以加密的文件數(shù)量。
- 受影響的平臺(tái):Windows
- 受影響方:Windows 用戶(hù)
- 影響:文件可能丟失
- 嚴(yán)重級(jí)別:中
概覽
本節(jié)提供了Nokoyawa如何工作的一般性描述,以避免重復(fù)其他已經(jīng)發(fā)布的相關(guān)信息。
需要說(shuō)明的是,與其所謂的勒索軟件前身Karma不同,此勒索軟件可以在32位和64位Windows上運(yùn)行,本文只涉及到64位 Windows平臺(tái)樣本。
Nokoyawa為自定義執(zhí)行提供了幾個(gè)命令行選項(xiàng):
- help:打印命令行選項(xiàng)列表
- network:加密所有驅(qū)動(dòng)器和卷上的文件(本地和網(wǎng)絡(luò))
- file filePath:加密單個(gè)文件
- dir dirPath:加密指定目錄和子目錄中的所有文件
如果沒(méi)有提供參數(shù),Nokoyawa默認(rèn)加密所有本地驅(qū)動(dòng)器和卷。值得一提的是,“help”參數(shù)比較有意思,因?yàn)樗砻骼账鬈浖_(kāi)發(fā)人員可能是獨(dú)立于在受感染機(jī)器上部署和執(zhí)行勒索軟件的運(yùn)營(yíng)商團(tuán)隊(duì)。
為了提升加密的速度和效率,Nokoyawa創(chuàng)建了多個(gè)線(xiàn)程來(lái)加密不以 .exe、.dll 或 .lnk 擴(kuò)展名結(jié)尾的文件。名稱(chēng)中帶有NOKOYAWA的文件也會(huì)被跳過(guò)。此外,一些目錄及其子目錄通過(guò)將其名稱(chēng)的哈希與硬編碼的哈希列表進(jìn)行比較而被排除在加密之外。
對(duì)于每個(gè)樣本,勒索軟件運(yùn)營(yíng)商都會(huì)生成一對(duì)新的橢圓曲線(xiàn)加密(ECC)公鑰和私鑰(又名密鑰對(duì)),然后將公鑰嵌入到勒索軟件二進(jìn)制文件中。這對(duì)密鑰可以被視為在支付贖金時(shí)解密文件所必需的“主”密鑰。假設(shè)每個(gè)樣本都是為不同的受害者部署的,勒索軟件運(yùn)營(yíng)商消除了受害者使用提供給另一個(gè)受害者的解密器的可能性,因?yàn)槊總€(gè)受害者都鏈接到一個(gè)單獨(dú)的“主”密鑰對(duì)。
在加密每個(gè)文件之前,Nokoyawa會(huì)為每個(gè)文件創(chuàng)建一個(gè)新的臨時(shí)密鑰對(duì)(受害者文件密鑰)。使用受害者文件的私鑰和來(lái)自威脅參與者的“主”公鑰,使用橢圓曲線(xiàn)ECDH生成一個(gè)64字節(jié)的共享密鑰。這個(gè)共享密鑰的前32個(gè)字節(jié)與硬編碼的nonce‘lvcelvce’一起用作密鑰,用于加密每個(gè)文件的內(nèi)容。
SHA1哈希是基于先前生成的共享密鑰和文件內(nèi)容生成的,并與受害者文件的公鑰和字符串“NOKOYAWA”一起附加在每個(gè)加密文件的末尾。此散列很可能用于在解密期間檢查數(shù)據(jù)完整性。
因此,需要受害者文件的公鑰和勒索軟件運(yùn)營(yíng)商擁有的“主”私鑰來(lái)重新生成Salsa20密鑰以解密每個(gè)加密文件。
被勒索軟件加密的文件會(huì)附加一個(gè).NOKOYAWA擴(kuò)展名。贖金記錄被寫(xiě)入每個(gè)包含用于加密的目錄中的NOKOYAWA_readme.txt中。
相關(guān)勒索代碼
2022年4月樣本包含三個(gè)新功能,以最大限度地增加Nokoyawa可以加密的文件數(shù)量。這些功能已經(jīng)存在于當(dāng)代勒索軟件系列中,它們的添加只是表明Nokoyawa開(kāi)發(fā)人員試圖在技術(shù)能力方面趕上其他勒索軟件運(yùn)營(yíng)商。
實(shí)驗(yàn)室的研究人員能夠確定,大部分添加的代碼都是從公開(kāi)來(lái)源復(fù)制的,包括2021年9月泄露的現(xiàn)已失效的Babuk勒索軟件的來(lái)源。
這種公開(kāi)復(fù)制的一個(gè)例子是包含終止進(jìn)程和服務(wù)的功能,以減少被其他程序鎖定的文件數(shù)量,以便加密代碼可以加密這些文件。代碼(包括進(jìn)程列表和服務(wù)名稱(chēng))與Babuk中的實(shí)現(xiàn)完全匹配。圖1中的圖像顯示了從Babuk泄露的源代碼(左)和Nokoyawa的反編譯代碼(右)中獲取的服務(wù)查殺功能的比較。
圖1 Babuk和Nokoyawa的服務(wù)查殺代碼比較
受Nokoyawa影響的應(yīng)用程序和服務(wù)包括Microsoft Office應(yīng)用程序、電子郵件客戶(hù)端、瀏覽器、備份程序、安全產(chǎn)品和數(shù)據(jù)庫(kù)服務(wù)器。
它還包括枚舉和掛載卷以加密這些卷上的文件的代碼,再次重用從泄露的Babuk源復(fù)制的確切代碼。
在收集的最新樣本中,它通過(guò)使用IOCTL_VOLSNAP_SET_MAX_DIFF_AREA_SIZE (0x53c028) 控制代碼的DeviceIoControl API將卷影副本快照的分配空間大小調(diào)整為1字節(jié)來(lái)刪除卷快照。此大小太小而無(wú)法存儲(chǔ)快照,將導(dǎo)致Windows刪除它們。之前曾有其它研究,報(bào)道過(guò)這種技術(shù)的使用,其實(shí)現(xiàn)似乎是從公開(kāi)可用的PoC代碼中復(fù)制而來(lái)的。
要使上述功能正常運(yùn)行,需要管理員權(quán)限。由于我們沒(méi)有觀察到樣本正在執(zhí)行任何Windows用戶(hù)訪(fǎng)問(wèn)控制 (UAC) 繞過(guò),因此操作員很可能在執(zhí)行勒索軟件之前使用其他方式升級(jí)或獲取管理權(quán)限。
贖金票據(jù)
贖金票據(jù)以及受害者與肇事者溝通的方式在新變種中也發(fā)生了重大變化。在2022年2月的舊樣本中,受害者被指示通過(guò)電子郵件聯(lián)系勒索軟件運(yùn)營(yíng)商,如圖2所示:
圖2 2022年2月的Nokoyawa樣本贖金票據(jù)
但是,在2022年4月的樣本中,電子郵件地址已被刪除。它們被替換為通過(guò)TOR瀏覽器通過(guò).onion URL聯(lián)系勒索軟件運(yùn)營(yíng)商的說(shuō)明。每個(gè)樣本在贖金記錄中使用相同的.onion域,假定為受害者標(biāo)識(shí)符的id參數(shù)對(duì)于每個(gè)樣本都是唯一的,如下圖所示:
圖3 2022年4月Nokoyawa樣本中的贖金票據(jù)
新的贖金付款頁(yè)面
訪(fǎng)問(wèn)Onion URL會(huì)進(jìn)入一個(gè)帶有在線(xiàn)聊天框的頁(yè)面,用于與運(yùn)營(yíng)商進(jìn)行溝通以協(xié)商和支付贖金。研究人員觀察到可能的受害者(公司)和勒索軟件運(yùn)營(yíng)商(用戶(hù))之間的持續(xù)對(duì)話(huà)。根據(jù)此聊天記錄,威脅參與者提供最多3個(gè)文件的免費(fèi)解密,以證明他們可以解密受害者的文件,如圖4所示:
圖4 贖金付款頁(yè)面
“說(shuō)明”頁(yè)面顯示了贖金金額,在本例中為 1,500,000(可能是美元),可以用BTC(比特幣)或XMR(門(mén)羅幣)支付。付款后,勒索軟件運(yùn)營(yíng)商聲稱(chēng)提供解密受害者文件的工具(圖 5)。
圖5 贖金付款指導(dǎo)頁(yè)面
鑒于某些勒索軟件活動(dòng)的專(zhuān)業(yè)化程度越來(lái)越高,這個(gè)TOR網(wǎng)站可能是一種改進(jìn)的嘗試,也可能是讓一個(gè)單獨(dú)的團(tuán)隊(duì)處理贖金談判的一種方式。
值得關(guān)注的是,勒索信中包含以下信息:“聯(lián)系我們以達(dá)成協(xié)議,否則我們會(huì)將您的黑屎泄露給媒體”,這表明受害者的數(shù)據(jù)可能在感染期間被泄露。然而,我們并沒(méi)有在Nokoyawa樣本中發(fā)現(xiàn)這種能力。事實(shí)上,除了枚舉網(wǎng)絡(luò)驅(qū)動(dòng)器之外,根本沒(méi)有觀察到與其它行為。運(yùn)營(yíng)商可能會(huì)單獨(dú)執(zhí)行數(shù)據(jù)泄露,或者他們可能只是虛張聲勢(shì),進(jìn)一步迫使受害者支付贖金。
總結(jié)
在本文中,我們重點(diǎn)介紹了對(duì)Nokoyawa Ransomware新變種所做的改進(jìn)。它還展示了威脅行為者如何通過(guò)重用的開(kāi)源代碼,以最小的努力快速為其惡意軟件添加新功能。