產品訊息

→新聞中心

 

2019年出現新勒索軟體Anatova

2019 年1月22日

在我們不斷尋找新的威脅期間,我們發現了一個新的勒索軟體系列,我們稱之為Anatova(基於贖​​金的名稱)。Anatova是在一個私有的點對點(p2p)網路中被發現的。經過初步分析,並確保我們的客戶受到保護,我們決定將此發現公之於眾。

我們的遙測顯示,雖然Anatova相對較新,但我們已經發現了全球範圍內廣泛的線索檢測

我們認為Anatova可能成為一個嚴重的威脅,因為代碼是為模塊化擴展做準備的。

此外,它還將檢查網路共享是否已連接,並將加密這些共享上的文件。根據我們的評估,Anatova背後的開發人員/演員是熟練的惡意軟體作者。我們得出這個結論,因為每個樣本都有自己獨特的密鑰,以及我們將描述的其他功能,我們在勒索軟件系列中經常看不到這些功能。

這篇文章將解釋Anatova的技術細節,以及關於這個新的勒索軟體家族的一些有趣的事實。

對於分析,我們使用了這個特定的哈希值:170fb7438316f7335f34fa1a431afc1676a786f1ad9dee63d78c3f5efd3a0ac0

Anatova的主要目標是在請求受害者付款之前加密所有文件。

Anatova概述

Anatova通常使用遊戲或應用程序的圖標來欺騙用戶下載它。它有一個清單來請求管理員權限。

有關二進制的信息

Anatova勒索軟體是一個64位應用程序,編譯日期為2019年1月1 日。此特定散列的文件大小為307kb,但由於樣本中使用的資源量,它可能會發生變化。如果我們刪除所有這些資源,大小為32kb; 一個非常小的程序,裡面有一個強大的機制。

Anatova有一些強大的靜態分析保護技術,這讓事情變得有些棘手:

  • 大多數字符串都是加密的(Unicode和Ascii),使用不同的密鑰來解密它們,嵌入在可執行文件中。
  • 90%的調用是動態的;它們只使用以下非可疑的Windows API和C編程語言的標準庫:GetModuleHandleW,LoadLibraryW,GetProcAddress,ExitProcess和MessageBoxA。
  • 當我們在IDA Pro中打開二進製文件(包括最新版本的IDA)時,檢測到的功能很差,並且在3個操作碼後完成處理。我們不確定這是否是IDA Pro中的錯誤,或者惡意軟體作者可能是故意造成這種情況(我們懷疑)。

IDA Pro 7.2最新版本中的問題

 

條目矢量

目前,我們不知道Anatova在不久的將來正在使用或將要使用的所有輸入向量。我們最初的發現位置是私人p2p。

與其他勒索軟體系列一樣,Anatova的目標是加密受感染系統上的所有或多個文件,並堅持付款以解鎖它們。該演員要求以10 DASH的加密貨幣支付贖金 - 目前價值約700美元,與其他勒索軟體家族相比相當高。

 

版本1.0的深入亮點

由於這是一個新穎的系列,我們在代碼中找不到任何版本號,但讓我們稱之為1.0版本

惡意軟體執行的第一個操作是獲取庫“kernel32.dll”的模塊句柄,並使用函數“GetProcAddress”從中獲取29個函數。

解密字符串後獲取kernel32函數

如果惡意軟體無法獲取kernel32的模塊句柄,或者找不到某些功能,它將退出而不執行任何加密。

稍後,惡意軟體將嘗試創建具有硬編碼名稱的互斥鎖(在本例中為:6a8c9937zFIwHPZ309UZMZYVnwScPB2pR2MEx5SY7B1xgbruoO),但每個樣本中的互斥鎖名稱都會更改。如果創建了互斥鎖並獲取了句柄,它將調用“GetLastError”函數並查看上一個錯誤是ERROR_ALREADY_EXISTS還是ERROR_ACCESS_DENIED。這兩個錯誤都意味著存在此互斥對象的先前實例。如果是這種情況,惡意軟體將進入清理記憶流,我們將在本文稍後解釋,並完成。

檢查互斥鎖

