Glupteba變種:跨平臺、模塊化惡意軟件分析
研究人員近期發(fā)現(xiàn)一個Glupteba的變種。Glupteba是Operation Windigo 攻擊活動中使用的木馬,研究人員之前報告過其針對MikroTik 路由器的攻擊以及C2 服務(wù)器的更新。
該變種的行為與其他Glupteba 變種有相似之處。此外,該變種還使用了模塊化的廣告惡意軟件ManageX。
使用Go 語言
在解壓了攻擊中使用的主釋放器后,研究人員發(fā)現(xiàn)該惡意軟件變種是用Go 語言開發(fā)的。Go 語言只有10 年的歷史,而且用它來開發(fā)惡意軟件是比較少見的。惡意軟件開發(fā)人員選擇Go 語言的原因可能是該語言的特征使得開發(fā)的惡意軟件可以在進入受害者系統(tǒng)時不被發(fā)現(xiàn)。其中一個特征是可以用1個庫來編譯但是在不同的操作系統(tǒng)上仍然可以執(zhí)行。這對跨平臺的惡意軟件來說是非常重要和有優(yōu)勢的。
用Go 語言開發(fā)的惡意軟件的文件大小都比較大。這是因為Go 語言的標(biāo)準庫并沒有很好的模塊化,因此導(dǎo)入單個函數(shù)就會引入大量的代碼。這也可以幫助惡意軟件繞過系統(tǒng)的檢測,因為許多反病毒軟件可能不能或不會掃描太大的文件。而且研究人員也很難對大文件進行靜態(tài)分析。
釋放器
Glupteba 攻擊中的主釋放器是通過安裝rootkit 組件來實現(xiàn)駐留的,rootkit組件會注入惡意代碼到svchost.exe 進程中。該進程會成為payload的下載器,因為Glupteba 將payload 看作模塊,這也是一種隱藏惡意進程的方法,即將惡意進程偽裝成正常的進程。
惡意軟件的模塊化的方法是通過釋放組件到系統(tǒng)中來實現(xiàn)的,這也可以避免被反病毒軟件檢測到。
因為釋放器使用了UPX 打包器打包,因此靜態(tài)分析并沒有發(fā)現(xiàn)太多東西。
圖 2. 打包的樣本
使用UPX 解壓器后發(fā)現(xiàn)樣本是用C++編譯的。
圖 3. 編譯器
解壓文件后表明樣本是用Go 語言編寫的。
圖 4. Golang編譯的樣本代碼
樣本無法通過常見的工具來解壓。必須在調(diào)試器中打開文件才可以看到其中的字符串。此外,一些惡意軟件分析攻擊嚴重依賴樣本中可讀的字符串來確定樣本是否是惡意的。這也是為什么惡意軟件作者使用打包器的另外一個原因。
圖 5. 表明惡意廣告payload的可疑字符串
樣本中的字符串表明在不同的平臺上使用了web瀏覽器。其中一個payload 中包含了惡意廣告擴展的安裝。此外,web瀏覽器的安裝也不僅限于Windows 平臺,還包含Linux平臺、安卓平臺和iOS 平臺的web 瀏覽器。
圖 6. 與DoublePulsar 工具使用相關(guān)的字符串
惡意軟件代碼中提到的DoublePulsar 是Shadow Brokers 泄露的一個后門植入工具。該工具可以確保其他惡意代碼的執(zhí)行,并且一般是通過EternalBlue 漏洞利用來進行傳播。
圖 7. 使用DoublePulsar 工具的shellcode 注入
擴展安裝器payload
研究人員發(fā)現(xiàn)安裝在一些機器上的payload 是一個安裝的擴展,這些擴展通過執(zhí)行wcrx.exe 來安裝到系統(tǒng)中,wcrx.exe 是一個類似釋放器的打包的文件。該文件會完成以下動作:
· 在機器上安裝的web瀏覽器中添加名為chrome_filter 的瀏覽器擴展;
圖 8. 安裝的擴展
· 連接到hxxp://fffffk[.]xyz/down/m_inc[.]js?1589344811463 并替換來自瀏覽器擴展的m_inc.js 文件。這是對每個訪問的頁面都會執(zhí)行的內(nèi)容腳本。
Glupteba變種:跨平臺、模塊化惡意軟件分析
圖 9. JS 文件的URL
圖 10. m_inc.js的內(nèi)容
· 開始rundll32.exe,然后查詢hxxp://info[.]d3pk[.]com/js_json 來尋找 JSON 列表,其中包含要注入到IE 瀏覽器的腳本。
圖 11. rundll32.exe 內(nèi)存字符串
研究人員進一步分析發(fā)現(xiàn),系統(tǒng)中的master_preferences 文件含有惡意文件的跡象,比如chrome AppID。 文件包含有用戶想要應(yīng)用到計算機Chrome 瀏覽器的設(shè)置。在該文件中安裝Chrome 擴展是一種向 Chrome瀏覽器添加功能和特征的方式。
圖 12. master_preferences 的內(nèi)容
其中的內(nèi)容是一個Chrome AppID,這也是ManageX chrome 擴展的IoC。ManageX使用一個Chrome 瀏覽器的擴展來追蹤用戶瀏覽器的活動并與C2 域名進行通信。
漏洞利用
攻擊中的釋放器還包括使用初始的機器作為跳板,然后掃描內(nèi)網(wǎng)來尋找有漏洞的機器。然后啟動EternalBlue 漏洞利用在網(wǎng)絡(luò)中傳播釋放器。
EternalBlue 漏洞利用是Microsoft SMBv1 中的安全漏洞(CVE-2017-0143 到 CVE-2017-0148),廣泛應(yīng)用于Windows 7、Windows Server 2008、Windows XP以及部分Windows 10系統(tǒng)中。這些樣本中的字符串表明了目標(biāo)Windows系統(tǒng)的版本、端口、架構(gòu),與Microsoft SMBv1 使用的非常類似。但是目前Microsoft SMBv1 都是被禁用或卸載了的。
圖 13. 未解壓的樣本中的字符串
圖 14. 未解壓的樣本中的字符串
微軟在2017年3月 就發(fā)布了這些漏洞的補丁,但是許多企業(yè)仍然沒有進行修復(fù)。此外,還有許多惡意軟件作者使用EternalBlue 漏洞利用進行加密貨幣挖礦等惡意活動。
本文翻譯自:https://www.trendmicro.com/en_us/research/20/i/cross-platform-modular-glupteba-malware-uses-managex.html如若轉(zhuǎn)載,請注明原文地址: