敲詐者病毒Locky家族出現新變種thor_AG集团科技

教程中心

當前位置: 主頁/電腦學堂/互聯網資訊/敲詐者病毒/敲詐者病毒Locky家族出現新變種thor正文

敲詐者病毒Locky家族出現新變種thor

2017-05-16 14:58來源:www.hbcmgw.com整理: 昆明電腦維修我要評論

用手機看

掃描二維碼查看 並分享給您的朋友

近日,360天眼實驗室發現,敲詐者病毒Locky家族出現新變種thor,被病毒加密後的文件後綴為.thor。

Locky最早出現於2016年年初【敲詐者病毒Locky編年史】,此後經曆多次變種,包括6月27日的zepto變種,9月28日的Odin變種,本次的新變種為thor主要通過包含JS、VBS的釣魚郵件進行傳播,JS/VBS腳本從網絡上下載勒索軟件,通過rundll32.exe帶指定啟動參數進行加載。樣本執行後在內存中解密執行,解密後才是真正的惡意功能代碼。勒索軟件會對係統中的文件進行掃描,對指定擴展名的文件進行加密操作,加密後的文件後綴被改為.thor,加密完成後電腦桌麵圖片上顯示勒索信息提示用戶交解密贖金。

具體的攻擊流程是:攻擊者使用帶有惡意附件的郵件進行釣魚攻擊,用戶在點擊了附件中的VBS腳本文件後,VBS腳本文件負責從網絡上下載敲詐者病毒,通過rundll32.exe並帶指定啟動參數進行加載。樣本執行後在內存中解密執行,解密後才是真正的功能代碼。敲詐者病毒會對係統中的文件進行掃描,對磁盤上指定類型的文件進行加密,被樣本加密後的文件後綴為.thor。樣本加密文件所使用的密鑰為隨機生成,加密算法為AES-CBC-256,用樣本內置的RSA公鑰,通過RSA-1024算法對隨機生成的AES加密密鑰進行加密處理。

顯示的勒索信息如下:

Locky新變種攻擊細節分析

1、釣魚郵件

用戶首先會收到一封釣魚郵件,郵件信息如下所示,附件中的ZIP文件解壓後為一個VBS腳本。

2、VBS腳本分析

第二步,我們對VBS腳本進行分析發現,VBS腳本加入了一些無關的注釋:

去掉無用的注釋後,通過動態調試,可以看到腳本會從4個不同的地址中下載文件。

 

對上麵的4個地址逐個嚐試下載,並保存在%temp%目錄下,並保持為2XXCTvF37Mu5S[序號].dll。

隨後,通過下麵的命令加載下載回來的dll。注:必須帶mssecurity 117參數加載該DLL文件,否則DLL無法正常加載,這也是惡意軟件常用的技倆,用於對抗一些自動化分析的沙箱和幹擾樣本分析,因為在僅僅拿到DLL文件,而沒有與之對應的vbs腳本時,就無法獲取其啟動參數,此時樣本的真正功能並不會被執行。

Rundll32.exe “C:\Documents and Settings\Administrator\Local Settings\Temp\2XXCTvF37Mu5S4.dll”,mssecurity 117

3、Locky新變種樣本分析

(1)樣本概述

對Locky新變種進行樣本分析發現,樣本運行後首先會進行自解密,得到解密後的代碼,然後執行解密後的代碼。樣本首先會判斷係統語言,如果是俄語直接退出,否則繼續。接下來,樣本會獲取係統盤所在的硬盤的GUID,然後對該GUID進行Hash運算,得到一個32位的字符串,取其前16為作為個人ID,即後文的UID。然後打開一個互斥變量,防止多個樣本實例同時運行。接著,搜集主機信息,包括(係統版本、係統位數、是否是域網絡、服務器係統版本、係統語言、個人ID等信息)將這些信息用內置的RSA公鑰加密,發送至遠程服務器,遠程服務器地址為加密存在樣本中,使用時需先解密出來。如果發送成功則返回一個新的加密密鑰,替換掉原來內置的RSA公鑰,並且會根據當前係統語言與內置的勒索信語言是否相符,如果不相符,則會從遠程服務器下載對應的勒索信。如果語言相符,或者下載失敗,則用內置的公鑰和勒索信。接著,開始遍曆磁盤文件,及網絡共享文件,根據文件大小,文件類型的不同進行排序,然後按照順序加密文件。具體排序看下文。加密完成後,彈出勒索信,提示用戶交贖金獲取解密密鑰。解密文件。

(2)樣本詳情

此dll文件會在內存中動態解碼,通過RtlDecompressBuffer函數解壓縮後解碼出一個PE文件,直接在內存中加載執行,我們將loader在內存中解密出的文件 dump出來,保存後進行後續的分析。

樣本運行後首先會判斷當前係統所使用的語言,如果係統語言是俄語,樣本不會對當前係統的文件進行加密,否則繼續運行樣本。

接下來,樣本會獲取係統盤所在磁盤的GUID,並對該GUID進行hash,取hash的前16位作為個人ID。

並用UID作為互斥事件的部分字段,打開一個互斥變量,保證當前係統僅有一個實例在運行。

同時樣本會根據GlobalFindAtomA()和FindAtomA()函數查找特征字符串(UID),判斷當前係統是否已經被加密過,如果已經加密過則直接退出。否則繼續。

接下來,樣本會判斷當前係統的語言與內置勒索信是否相符,如果是則使用內置的勒索信,否則會先聯網下載與當前係統語言相符的勒索信。然後開始加密磁盤文件。

下麵是聯網下載新勒索信的代碼:

以下是語言不符時的執行流:

51.255.107.20

194.28.87.26

93.170.123.119

91.239.232.171

85.143.215.209

解密得到C&C:

如果能成功獲取新的勒索信,則使用新的勒索信,否則用默認的勒索信,開始加密磁盤文件。下麵是使用默認勒索信的代碼:

下麵是開始加密文件的代碼:

敲詐者病毒會對係統的每個盤符開啟一個線程遍曆文件,得到符合加密條件的文件列表,根據文件擴展名和文件大小,優先加密特定文件。此外,勒索者軟件還會刪除備份鏡像,加密共享目錄中的文件等。

遍曆係統,得到符合加密條件的文件列表:

敲詐者病毒獲得係統中的磁盤信息後,通過對每個盤符開啟一個線程,加密文件列表的查找速度。而且,對於受害者係統中的網絡共享目錄中的文件,也列入了文件查找的視野之中。

敲詐者病毒為了確保自己加密後不會破壞係統的可用性,采用了排除指定目錄的方法,對下麵目錄中的文件都做了”免疫”,也就是說,敲詐者病毒不會對這些目錄的文件進行加密:

隨後,敲詐者病毒會根據文件的後綴名進行加密順序的優先級排列。

根據文件擴展名與文件大小確定加密順序:

■通過樣本可以看到勒索者對.key,.crt,.csr,.p12,.pem等幾類擴展名的文件偏愛有加。對這幾類的擴展名,勒索者軟件會優先加密。

而對應的.wallet後綴的文件,勒索者並沒有給太高的優先級。

根據文件體積大小,對於體積越小的文件,優先進行加密。

(3)加密算法分析

對係統中滿足條件的文件,依照優先值順序進行加密。具體的加密過程為:

▌獲取程序中硬編碼部分的RSA-1024公鑰;

▌隨機生成16字節的AES密鑰,用AES-256-CBC算法加密文件內容;

▌將加密後的文件內容保存到加密後的文件首部;

▌生成解密結構體,將該結構體保持到加密後文件的尾部。

解密結構體由下麵4部分內容組成:

▌解密結構體標誌位8956FE93H,勒索者解密文件時,通過這個標誌位來定位解密結構體的在的位置

▌用戶ID:用來標識受害人的用戶信息,大小為16字節

▌使用RSA公鑰加密的AES密鑰,大小為0x100。

▌AES加密(原始文件名標誌位0D41BA12AH + 原始文件名)

其對應的反匯編代碼如下:RSA公鑰采用硬編碼,在下麵的代碼中解密出RSA公鑰,解析一下可以知道,這個一個RSA-1024的公鑰。aiKeyAlg=> CALG_RSA_KEYX ; keyLength=> 0x400L = 1024 bit

將解密出的RSA密鑰導入到密鑰容器中

使用RSA公鑰加密生成的AES密鑰

使用AES算法加密文件名標誌和文件名

在文件中寫入解密塊標誌位(8956FE93H)和用戶標識

調用AES加密原始文件內容,並將加密後的內容寫入到文件中

顯示勒索信息的html文件

總結

通過對文件加密過程的分析我們可以知道,在文檔的加密中,Locky新變種同時使用了非對稱加密算法RSA和對稱加密算法AES,使用AES算法是為了加快加密過程,使用非對稱RSA算法是為了保證隻有勒索者本人可以通過RSA私鑰解密樣本中被RSA公鑰加密的內容(樣本中RSA公鑰加密的內容為隨機生成的AES的密鑰)。

文件內容和文件原始名信息是通過隨機生成的AES密鑰進行的加密,而這個隨機生成的AES密鑰被RSA公鑰加密後保存在文件之中。隻有勒索者擁有RSA私鑰,這也就意味著隻有勒索者可以通過私鑰解密出這個隨機生成的AES密鑰,繼而用這個AES密鑰解密出原始的文件內容和原始的文件名。

加密過的文件內容可以分為下麵五部分的內容:

所以,目前唯一可行的解密文件的方法就就是拿到勒索者擁有RSA的私鑰。在擁有RSA私鑰的情況下的解密文檔的方法為:

讀取加密過的文檔,根據 8956FE93H標誌位定位到解密體結構,跳過16字節的用戶標識,可以定位到0x100大小的加密過的AES密鑰,此時使用得到的RSA私鑰解密出AES的密鑰,隨後AES密鑰解密文檔的前麵部分就得到原始文件內容,使用AES密鑰解密文檔的尾部就得到原始的文件名,根據原始文件名和原始文件內容恢複文件。而在沒有RSA私鑰的情況下,很難解密出被加密文件的內容。

另外,通過分析發現,該DLL於前段時間我們分析過的一個Zepto家族樣本十分相似。通過Bindiff比較發現,核心功能相似度達99%。而且樣本整體相似度也有90%以上。可以看出,Zepto家族和Locky家族的更新基本保持同步。

為了增強政企用戶對抗敲詐者病毒的信心,360企業安全集團基於對敲詐者病毒的實時追蹤與快速防禦響應能力的絕對自信,在9月初就宣布在企業市場獨家免費推出敲詐先賠服務,並鄭重承諾:對於所有360天擎政企用戶,如果在開啟360天擎敲詐先賠功能後仍然感染敲詐者病毒,360企業安全將負責賠付贖金,為政企用戶提供百萬先賠保障。

本文由 安全客 原創發布,如需轉載請注明來源及本文地址。

上一篇:沒有了 下一篇:中了敲詐者病毒,文件恢複有可能嗎?

如果您覺得對您有用,可以分享給您的朋友:

用戶評論