獨聯體中的勒索軟件發展趨勢
如今,當談到網絡威脅時,大多數人都會想到勒索軟件,尤其是加密類型的惡意軟件。 隨著新冠疫情的爆發和幾個主要網絡犯罪集團(Maze、REvil、Conti、DarkSide、Avaddon)的出現,一個完整的犯罪生態系統已經形成,目前全球范圍內對大型組織的攻擊浪潮越來越高。
今年,在發生了一系列備受矚目的勒索軟件事件后,例如對 Colonial Pipeline(美國最大的燃料管道的運營商)、JBS 和 Kaseya 的攻擊,以及隨后美國和其他當局的嚴格審查,勒索軟件市場發生了一些重大變化:一些團體被摧毀,另一些團體更名。
目前的大多數攻擊團體都傾向于在獨聯體之外活動,盡管如此,該地區還是存在著大量伺機發動攻擊的團體。
本文重點介紹了 2021 年上半年在獨聯體區域內最為活躍的勒索軟件木馬家族及其技術特征。
統計數據

2021年1月至7月,獨聯體區域內遭遇勒索軟件攻擊的企業數量
2021 年 1 月至7月,裝有卡巴斯基用戶遭遇勒索軟件攻擊的占比
勒索軟件家族概況
BigBobRoss/TheDMR
該勒索軟件在2018年底開始活躍,目前仍在使用,它的主要傳播載體是破解RDP密碼。
當啟動BigBobRoss時,會顯示操作員的技術信息,包括用于后續文件解密的密鑰。惡意軟件還通過Telegram發送帶有此信息的消息。

BigBobRoss 創建的技術文件
加密后的文件夾內容如下:在每個文件的開頭添加攻擊者的電子郵件地址和受害者ID,然后是原始名稱和擴展名,最后是勒索軟件添加的擴展名。
加密文件和攻擊者的記錄:
此外,每個文件夾中都會添加一個帶有攻擊者詳細信息的注釋。
勒索軟件留下的記錄
對于加密,該程序使用來自 CryptoPP 密碼庫的 ECB 模式(簡單替換模式)下的 128 位密鑰的 AES 對稱算法。
PDB 保留有關項目名稱的信息,幕后的開發者可能會說俄語,但這個只是猜測。

可執行文件的PDB信息
Crysis/Dharma
Crysis 是自 2016 年以來已知的一種舊的加密惡意軟件。眾所周知,它會被停用然后又復活。目前,它仍然活躍。該木馬的代碼多年來一直保持不變,如今它通過勒索軟件即服務 (RaaS) 附屬程序進行傳播。
Crysis是用 C/C++ 編寫的,并在 MS Visual Studio 中編譯。該惡意軟件在 CBC 模式下使用 AES-256 算法加密文件。啟動后,木馬會生成一個 256 位 AES 密鑰,該密鑰使用 RSA-1024 算法加密,攻擊者的公鑰包含在木馬之中。

每個文件都使用上述 AES 密鑰以及新生成的 128 位初始化向量 (IV) 進行加密。除了加密內容外,加密文件還存儲了IV、RSA加密的AES密鑰和輔助信息,包括攻擊者的標簽(一個字符串值)、使用的RSA公鑰的SHA1哈希、原始文件名、加密類型(要加密的文件部分對于小文件和大文件的選擇不同)和校驗和。

Crysis贖金記錄
典型的Crysis攻擊載體是未經授權的 RDP 訪問。攻擊者破解憑據(通過字典/暴力攻擊或從其他攻擊者那里購買的現成列表),遠程連接到受害者的計算機,并手動運行木馬。
Phobos/Eking
該勒索軟件自 2017 年以來一直存在,在概念層面(代碼結構、開發人員使用的方法),Phobos 在許多方面與 Crysis 相似。這表明木馬程序的開發者是同一個,或者 Phobos 的開發者熟悉Crysis的工作原理。但是,我們發現沒有直接借用代碼;換句話說,這些是從不同來源組裝的不同木馬家族。
與大多數現代勒索軟件一樣,Phobos 是通過 RaaS 附屬程序傳播的。感染的主要載體是未經授權的 RDP 訪問。
Phobos 是用 C/C++ 編寫的,并在 MS Visual Studio 中編譯。它使用 AES-256-CBC 算法加密受害者的文件,而 AES 密鑰使用惡意軟件對象中包含的 RSA-1024 公鑰加密。

