當前位置:
首頁 > 新聞 > Magniber勒索軟體持續改進並在亞洲不斷擴張

Magniber勒索軟體持續改進並在亞洲不斷擴張

Magnitude漏洞利用工具包是仍在使用的、最長久的瀏覽器利用工具包之一。自2013年出現以來,它一直在全球分發勒索軟體。而最終,它演變成了私人行為,專門針對特定地理位置。

2017年,Magnitude通過名為Magnigate的過濾門傳播Cerber勒索軟體,僅針對少數幾個亞洲國家。2017年10月,漏洞工具包運營商開始分發自己的勒索軟體Magniber。而惡意軟體作者竭盡全力擴大韓國的感染量。除了通過特定國家/地區的惡意廣告鏈進行流量過濾外,Magniber只會在返回特定國家/地區代碼時安裝,否則會自行刪除。

2018年4月,Magnitude意外的開始分發不斷增長的GandCrab勒索軟體,不久之後採用了新的Flash 0 day(CVE-2018-4878)。這可能是一場測試活動,而且並沒有持續多久,不久之後,Magniber又回來了。在我們最近捕獲的Magnitude流量中,看到其集成了最新的Internet Explorer漏洞(CVE-2018-8174)。

在本文中,我們來看看Magniber一些值得注意的變化。它的源代碼現在更加精細,利用了各種混淆技術,不再依賴於命令和控制伺服器或硬編碼密鑰來實現其加密常式。此外,雖然Magniber以前只針對韓國,但現在它已擴張到其他亞太國家。

一、解壓payload

·72fce87a976667a8c09ed844564adc75 – loader DLL

在下載並執行最終有效載荷之前有幾個階段。在Magnigate的302重定向(步驟1)後,可以看到用於啟動Magnitude登錄頁面的Base64混淆的JavaScript(步驟2)以及Base64編碼的VBScript(兩個原始版本的腳本都可以在這篇文章末尾IOC獲得)。成功利用CVE-2018-8174之後,獲取XOR加密的Magniber。

圖1. Magniber感染的流量視圖,使用Magnigate重定向和Magnitude EK

圖2.解碼的Javascript顯示重定向到Magnitude的登錄頁面

圖3.顯示CVE-2018-8174的VBScript代碼片段

一旦Internet Explorer(CVE-2018-8174)中的Use After Free漏洞利用成功,VBScript將執行以下shellcode:

圖4.位元組數組(shellcode)

功能方面,這個shellcode是一個簡單的downloader。它下載混淆的有效載荷,通過用密鑰XOR對其進行解碼,然後部署它:

圖5.通過InternetOpenUrlw API下載最終的有效載荷

然而,下載的有效載荷(72fce87a976667a8c09ed844564adc75)仍然不是Magniber核心,而是下一階段的loader。這個loader解壓縮了Magniber的核心DLL(19599cad1bbca18ac6473e64710443b7)並將其注入一個進程。

這兩個元素,loader和Magniber核心,都是具有Reflective Loader stub的DLL,它使用Reflective DLL injection技術將自身載入到當前進程中。

二、行為分析

Magniber所做的動作沒有太大變化;它加密文件,最後丟下一個名為README.txt的贖金票據。

圖6.受感染機器上留下的贖金票據

給定的鏈接指向一個洋蔥頁面(每個受害者都是唯一的),與許多其他勒索軟體頁面類似:

圖7. Magniber的支付頁面

由該版本的Magniber加密的文件可以通過擴展名來識別:.dyaaghemy。雖然過去每個文件都使用相同的AES密鑰加密,但這次每個文件都是使用唯一密鑰加密,即相同的明文得到不同的密文。加密的內容沒有可見的模式。這表明使用了流密碼或鏈塊的密碼(可能是AES的CBC模式)。可以在下面看到Magniber加密前後的BMP文件:

圖8.加密之前和之後的文件

三、代碼變化

隨著時間的推移,Magniber不斷發展,其大部分代碼都被完全重寫。從下圖可以看到當前Magniber DLL和早期版本(8a0244eedee8a26139bea287a7e419d9)之間的代碼比較,這是在BinDiff的幫助下創建的:

圖9.新舊版本Magniber的比較

四、混淆

作者付出了很多努力來改進混淆。我們描述的第一個版本根本沒有混淆。相反,當前版本使用一些不同的技術進行混淆。首先,API函數現在通過其校驗和動態獲取。例如:

圖10.通過校驗和調用API函數

比較新版本和舊版本,我們可以看到一些重疊的代碼片段:

圖11.具有正常導入調用的舊版本與具有動態檢索函數的新版本

通過搜索當前載入的DLL的導出表來獲取函數指針。此技術要求檢索函數的DLL已經載入。幾個月前,這種檢索函數的演算法被添加到Magniber中,例如在樣本60af42293d2dbd0cc8bf1a008e06f394中。

此外,動態計算調用的一些參數,並在操作之間添加垃圾代碼。載入的字元串分散在幾個變數中。

圖12.添加垃圾代碼使分析更加棘手

五、文件加密

我們還可以在功能級別上觀察一些變化。早期版本依賴於從CnC伺服器下載的AES密鑰(如果它不可用,則使用硬編碼的密鑰,在這種情況下使解密變得微不足道)。這次,Magniber附帶攻擊者的RSA公鑰,使其在加密過程中完全獨立於Internet連接。此密鑰用於保護用於加密文件的唯一AES密鑰。

攻擊者的RSA密鑰以混淆形式在樣本中進行硬編碼。這是去混淆後的RSA密鑰:

圖13.去混淆的RSA密鑰

每次要加密新文件時,都會生成兩個16位元組長的字元串。一個將用作AES密鑰,另一個用作初始化向量(IV)。下面可以看到負責生成那些偽隨機字元串的代碼片段。

圖14.生成偽隨機字元串

有趣的是隨機生成器的弱隨機性源可能會造成漏洞。我們可以看到GetTickCount被調用:

圖15.使用GetTickCount的隨機生成器

生成密鑰和IV的完整代碼可在以下代碼段中找到:https://gist.github.com/hasherezade/7fb69fbd045315b42d7f962a83fdc300

在勒索軟體繼續加密文件之前,RSA密鑰被導入並用於加密生成的數據(密鑰+ IV):

圖16.文件加密開始之前導入RSA密鑰

它產生一個256位元組的加密塊,傳遞給加密函數,然後附在加密文件的末尾。除了這些更改之外,在Windows加密API的幫助下,文件也像以前一樣加密。

圖17.設置AES密鑰和初始化向量

圖18.加密和寫入文件

六、地理擴張

在7月初,我們注意到在常規地區之外發生的漏洞利用,例如在馬來西亞。大約在同一時間,MalwareHunterTeam的推文也提到了台灣和香港的感染案例。

隨著分發範圍的變化,Magniber的代碼更新了其語言白名單。現在名單擴大了,增加了其他亞洲語言,如中國(澳門,中國,新加坡)和馬來語(馬來西亞,汶萊)。

圖19.擴展語言檢查

七、持續發展

雖然Magniber一開始並不令人印象深刻,代碼簡單且沒有混淆,但是它正在積極開發並且其質量不斷提高。作者看起來很專業,即使他們犯了一些錯誤。

該勒索軟體如手術般精確操作,從細分發到匹配的語言白名單。犯罪分子明確他們想要瞄準哪些國家,並努力減少噪音以及附帶傷害。

由於我們的反漏洞利用模塊阻止了Magnitude EK利用CVE-2018-8174(VBScript引擎漏洞),Malwarebytes用戶可以抵禦此威脅:

IOCs

178.32.62[.]130,bluehuge[.]expert,Magnigate (Step 1)94.23.165[.]192,69a5010hbjdd722q.feedrun[.]online,Magnigate (Step 2)92.222.121[.]30,08taw3c6143ce.nexthas[.]rocks,Magnitude EK (Landing Page)149.202.112[.]72,Magniber

Code snippets

·Javascript

·VBScript

Magniber (original)

Magniber (core DLL)

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 嘶吼RoarTalk 的精彩文章:

如何為開發人員演示DOM型XSS漏洞利用過程
Andariel組織的偵察新技術暗示下階段攻擊對象

TAG:嘶吼RoarTalk |