在此檢查之後,Anatova將使用與內核案例相同的過程從“advapi32.dll”,“Crypt32.dll”和“Shell32.dll”庫中獲取一些函數。所有文本都經過加密和解密,獲得功能,釋放內存,然後繼續下一個。

如果它無法獲得一些這些模塊或它需要的一些功能,它將轉到清潔工具流程並退出。

我們發現的一個有趣的功能是Anatova將檢索登錄和/或活動用戶的用戶名,並與加密的名稱列表進行比較。如果檢測到其中一個名稱,它將進入清潔流程並退出。

搜索的用戶列表是:

  • LaVirulera
  • 測試儀
  • 測試儀
  • 分析人士
  • 分析人士
  • 實驗室
  • 實驗室
  • 惡意軟件
  • 惡意軟件

某些分析人員或虛擬機/沙箱在其設置中使用這些默認用戶名,這意味著勒索軟體無法在這些計算機/沙箱上運行。

在用戶檢查之後,Anatova將檢查系統的語言。當我們說語言時,我們指的是系統語言。當用戶安裝Windows操作系統時,他們會選擇一種語言來安裝它(雖然以後用戶可以安裝不同的語言)。Anatova會檢查系統上第一個安裝的語言,以確保用戶無法安裝這些列入黑名單的語言之一以避免加密文件。

Anatova不影響的國家名單如下:

  • 所有獨聯體國家
  • 敘利亞
  • 埃及
  • 摩洛哥
  • 伊拉克
  • 印度

看到獨聯體國家被排除在執行之外並且通常表明作者可能來自其中一個國家,這是很正常的。在這種情況下,看到其他國家被提及是令人驚訝的。我們沒有明確假設為什麼這些國家被排除在外。

檢查系統語言

在語言檢查之後,Anatova會查找一個標誌,在我們查看的所有示例中,該值都為0,但如果此標誌將更改為值1(當前惡意軟件樣本永遠不會更改該值),則會加載兩個DLL,其名稱(解密後)為“extra1.dll”和“extra2.dll”。這可能表明Anatova準備模塊化或在不久的將來擴展其功能。

加載額外的模塊

在此之後,惡意軟體枚舉系統中的所有進程並將它們與大型列表進行比較,例如“steam.exe”,“sqlserver.exe”等。如果發現其中一些進程,惡意軟體將打開它們並且終止他們。此操作是典型的勒索軟體,它試圖解鎖稍後將被加密的文件,例如數據庫文件,遊戲文件,Office相關文件等。

下一步操作是使用將加密所有字符串的加密API創建一對RSA密鑰。此功能與其他勒索軟體系列相同,例如GandCrab或Crysis。它確保將使用的密鑰是按用戶和每次執行。

如果惡意軟體無法創建密鑰,它將轉到清理流並退出。

在此之後,Anatova將使用加密API“CryptGenRandom”的函數生成32位的隨機密鑰和8字節的另一個值,以在運行時使用Salsa20算法和私有的先前blob密鑰進行加密。

在文件的加密過程中,它將解密2層加密樣本的主RSA公鑰,第一個是值為0x55的XOR,第二個是使用硬編碼密鑰和IV解密它。使用Salsa20算法的樣本。

從第一層解密樣本的主RSA公鑰

在此之後,它將導入公鑰並隨之加密,將加密用於在運行時加密私有RSA密鑰的Salsa20密鑰和IV。

下一步是準備一個內存緩衝區並加密所有信息(Salsa20密鑰,Salsa20 IV和私有RSA密鑰)。它使用函數“CryptBinaryToStringA”在BASE64中創建一個大字符串。勒索軟體稍後將清除計算機的密鑰,IV和私有RSA密鑰值的內存,以防止任何人從內存中轉儲此信息並創建解密器。

這個BASE64字符串將在稍後的贖金票據中寫出。只有惡意軟件作者才能解密Salsa20密鑰和IV以及用戶解密文件所需的私有RSA密鑰。

如果這不起作用,Anatova將自行刪除,進入清潔流程並退出。

當密鑰在內存緩衝區中加密時,Anatova將枚舉所有邏輯單元,並將搜索DRIVE_FIXED類型的所有現有實例(例如普通硬盤)或DRIVE_REMOTE(用於安裝的遠程網絡共享)。Anatova將嘗試加密每個位置上的文件。這意味著當網路共享上的文件被加密時,一個公司受害者可能會導致重大事故。