Phobos 贖金記錄
Cryakl/CryLock
Cryakl 可能是本文介紹的最古老的勒索軟件。第一個版本是在 2014 年 4 月檢測到的。然而,在這個木馬的現代版本中,似乎沒有留下一行代碼。 Cryakl 已被多次重寫,并且每個新版本都會引入一些新功能。
它通過附屬計劃傳播。目前,其最常見的攻擊載體是通過 RDP。為方便攻擊者,木馬支持圖形界面。操作員在程序窗口中手動配置必要的設置。
Cryakl 設置窗口
Cryakl 是用 Delphi 編寫的。 Cryakl 的現代版本使用自定義對稱密碼來加密受害者的文件,并使用 RSA 算法來加密密鑰。
當前版本的 Cryakl 的一個有趣功能是對歸檔格式的高級處理,這在其他勒索軟件中是沒有的。
歸檔可能很大,對它們進行完整的加密需要很長時間。如果只對文件的任意部分進行加密,則可以在不解密的情況下恢復部分內容。
Cryakl 具有處理 ZIP、7z、TAR、CAB 和 RAR(舊版本和 RAR5)格式的專門程序。它會解析每一種格式,只加密歸檔的關鍵部分,提供高性能并防止在不解密的情況下恢復數據。

分析 ZIP 格式的部分程序

Cryakl 贖金記錄
CryptConsole
CryptConsole 于 2017 年 1 月首次被發現,今天仍然運行活躍。它是用 C# 編寫的,并使用 .NET 庫進行加密,傳播的主要載體是破解 RDP 密碼。

CryptConsole記錄
對于加密,生成兩個密鑰和 IV 對,這些信息被寫入一個文本文件,以及一個大小參數(反映需要加密多少用戶文件),并放置在桌面上。這個文本文件的名稱是一個40個字符的字符串,與用戶的唯一標識符(注釋中的個人 ID)相匹配。假設惡意軟件操開發者通過 RDP 獲得訪問權限,運行勒索軟件并為自己保存此文件,然后將其從受害者的設備中刪除。這可能證明可以恢復文件,有趣的是,文件加密部分的大小(size參數)是 [5485760, 10485760] 范圍內的一個隨機值。
包含勒索軟件留下的密鑰的文件
其加密方案也令人好奇。如上所述,勒索軟件會生成兩個隨機對:key+IV 和 key2+IV2。然后將文件大小與之前生成的隨機大小值進行比較。如果文件大于size,則只對文件中小于或等于該值的部分進行加密,在此之前將一個size字節的隨機數據緩沖區寫入文件。

生成key/IV 對、ID 和size
使用對稱 AES 算法執行加密。首先,文件的 size 字節塊使用 key 和 IV 進行加密,然后將加密的緩沖區反轉并再次加密,這次使用 key2 和 IV2,這就是雙重加密方案的工作原理。
小文件雙重加密方案
如上所述,大文件首先被任意大小字節的數據填充,這之后才能附加加密數據。

任意數據寫入的雙重加密方案
Fonix/XINOF
Fonix 勒索軟件于2020 年夏天首次被發現,2021 年 1 月,其創建者宣布關閉該項目,甚至發布了主密鑰,我們可以用它來為該木馬的受害者構建解密器。
然而,Fonix并沒因此消停,幾個月后(2021 年 6 月),我們就檢測到新版本 Fonix 的攻擊,該版本就沒有使用舊的主密鑰。
此版本的 Fonix 模仿Crysis和 Phobos 木馬,對加密文件使用相同的擴展名和命名方案。
如果受早期版本 Fonix 影響的文件的名稱類似于 picture.jpg.Email=[actor@mail.tld]ID=[B49D8EF5].XINOF,現在,它們與Crysis(picture.jpg.id-523E8573.[actor@mail.tld].harma)或Phobos(picture.jpg.ID-70AB2875.[actor@mail.tld].eking)加密的文件名稱沒有區別。
保存在木馬樣本中的項目 PDB 文件的路徑同樣涉及故意屏蔽:“DharmaVersion”行明確指向 Dharma 家族(Crysis勒索軟件的另一個名稱)。

PDB路徑
Fonix 使用 CryptoPP 庫以 C++ 編寫,并在 MS Visual Studio 中被編譯為一個 64 位可執行文件。它使用 RaaS 方案進行傳播,主要通過帶有惡意附件的垃圾郵件進入受害者系統。
每次感染后,勒索軟件都會通過 Telegram 向其運營商發送通知,順便說一句,這并不是什么新鮮事,幾年前就出現過。
用Telegram發送通知
在感染主機后,Fonix 還會通過 IP 檢查受害者的地理位置,如果在伊朗啟動,則會在不加密的情況下停止其活動。
Fonix會檢查受害者的地理位置
為了加密用戶文件,它使用 ChaCha 或 Salsa 算法(取決于文件大小)。 ChaCha/Salsa 密鑰由 RSA 使用木馬啟動時生成的會話公鑰進行加密。會話私鑰由 RSA 使用惡意軟件對象中包含的公共主密鑰進行加密。
Fonix 的早期版本有自己的勒索信。
Fonix 勒索信(早期版本)
與此同時,在最近的樣本中,我們看到某些版本的Crysis和Phobos的勒索信被復制。

Fonix 勒索信(現代版)
Limbozar/VoidCrypt
該勒索軟件出現在 2019 年年中,它的某些版本也被稱為 Limbo、Legion、Odveta 和 Ouroboros。 Limozar 通過附屬計劃 (RaaS) 傳播。目前,主要的傳播載體是未經授權的 RDP 訪問。 Limozar 是用 C++ 編寫的,在 MS Visual Studio 中編譯,并使用 CryptoPP 庫來實現加密功能。
在整個家族的歷史中,其密碼方案已經改變了幾次。當Limbozar啟動時,現代版本的Limbozar生成一個RSA-2048會話密鑰對,然后是一個256位密鑰和一個96位初始化向量,用于在GCM模式下的AES算法。RSA會話私鑰使用AES算法加密并保存在本地。接下來,AES的key+IV對使用木馬對象中包含的幾個公共RSA主密鑰之一進行加密,并且也保存到本地驅動器中。
在這個準備階段之后,Limbozar 搜索受害者的文件并使用 AES-GCM 算法對其進行加密,并為每個文件生成一個唯一的key+IV 對,然后使用 RSA 會話公鑰進行加密。
加密后,惡意軟件將攻擊者的要求保存在 Decrypt-info.txt 文件中。

Limbozar 贖金記錄
完全加密后,Limbosar 還會使用 POST 請求向其 C&C 服務器發送有關新受害者的通知。為了實現網絡通信,使用了 SFML 庫(libsfml-network)。

關于新版Limbozar感染的通知
Thanos/Hakbit
Thanos 于 2020 年 4 月下旬開始活躍,盡管有關它的信息首次出現是在1月份當時它以RaaS的形式出現在一個黑客論壇上。這個勒索軟件是用c#編寫的。根據我們掌握的信息,它的主要傳播載體是破解 RDP 密碼。

