

惡意文件名稱:
HavanaCrypt
威脅類型:
勒索病毒
簡單描述:
HavanaCrypt 勒索軟件偽裝成 Google 的更新應用程序進行分發,欺騙受害者下載安裝 payload,並使用 Microsoft 網絡託管服務 IP 地址作為其 C2 服務器來繞過安全檢測。
惡意文件分析

惡意文件描述
我中心技術支撐單位「深信服」深盾終端實驗室近期在運營工作中發現,一款名為 「HavanaCrypt」 高隱蔽的勒索軟件以分發形式出現,該勒索軟件偽裝成 Google 的更新應用程序進行分發,誘使受害者下載安裝 payload,並使用 Microsoft 網絡託管服務 IP 地址作為其 C2 服務器躲避安全檢測。該勒索軟件在其文件加密進程中使用了QueueUserWorkItem 函數以及 KeePass Password Safe 的模塊,其中 QueueUserWorkItem 函數將一個加密進程排隊等待執行,加速加密過程,KeePass Password Safe 為一個開源密碼管理器。


惡意文件分析
病毒的整個功能模塊如下圖所示:

查看文件是否加殼或混淆,發現該惡意程序基於 .net 編譯開發,並使用了 Obfuscar 混淆技術,其中 Obfuscar 是一個開源的 .net 混淆器,使得程序難以閱讀和理解,增加逆向分析的困難。

藉助 de4dot 和 deObfuscar 等開源反混淆器解除混淆後繼續分析。
1、程序執行前期工作
(1)首先程序會使用參數設置為 0 的 ShowWindow 函數來隱藏程序執行窗口,使得程序的執行「悄無聲息」。

(2)查詢註冊表
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 下是否有 GoogleUpdate 值,如果存在,則通過 QueueUserWorkItem 函數來將加密進程排隊等待執行,加速加密過程。


2、防禦規避技術
該樣本分為四個步驟檢測虛擬化技術,來判斷程序是否處於虛擬化環境中,如果處於虛擬化環境,則立即終止感染進程,此外還通過在方法前面添加DebuggerStepThroughs 屬性來達到反調試的作用。最大限度避免在虛擬機/沙箱中動態分析,增加分析人員分析的困難。
(1)反沙箱/反虛擬化
判斷樣本運行的環境中是否存在一些與虛擬化技術相關服務。


判斷樣本運行所處環境中的文件系統是否存在與虛擬化技術相關文件。


判斷樣本運行所處環境中是否存在與虛擬化技術相關的可執行文件。


(2)反調試技術
該樣本通過在方法前面添加 DebuggerStepThrough 屬性,在調試目標代碼的時候會自動「步過」該方法,而無法「步入」,從而不能調試該方法中的其他函數。不過如果想要分析該方法中函數,只需刪除 DebuggerStepThrough 屬性即可。

3、感染技術
(1)判斷完程序處於非虛擬化環境中後,樣本開始真正運行,首先樣本從 Microsoft 網絡託管服務 IP 地址 http://20[.]227[.]128[.33]/[2.txt] (該網址目前已不可訪問)下載惡意文件,文件保存至 %ProgramData% 目錄下,文件後綴為 .bat 格式,文件命名為 20-25 隨機字符串,同時設置為隱藏屬性。


根據網址下載 2.txt 惡意文件,經過 base64 解碼後,內容如下圖所示。該惡意樣本利用 PowerShell 修改 Windows 防火牆的安全策略,關閉 Windows 防火牆/本地操作系統控件提供的保護措施。

(2)然後該樣本還會終止系統中一些正在運行的進程,包括 SQL Server、MySQL 等與數據庫相關的進程,以及與桌面 APP 相關的一些程序。

(3)該樣本繼續枚舉所有可用磁盤驅動器,使用 cmd /c指令執行刪除卷影、修改卷影的最大存儲空間量為無限制,調整存儲空間量的大小可能會導致卷影副本消失,繼而再次達到刪除卷影的作用。


(4)Systemstore 中存儲着提供禁用和啟用監視、列出可用還原點以及在本地系統上啟動還原點的方法,該樣本使用 WMI 類查看系統還原點並通過 SRRemoveRestorePoint 刪除系統還原點。避免受害者通過系統還原點恢復數據。

(5)樣本會複製自身至 %ProgramData% 目錄下,文件命名為 10- 15 個隨機字符,文件後綴為 .exe,同時新文件設為隱藏屬性、系統屬性。並將自身路徑寫入HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunGoogleUpdate 路徑下,實現開機自啟動。


(6)該樣本還會在 %Startup% 目錄下生成 vallo.bat 惡意文件,vallo.bat 文件的功能為禁用任務管理器。

4、服務端進行通信
(1)通過 WMI 類查詢 Win32_Processor、Win32_BIOS、Win32_BaseBoard 數據庫中系統指紋的信息,並將查詢的每個值使用空格進行拼接,最後計算SHA256 的值。

相關值如下:

(2)該樣本將收集到的系統指紋信息發送到http://20[.]227[.]128[.]33/ham.php,傳輸數據的方式採用Get 請求,Havana/1.0 的用戶代理。


(3)如果服務端成功接收到數據,則 HavanaCrypt 會收到包括但不限於被加密密鑰等信息的響應,HavanaCrypt會使用 HOLAKiiaa##~~@#!2100 對被加密密鑰進行解密,解密出的密鑰用於後續的加密操作。

5、加密過程

生成密鑰

AES CBC 加密算法

在加密階段,程序會對如下所示目錄不進行加密操作。

該樣本會避免加密一些系統、服務等的配置文件,以防損害系統的基本正常運行。

在執行加密的過程中,該樣本會創建一個名為 foo.txt 的文件,這個文件中記錄了所有被加密文件的文件路徑。

與其他勒索軟件不同的是,在被感染的系統上並未發現繳納贖金恢復數據的勒索信,推測 HvanaCrypt 可能仍處於開發階段或僅用於測試,勒索功能不是很完善。
解決方案

1.處置建議
1. 避免將重要服務在外網開放,若一定要開放,需增加口令複雜度,避免使用弱口令。
2. 避免到信譽不明的網站下載應用程序。
3. 避免打開來歷不明的郵件、鏈接和附件等,如一定要打開未知文件,請先使用殺毒軟件進行掃描。
4. 定期使用殺毒軟件進行全盤掃描,按時升級打補丁。
5. 重要的數據最好雙機備份或雲備份。

2.產品解決方案
【深信服終端安全管理系統EDR】已支持查殺攔截此次事件使用的病毒文件,請更新軟件(如有定製請先諮詢售後再更新版本)和病毒庫至最新版本,及時查殺新威脅。
【深信服下一代防火牆AF】的安全防護規則更新至最新版本,接入深信服雲平台,「雲鑒」服務即可輕鬆抵禦此高危風險。【深信服安全感知管理平台SIP】建議用戶及時更新規則庫,接入雲圖,並聯動【深信服下一代防火牆AF】實現對高危風險的入侵防護。【深信服安全託管服務MSS】以保障用戶網絡安全「持續有效」為目標,通過將用戶安全設備接入安全運營中心,依託於XDR安全能力平台和MSSP安全服務平台實現有效協同的「人機共智」模式,圍繞資產、脆弱性、威脅、事件四個要素為用戶提供7*24H的安全運營服務,快速擴展持續有效的安全運營能力,保障可承諾的風險管控效果。
-END-