檢查所有邏輯單元

對於每個已安裝的驅動器 - 硬碟或遠程共享,Anatova將獲取所有文件和文件夾。它稍後會檢查它是否是一個文件夾,如果是,將檢查文件夾名稱是否沒有“。”和“..”的名稱,以避免同一目錄和上一個目錄。

在收集的文件夾名稱列表中,Anatova會檢查列入黑名單的名稱,例如“Windows”,“程序文件”,“程序文件(x86)”等。這在許多勒索軟體系列中很常見,因為作者希望避免破壞操作系統,而是瞄準高價值文件。Anatova對文件擴展名.exe,.dll和.sys也是如此,它們對操作系統也很重要。

檢查文件名和擴展名

如果通過此檢查,Anatova將打開該文件並獲取其大小,將其與1 MB進行比較。Anatova只會加密1 MB或更小的文件,以避免丟失大文件的時間; 它想要快速加密。通過在加密文件的末尾設置指針,Anatova確保它不會加密已加密的文件。

接下來,Anatova將創建一個32位的隨機值作為Salsa20算法的密鑰,另一個值為8字節,將用作Salsa20的IV。

使用這些值,它將讀取內存中的所有文件或最大大小為1 MB的文件,並使用Salsa20算法使用密鑰和IV加密此信息(這是最近非常流行的,因為它是一種非常快速的算法並且具有開源實現)。

加密文件功能

它將導入在運行時創建的RSA公鑰,並使用它加密用於加密文件的密鑰和IV。接下來,它將從文件的開頭將加密的內容寫入同一文件中,然後將指針指向文件的末尾並寫下接下來的內容:

  • 加密Salsa20密鑰的塊用公共RSA密鑰加密。
  • 加密Salsa20 IV的塊用公共RSA密鑰加密。
  • 文件大小小於1 MB。
  • 贖金票據中出現的每個樣本的特殊硬編碼值。
  • 樣本中的特殊硬編碼值,它是之前檢查過的感染標記,以避免兩次加密同一文件。

完成後,Anatova將在同一文件夾中寫入贖金票據。因此,如果Anatova至少無法對文件夾中的某些內容進行加密,則不會在此文件夾中創建贖金備註,僅在受影響的文件夾中。

此行為與在所有文件夾中寫入勒索信息的其他勒索軟體系列不同。

贖金票據文本在二進製文件中完全加密,但聯繫作者的郵件地址和要支付的破折號地址除外。

Anatova不會覆蓋贖金票據,如果它已存在於文件夾中以節省時間。贖金票據包含base64塊,其中包含解密以字符串“ - 開頭的塊中的文件所需的所有加密信息KEY--“,以及身份證號碼。

然後允許響應的受害者免費解密一個最大大小為200kb的.jpg文件,作為他們可以檢索解密文件的證據。

贖金票據的例子

完成所有這些後,Anatova將非常快速地破壞Volume Shadow副本10次。與大多數勒索軟體系列一樣,它使用vssadmin程序(需要管理員權限)來運行和刪除卷影副本。

刪除暗影卷10次

最後,當所有步驟完成後,勒索軟體將遵循清理代碼流,如前所述,主要是為了防止轉儲可能有助於創建解密工具的內存代碼。

覆蓋範圍

McAfee網關和端點產品的客戶受此版本保護。檢測名稱包括Ransom-Anatova![partialhash]。

妥協指標

樣品使用以下MITRE ATT&CK™技術:

  • 通過API執行
  • 應用程序進程發現
  • 文件和目錄發現:搜索要加密的文件
  • 加密文件
  • 進程發現:枚舉端點上的所有進程以殺死一些特殊進程
  • 創建文件
  • 提升權限:請求運行。
  • 創建突變體

 

哈希表:

2a0da563f5b88c4d630aefbcd212a35e

366770ebfd096b69e5017a3e33577a94

9d844d5480eec1715b18e3f6472618aa

61139db0bbe4937cd1afc0b818049891

596ebe227dcd03863e0a740b6c605924

資料來源:https://securingtomorrow.mcafee.com/other-blogs/mcafee-labs/happy-new-year-2019-anatova-is-here/