被感染電腦的桌面壁紙,顯示一張勒索信
由于傳播模型是 RaaS,勒索軟件是通過構建器傳播的,從而可以自定義木馬本身及其解密器。
構建器中有許多不同的設置:基本的(加密文件的擴展名、勒索信的名稱和內容、付款地址)和更高級的(代碼混淆、自我刪除、禁用 Windows Defender、繞過反惡意軟件掃描接口 (AMSI)) 、解鎖被其他進程占用的文件、保護勒索軟件進程、防止休眠、執行延遲、大文件快速加密模式、設置要加密文件的擴展名、選擇受害者通知方法)。泄露的構造函數可以在網上找到。最有可能的是,它是由購買它的運營商上傳的。為了保護,它具有內置的 HWID 檢查,表明它是為操作員的特定設備組裝的。
解密器可以使用用戶 ID 解密文件,用戶 ID 是對稱加密算法的 RSA 加密密鑰(不同版本有不同的對稱算法)。
Thanos 的解密器
勒索軟件可以使用一系列加密方案。在勒索軟件的各種樣本中,我們遇到了以下情況:
- 適用于所有文件的密鑰:Salsa20 加密;
- 適用于所有文件的不同密鑰:Salsa20 加密;
- 通過PBKDF2函數適用于所有文件的密鑰:AES-256 CBC 加密;
- 通過 PBKDF2 函數適用于所有文件的密鑰(小文件 1000 次迭代,大于15 MB大文件50000 次迭代),然后是 AES-256 CBC 加密。
下面給出了其中一種加密方案(靜態密鑰 + PBKDF2 + AES-256 CBC)和代碼混淆方法的說明。混淆相當弱,這使得恢復原始代碼成為可能。

用于加密的代碼塊之一
勒索信沒有太大區別,像往常一樣,目的是留下聯系方式并恐嚇用戶。
Thanos贖金記錄
Thanos實施了一種相當靈活的攻擊方案,允許操作員獨立選擇勒索軟件的功能并生成它以滿足他們的特定需求。
XMRLocker
XMRLocker 于 2020 年 8 月上旬首次被發現。它是用 C# 編寫的,并使用 .NET 庫進行加密。
使用生成的隨機長度為65-101個字符的密碼執行加密,一個固定的字母表,包括英文大小寫字母和一些特殊字符,用于生成密碼。
在XMRLocker中生成密碼
加密使用AES算法,密鑰長度為256位,在CFB模式下使用PKCS7填充。預生成的密碼通過PBKDF2函數傳遞,迭代次數為50000次,并將結果轉換為密鑰和IV進行進一步加密。PBKDF2使用一個32字節的隨機鹽值,它被寫入每個文件的開頭。為所有文件生成一個密鑰。它被保存在一個名為HWID的文本文件中,該文件被發送到托管在Tor網絡上的C&C服務器,然后刪除。

加密函數
加密后,設備關閉。下次啟動時,用戶會看到對發生的事情和攻擊者詳細信息的介紹。

啟動后的消息
像往常一樣,勒索軟件說明包含聯系方式和 ID。唯一令人驚訝的變化是“使用 Base-64 算法加密的文件”這個詞,因為這不是一種加密算法,并且該勒索軟件根本不使用它。

勒索信
總結
在獨聯體,既有知名的,也有相對較新的面向企業的勒索軟件。這些惡意軟件中有許多是新出現的,也有一些已經退出了市場。勒索軟件的加密技術也越來越奇怪,比如CryptConsole中的雙重加密和Cryakl中的歸檔進程(Archive Process) 處理。
雖然惡意軟件的傳播載體不同,但目前針對獨聯體企業的勒索軟件威脅大多通過RDP滲透受害者的網絡。因此,為域帳戶創建強大的密碼并定期更改它們是很重要的。另外,建議屏蔽互聯網上的RDP訪問,使用VPN連接企業網絡。
本文翻譯自:https://securelist.com/cis-ransomware/104452/如若轉載,請注明原文地址。