當前位置:
首頁 > 新聞 > Blackgear回歸:濫用社交媒體傳播C2信息

Blackgear回歸:濫用社交媒體傳播C2信息

簡介

Blackgear網路間諜活動也稱為Topgear或Comnie,基於Protux後門,最早可追溯到2008年。攻擊目標位於日本、韓國和台灣地區,涉及公共機構、電信行業和高科技公司。比如,2016年研究人員發現Blackgear使用了包括Elirks在內的不同惡意軟體攻擊了日本企業。基於最新的攻擊活動,研究人員認為Blackgear的運營者擁有良好的組織架構,並且會開發自己的攻擊工具。

Blackgear的一大特點就是會避免被檢測,會濫用blog、microblog和社交媒體服務來隱藏C2的配置。如果C2信息嵌入在惡意軟體中,那麼很容易就會被攔截;與之相比,Blackgear的攻擊者利用社交媒體就可以根據需要迅速修改C2伺服器信息。這樣,攻擊者就可以實行下一步攻擊或者更長遠的攻擊。

通過分析Blackgear最新攻擊活動中使用的Marade下載器(TSPY_MARADE.ZTBC)和Protux(BKDR_PROTUX.ZTBC),研究人員發現了博客和社交媒體發布的加密配置信息,如圖1所示。這可以說明這些惡意軟體工具是同一組織開發的。

圖1. Facebook上發布的Marade加密配置信息

圖2. Blackgear攻擊的感染鏈

攻擊鏈

為了更形象的描繪Blackgear的攻擊活動,研究人員將攻擊活動使用的攻擊和技巧進行了關聯分析。

1.使用誘餌文件或假的安裝文件,通過垃圾郵件發送誘騙潛在受害者點擊文件。

2.誘餌文件會提取出Marade下載器,釋放在機器的temp文件夾中,並且將文件大小增加到超過50M,以繞過傳統沙箱的檢測。

3.Marade會檢查受感染的主機是否可以連接到網路,還會檢查是否安裝反病毒軟體。

4.如果受感染的系統能夠聯網並且沒有安裝反病毒軟體,Marade就會連接到Blackgear控制的公開博客或者社交賬號發布的消息來提取加密的C2配置。否則Marade使用代碼中嵌入的C2信息。

5.加密的字元串會偽裝成磁力鏈接來確保惡意流量以避免被反病毒軟體檢測到。然後,Marade會解密加密的字元串並從中提取出C2伺服器的信息。

6.C2伺服器會發送Protux到受害者主機並執行。Protux是一個非常有名的後門,執行時會使用rundll32動態鏈接庫(dll),測試主機的網路、從其他博客提取C2伺服器信息,使用RSA演算法來生成session key並發送信息到C2伺服器。

Blackgear的惡意軟體攻擊會使用RAR自提取可執行文件(self-extracting executable,SFX)或Office VB腳本來生成誘餌文件。下面是SFX文件和最近使用的誘餌文件截圖:

圖3. Blackgear使用的惡意SFX文件內容,偽裝成Flash Player安裝器

圖4a. Blackgear使用的惡意文檔

圖4b. VB腳本執行Marade的過程

圖5. Protux的加密配置和同一博客內的Marade

Marade和Protux的關係

Marade和Protux的加密配置出現在同一博客中。如圖5所示,紅色區域的字元串作為搜索標籤來找出配置信息的位置,橘色區域的字元串是Protux會提取出的加密配置信息。

在Blackgear之前的攻擊活動中,Protux的配置格式是其他的版本。比如,Protux的循環會搜索 「++a++」標籤,如圖5所示;最新版本的Protux使用的格式與Marade類似,如圖6。

圖6. 博客中的Protux的加密配置

對最新版本的Protux進行逆向分析可以幫助確定如何解密C2信息,具體參見下面的python代碼。研究人員、系統管理員、信息安全專家等在解密Protux的最新版本時都可以使用下面的代碼。

import os, sys, datetime, operator, base64def decrypt():if len(sys.argv) != 2:print 「Usegae : ./decrypt_protux_magnet.py 」sys.exit(0)str = sys.argv[1]head = str.find(「magnet:?xt=urn:bhih:」)tail = str.find(「&xl=」)if -1 == tail:tail = str.find(「&xl=」)if -1 == head or -1 == tail:print(「can』t find delimiter」)sys.exit()b64_data = str[len(「magnet:?xt=urn:bhih:」): tail]b64_decode = base64.b64decode(b64_data)key = ord(b64_decode[2])data = b64_decode[4:]output_file = open(「C2_info」, 「wb」)for single_byte in data:output_file.write(chr(ord(single_byte) ^ key))output_file.close()if name == 『main』:decrypt ()

新遠程控制器工具

研究人員對Protux遠程控制器工具樣本的源進行了分析。該工具提供UI介面來幫助攻擊者發送指令並監控被黑的終端主機,還可以在受感染的系統中遠程控制Marade。

圖7a. 控制器提取的Marade相關的信息

圖7b. 收集的Protux相關的信息

根據控制器的行為,研究人員斷定Marade和Protux是同一個組織開發的。這兩個工具在個系統中服務不同的角色,Marade用於第一階段攻擊,發送被黑的系統信息到C2伺服器,並等候控制器下發的命令。這樣攻擊者就可以監控並檢查受影響的系統是否是他們感興趣的。如果感興趣,就使用Protux發起二階段攻擊。Protux工具可以實時控制攻擊者和後門之間的通信,下面是Protux的一些組件和作用:

·FileManage – 列出系統的所有驅動和文件夾

·ProcManage – 列出被黑主機的所有進程、模塊、線程和埠

·ServiceManage – 列出被黑主機的所有服務

·RegManage – 列出被黑主機的所有註冊表

·ScreenManage – 截圖

·ShellManage – 創建shell

Protux:新技巧

Protux是一個比較古老的後門,第一版的開發時間是2005年,距今已有13年時間,使用DLL注入來執行常規程序。基於這些行為,我們可以從使用的下載器和誘餌文件來進行模式映射。觸發器的格式為:

%system32/rundll32.exe

.

從Protux的歷史我們可以看出一些變化:輸出名和運行原理,具體如下:

通過對Protux的關聯分析,研究人員發現其中嵌入了版本號。圖8中高亮部分就是後門的版本號和加密字元串的時間戳。

Protux 3.7是最新版本,使用開源編譯器OpenCSP和RSA演算法來生成session key。

圖8. Blackgear使用的不同版本的Protux

圖9. 用OpenCSP加密的Protux

應對措施

Blackgear已經有10年的歷史了,攻擊目標覆蓋不同行業。使用的攻擊技術可以繞過傳統的安全解決方案,比如Blackgear的攻擊使用了階段感染。一些前在的受害者可能在攻擊的第一階段並不會注意到,因為第一階段主要是偵察和收集信息。一旦後門感染完成,就會濫用微博和社交媒體服務來提取C2信息。

因此,企業需要應對此類威脅,就需要開發出魯棒的威脅尋找策略以幫助驗證是否存在入侵、威脅和潛在的系統活動。還應建立深度威脅分析和關聯機制,從網路到伺服器再到終端,獲取目標攻擊的完整圖譜。

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

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


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

BYOL——一種新穎的紅隊技巧
利用XSS繞過CSRF防禦

TAG:嘶吼RoarTalk |