作者:啟明星辰ADLab
公眾號:https://mp.weixin.qq.com/s/5eUgB6uAg60PmwyVLm3yOA

引言

2019 年 4 月開始,啟明星辰ADLab 觀察到 Confluence 遠程代碼執行漏洞 CVE-2019-3396 被 Dofloo 僵尸網絡家族用于攻占設備資源,Confluence 是一個專業的企業知識管理與協同軟件,常用于構建企業 wiki。本次漏洞是由于 Confluence Server 和 Confluence Data 中的 Widget Connector 存在服務端模板注入漏洞,攻擊者構造特定請求可遠程遍歷服務器任意文件,甚至實現遠程代碼執行攻擊。有意思的是 Dofloo 僵尸網絡家族不僅開始利用高危漏洞進行攻擊,而且其背后的黑客還利用一種更具影響力的“黑雀攻擊”來入侵產業鏈,以掌控更加強大的網絡攻擊資源。而在此前,我們已經做了長時間的與Dofloo僵尸家族黑客產業鏈相關的研究,且已經確定了這種普遍存在于Dofloo家族中的“黑雀攻擊現象”,并對其中的“黑雀”進行了長期追蹤與分析。

此處,我們所提出“黑雀攻擊”不僅是一種高效的黑客攻擊手段,而且更是一種產業鏈級別的攻擊方法,一般為黑色產業鏈上游黑客所為。黑雀攻擊與供應鏈攻擊有異曲同工之妙,只是攻擊的目標不是常規的產業鏈,而是黑客產業鏈;受攻擊鏈的末端也不是普通用戶,而是極具危害性的黑客群體。在網絡安全與黑客產業鏈的長期對抗,使得該產業鏈日漸成熟且復雜,并形成了一個龐大的黑客生態系統,而在利益和生存需求的驅使下,黑雀現象似乎變成了必然,甚至在食物鏈的上端進化出了黑雀生態,如 Death 僵尸網絡的“大黑雀-黑雀-螳螂”。

自啟明星辰ADLab 于 2016 年初發現黑雀攻擊并于 2017 年 1 月發布《黑雀攻擊-揭秘 Death 僵尸網絡背后的終極控制者》之后,還相繼在多個惡意代碼家族中發現了黑雀攻擊,并發布了深度分析報告《揭秘 Billgates 僵尸網絡中的黑雀現象》和《黑雀攻擊:揭秘 TF 僵尸物聯網黑客背后的黑客》。在此前的黑雀分析和追蹤中,我們揭露了 Death 僵尸網絡背后的那個控制著上千僵尸子網絡的超級黑客,以及深藏在 Billgates 僵尸網絡和物聯網僵尸 DDoSTF 家族背后的黑雀。此外我們還詳細闡述了每個家族中“黑雀攻擊”的黑客層次結構,如 Death 僵尸網絡的三級黑客結構(大黑雀-黑雀-螳螂), Billgates 和 TF 的二級黑客結構(黑雀-螳螂),以及對相關的大黑雀、黑雀和螳螂進行了網絡行為分析和身份識別,并做了精準的黑客畫像。

而本文將會詳細闡述黑雀攻擊的最新發現過程,以及 Dofloo 僵尸網絡家族中所存在的“黑雀現象”。通過對家族進行全面的分析還發現,該僵尸家族的作者在制僵尸過程中就留有黑雀的接口,雖然少量精明的黑客發現了該接口并進行了清除,但是大部分的黑客成為被攻擊對象,被植入了黑雀后門。本文中我們還會對 Dofloo 僵尸網絡背后的黑雀進行深度挖掘和定位,并分析該家族與相似僵尸家族 MrBlack、DnsAmp、Flood.A 之間的同源特性。

一、 Dofloo僵尸家族簡介

Dofloo,又名 Spike 和 AES.DDoS,是一款支持 ARM、x86、mipsd 等多 CPU 架構的僵尸網絡程序。Dofloo 家族因 2014 年針對北美洲和亞洲多個國家進行高達 215Gbps 流量的攻擊而出名,此后長期的攻占物聯網設備資源并頻繁地進行網絡攻擊活動。根據賽門鐵克在2016年發布的《Internet Security Thread Report》,Dofloo 僵尸網絡惡意程序位列 2015 年度 IoT 領域惡意程序威脅排行榜第二名。

此外,Dofloo 還在 2016 年 9 月同 Mirai 僵尸一起參與了云計算公司 OVH 的攻擊,本次攻擊的流量超過了 1Tbps,創下了分布式拒絕服務攻擊的歷史記錄,而同年的 10 月再次參與了 Miarai 僵尸主導的對域名服務商 Dyn 的大規模 DDoS 攻擊,致使整個美國東海岸的網絡處于極度癱瘓的狀態。2019 年的 4 開始利用最新披露的遠程代碼執行漏洞 CVE-2019-3396 進行大面積傳播,攻占了相當數量的網絡設備。下圖是我們根據 Dofloo 僵尸網絡所實施的比較重要的攻擊事件所繪制的攻擊歷史圖:

二、 發現Dofloo僵尸中的黑雀

在長期的對僵尸網絡的研究中,Dofloo一直是我們監控的對象。在之前的研究中,通過自動化分析該家族的關聯樣本,發現該家族的大部分樣本都會啟動兩個新的攻擊線程,并發現這兩個線程存在異常行為。如:不僅會設置延遲啟動線程,還會嘗試跟另一個C&C控制端進行連接通信。因此,我們對這些樣本進行了進一步的分析,最終確定該僵尸生態中被植入了黑雀。

針對我們收集到的1200個僵尸樣本,繪制樣本的上線頻度占比如下:

從上圖可以看出,有三個地址的上線頻度遠高于其他的C&C。結合樣本分析發現,上線到這三個 C&C 地址的樣本幾乎都有兩個獨立控制的 C&C,并且僵尸回 連這三個 C&C 地址都是通過創建子線程的方式進行,而其關聯的樣本的另外一個 C&C 卻是在主線程中進行回連。因此,通過該僵尸的這幾個特性可以斷定其中必定存在黑雀攻擊的現象,而這三個 C&C 地址便是 Dofloo 僵尸生態中的黑雀 C&C 地址,與黑雀 C&C 地址相關聯的其他 C&C 地址便是 Dofloo 僵尸生態中螳螂黑客的 C&C 地址。

我們對這三個黑雀C&C地址相關聯的螳螂C&C做了分類統計,如下表所示:

可見,黑雀C&C 118.193.217.144掌控了最多的螳螂僵尸網絡,在此后的分析中,通過溯源確定了這三個黑雀C&C受同一個黑客控制。

三、 Dofloo僵尸黑雀溯源與畫像

通過對樣本的分析,結合樣本中的函數命名習慣、攻擊流量特征、變種源碼注釋以及樣本爆發傳播時用來散播樣本的HFS面板語言等特征,我們判定該家族由國內的黑客編寫。于是我們溯源目標鎖定在國內,通過對黑雀域名“aaa.tfddos.net”中關鍵信息 “tfddos”,我們關聯到一款名為“臺風DDoS”的僵尸軟件。并且通過進一步分析發現,該僵尸軟件的模板樣本與 Dofloo 僵尸具有極為相似的行為和網絡特性。此外,“臺風DDoS”在黑客間活躍的時間同 Dofloo 爆發時間均在 2014 年。根據以上一系列的證據證明他們之間存在一定同源性。為了進一步確認他們為同一款僵尸程序,我們還利用 bindiff 對“臺風DDoS”控制端生成的僵尸與 Dofloo 的樣本進行了相似度比對,發現兩者代碼相似度為 100% 的代碼占比超過 98%,因此可以確定“臺風DDoS”便是 Dofloo 家族的一個主控。對比圖如下:

通過對早期的“臺風DDoS”的僵尸模板程序分析發現與Dofloo黑雀C&C相同的后門C&C:183.60.149.199。

此外,通過對“臺風DDoS”的溯源發現,其曾在網站tfddos.com上作為官方軟件被公開售賣,該網站雖然采用了與Dofloo黑雀域名“aaa.tfddos.net”不一樣的域名,但他們都使用了“tfddos”作為域名的關鍵字,也即是“tai(臺) feng(風) ddos”。因而我們認為后門C&C:183.60.149.199與aaa.tfddos.net為同一黑客或者黑客組織所為。

對于黑雀 IP:118.193.217.144 的反查發現,在2017年,域名 wap.tfddos.net 和 aaa.tfddos.net 與該 IP 地址進行了長期的綁定。

從以上分析可以看出三個黑雀C&C(183.60.149.199、118.193.217.144、aaa.tfddos.net)實則為同一個黑客或者黑客組織所控制。為了更清晰的描述這些IP和域名之間的聯系,總結出關系圖如下:

為了追蹤 Dofloo 僵尸網絡背后的黑雀,我們先收集了 C&C 相關的信息并進行了分析。其中通過 IP:183.60.149.199 關聯出來的相關域名大部分被作為色情網站或博彩網站使用,并無可用線索。而 tfddos.com 和 tfddos.net 都采取隱私保護方案,無法進行進一步的追溯。

幸運的是我們在“臺風DDoS”的售賣歷史記錄中發現一起欺詐事件,事件中一位購買者披露了販賣人員的 QQ 號碼和支付寶賬號。通過進一步分析,我們最后確認了該販賣人員的 QQ 便是“臺風DDoS”開發者的事實。此外我們還通過該 QQ 的關聯信息收集到該人員有多年黑產從業歷史:如其從 2011 年開始編寫 DDoS 軟件,并創建“臺風工作室”;同時其還從事與 DDoS 相關的黑產業務,并通過販賣惡意攻擊軟件和發動 DDoS 攻擊來謀取非法收益。而此黑客便是我要溯源的 Dofloo 僵尸網絡背后的黑雀,其除了開發有“臺風DDoS”僵尸軟件外,還開發多款 DDoS 攻擊工具如:血腥DDoS、殘暴DDoS 和暴雨DDoS 等。

通過此后長期的溯源分析,我們還追蹤到了該黑雀在現實世界中的身份信息。此黑雀是河南南陽兩家科技公司的監事,并且以 80 萬元認繳資金持有其中一家科技公司 10% 的股份,背地里從事黑產活動。

依據我們對樣本分析和溯源獲取到的信息,整理和歸納后,總結并繪制出黑雀的畫像如下:

四、 Dofloo僵尸典型樣本分析

由于 Dofloo 支持多種 CPU 架構,我們在對這些平臺的樣本分析中發現,所有 Dofloo 支持的架構,都存在黑雀現象。但是僵尸作者對不同的架構的黑雀C&C處理略有不同,這對自動化分析也造成了一定的影響。我們對本次收集的共計 1200 個樣本的架構所占比例進行了統計,繪制成圖如下:

CPU 架構的分布圖,一定程度上也說明了該家族入侵設備類型的分布,可以看到 ARM 設備的比例非常高,這也說明 ARM 下的設備受到黑雀控制的比例比較高。

接下來我們對 Dofloo 家族的典型樣本進行了詳細的剖析,并且根據大量樣本提取歸納出典型的通訊流量和攻擊流量特征,并對 Dofloo 家族進行了同源性分析。

4.1 安裝機制

Dofloo 僵尸程序的安裝機制有:僵尸程序在宿主機的持久化設置、進程唯一性判斷和守護進程設置。

僵尸程序通過寫入開機自啟命令實現持久化。僵尸程序在啟動后,會首先檢查啟動的命令行參數, 如果發現沒有參數,那么惡意程序會默認是在該設備的第一次運行,此時會調用“autoboot”函數。在該函數中,調用“system”函數執行下表中的命令,以確保惡意程序在該設備重啟后仍能夠啟動運行。這也是 Dofloo 惡意程序在宿主設備實現持久化的唯一方法。

僵尸程序通過對比系統中運行的進程名來確保運行進程的唯一性,并調用 fork 函數創建守護進程。

4.2 上線機制

在安裝機制設置完畢后,僵尸程序與控制端 C&C 進行連接。此時惡意程序會收集被入侵設備的系統信息,并把這些信息作為上線包的內容發送到控制端處。這個上線包的內容包含內核版本、CPU 頻率、總內存大小、網口帶寬以及一些硬編碼字符串,比如“VERSONEX”和大量樣本中出現的“Hacker”。在黑雀的線程中,其上線機制的主體功能與螳螂線程處的功能相似度極高。不同的是,黑雀線程會延遲 15 小時和 40 分鐘上線,這往往會迷惑分析人員并可能逃避自動化沙箱的檢測,使得黑雀 C&C 隱匿在大量的請求中,減少被發現的可能。通過對大量樣本的分析,我們發現上線包的固定大小為 0x400 字節,并對上線包格式解析、提取后歸納整理出真實的數據結構,其在內存中的分布如下圖所示:

4.3 心跳機制

僵尸程序在SendInfo線程實現了自身的心跳機制。這個線程的主要功能是向螳螂控制端和黑雀控制端發送心跳包,心跳包內容包含當前CPU使用率和網絡速度信息,通過以下2個步驟獲取到這些內容:

(1) 檢查“eth0”到“eth9”范圍內以太網口的 ifconfig 信息。并通過讀取/proc/net/dev目錄信息來計算網絡速率。

(2) 通過讀取/proc/stat目錄下的信息,獲取 cpu 數量,計算占用百分比。

經過指定格式拼接后,會循環不斷的發送信息到 C&C 端。下圖為發送的心跳包信息:

比較有趣的是,下游的黑客在發動 DDoS 攻擊的時候,可能根本不會想到,主控中顯示的惡意程序的攻擊流量速率幾乎都是偽造的。我們在SendInfo線程中發現,當惡意程序執行 DDoS 攻擊時,會調用“fake_net_speed”函數,該函數會根據不同的 DDoS 攻擊的模式,在一個固定的范圍內偽造攻擊流量速率。下圖為對部分計算隨機流量的截圖:

僵尸程序偽造的攻擊流量數據范圍如下表所示:

4.4 控制指令解析與DDoS攻擊

發送完上線包之后,此時僵尸程序會等待接收控制端的控制指令。Dofloo 會首先把控制指令包的前四個字節作為模式指令碼進行解析,由此來判斷接下來要進行的操作,主要支持的操作有三種:

(1) 指令碼為 0x5 時,進入 CmdShell 函數,該函數內部調用了 system 函數,可作為遠控來下載或執行其他指定命令。

(2) 指令碼為 0x6 時,進入 DealwithDDoS 函數,此函數為 DDoS 攻擊函數,所有執行攻擊的判斷和邏輯都在此函數中。

(3) 指令碼為 0x7 時候,調用 kill 函數,終止進程。

同時 Dofloo 家族對控制指令進行了 128 位的 AES 加密,這個特性大大增加了對其控制指令流量監控和識別的難度。我們對收集到的樣本進行分析后發現,所有架構下僵尸程序用來解密的 KEY 都是相同的,這也說明互聯網中 Dofloo 僵尸家族的樣本都來自同一個模版。KEY 如下所示:

我們模擬了未加密的控制指令(除去前4個作為模式指令碼的字節)在內存中的布局,其控制指令的各個字段的含義如下圖所示:

當進入到 DealwithDDoS 函數時,僵尸程序根據指令,啟動不同的攻擊線程。Dofloo 家族不僅具有 SYN、HTTP 等傳統的攻擊方法,還具有利用 UDP 協議的反射放大的攻擊方式,比如 DNS 放大攻擊。下圖為 Dofloo 可發起的典型的 DDoS 攻擊的方法:

并且我們對 Dofloo 的攻擊方法進行了分析總結,并對部分攻擊方法的流量特征進行了提取,制作流量特征表如下:

我們在分析攻擊線程的時候,發現 ARM 架構的惡意樣本每次攻擊創建的攻擊線程非常多,單次攻擊指令可創建幾種甚至十幾種不同類型的攻擊線程。結合樣本 CPU 的分布,我們可以得知 ARM 設備下的 Dofloo 惡意程序是該僵尸家族的主力,在 DDoS 攻擊中提供了主要的流量支持。

同時根據監控到 Dofloo 攻擊歷史,發現該家族主要的攻擊方式以 UDP Flood 為主,近年來黑客也越來越喜歡DNS和NTP等反射放大攻擊手段來對服務器進行打擊 ,Dofloo 的攻擊方式占比也印證了這一點。同時我們也可以看到 Layer7 層的 CC_Flood 和 Layer4 層的 TCP_Flood、SYN Flood 作為傳統的 DDoS 的攻擊方式,其占比也一直較為穩定。并且我們根據相關的情報數據得知,Dofloo 的攻擊量相對于其他的家族較少,我們分析推測 Dofloo 每次發動攻擊時開啟了大量的攻擊線程,這樣能加大發包量,快速導致目標服務器宕機。

下圖為 Dofloo 僵尸家族攻擊方式占比圖:

4.5 同源性分析

我們觀察到很多殺毒軟件對 Dofloo 家族程序有不同的命名方式,甚至識別為其他家族的程序,因此為了確定 Dofloo 家族的源碼構成,我們對其進行了同源性分析。

通過對 Dofloo 僵尸網絡進行同源性分析,發現 Dofloo 僵尸網絡家族同 Mr.Black 僵尸網絡家族、Flood.A 以及 DnsAmp 僵尸家族有很高的相似度。首先,我們對 Mr.Black 家族中的典型樣本和 Dofloo 家族的典型樣本進行了對比,發現這兩個家族的整體流程和部分代碼高度相似,比如下圖中的上線機制部分,通過對比可以看到,上線包的內容和格式也極為相似:

并且還可以看到 Mr.Black 同樣有同名的,發起 DDoS 攻擊的函數 DealWithDDoS,其發起攻擊的控制指令編碼也相同。

只不過 Mr.Black 中僅有 5 種 DDoS 攻擊方式。通過查閱 Mr.Black 的源碼,發現 Mr.Black 源碼中并沒有黑雀后門線程和 AES 加密,沒有遠控部分,僅能發起 DDoS 攻擊。因此推測 Dofloo 為參考 Mr.Black 代碼更改后的變種。

然后通過 Flood.A 同 Mr.Black 和 Dofloo 家族進行對比,發現 Flood.A 家族較 Mr.Black 家族新增“SynFLood_Message”黑雀后門線程,“DealwithDDoS”函數中增加 Layer7 層的 HTTP 洪水攻擊,沒有 AES 加密和遠控功能,與 Mr.Black 家族較為相似,部分對比圖如下:

在 DnsAmp 與 Dofloo 家族的對比中,我們發現其代碼差別較大,但是主要攻擊代碼以及程序整體設計思路比較相似。在 DnsAmp 家族中,持久化仍然是通過設置“/etc/rc.d/rc.local”來保持開機自啟,并且在啟動后同 Dofloo 一樣,會首先確定進程的唯一性。而它的攻擊線程“AttackWorker”中,我們發現同 Dofloo 一樣具有同名的攻擊函數“DealwithDDoS”,只不過僅有 4 種攻擊方式,分別為 udp,icmp,dnsAmp,syn 攻擊。雖然 DnsAmp 與 Dofloo 整體代碼相似度不是太高,但是根據其主要攻擊代碼和程序整體的設計思路,我們推測二者具有關聯性,至少 DnsAmp 為參考 Dofloo 代碼而產生的相似變種。部分對比圖如下:

因此,我們大致可以推測出如下的關系:MrBlack可能為原始惡意程序,Flood.A為其變種,主要增加的功能有后門黑雀線程和HTTP洪水攻擊;Dofloo可能為Mr.Black或Flood.A的變種,主要新增的特性有程序持久化設置,控制指令AES加密,以及添加多種DDoS攻擊方法;推測DnsAmp為Dofloo的變種,它參考了Dofloo的部分代碼和設計思路。我們總結其四者的關系圖如下:

五、 總結

本篇報告重點對 Dofloo 僵尸網絡家族中存在的黑雀現象進行了分析披露,并溯源追蹤黑雀,產出黑雀畫像。同時對典型的僵尸樣本進行了分析,提取歸納出上線、心跳、控制指令和發起攻擊的流量格式。

同時,通過對黑雀和螳螂的分析,證實了黑雀攻擊所存在的潛在巨大危害。盡管部分黑客嘗試去掉其黑雀線程并重新傳播,但絕大多數的 Dofloo 僵尸樣本仍然留有此類后門,也有黑客在確認黑雀 IP 或域名失效后降低了警惕性,但是我們發現有部分黑雀域名在潛伏一段時間后,仍會偶爾解析上線,對螳螂進行一波收割。所以,綜合判斷該黑雀僵尸資源豐富、實力強悍。此外,通過廣泛的分析發現,這種攻擊方式還大量存在于其他僵尸程序、WEB Sehll 攻擊工具及蠕蟲木馬攻擊工具,這或許需要廣大安全研究人員和安全機構共同留意此類攻擊的幕后黑雀,重視該類威脅可能造成的巨大危害,及時發現并清除隱匿于網絡中的一大威脅。

參考文獻

1、 DDoS-Capable IoT Malwares: Comparative Analysis and Mirai Investigation

https://www.hindawi.com/journals/scn/2018/7178164/

2、 2017 Global botnet DDoS attack threat report

http://www.antiy.net/p/2017-global-botnet-ddos-attack-threat-report

3、 Internet Security Threat Report

https://www.insight.com/content/dam/insight-web/en_US/article-images/whitepapers/partner-whitepapers/Internet%20Security%20Threat%20Report.pdf

4、 Tango down report of OP China ELF DDoS'er

http://blog.malwaremustdie.org/2014/09/tango-down-report-of-op-china-elf-ddoser.html


啟明星辰積極防御實驗室(ADLab)

ADLab成立于1999年,是中國安全行業最早成立的攻防技術研究實驗室之一,微軟MAPP計劃核心成員,“黑雀攻擊”概念首推者。截止目前,ADLab已通過CVE累計發布安全漏洞近1000個,通過 CNVD/CNNVD累計發布安全漏洞近500個,持續保持國際網絡安全領域一流水準。實驗室研究方向涵蓋操作系統與應用系統安全研究、移動智能終端安全研究、物聯網智能設備安全研究、Web安全研究、工控系統安全研究、云安全研究。研究成果應用于產品核心技術研究、國家重點科技項目攻關、專業安全服務等。

img


Paper 本文由 Seebug Paper 發布,如需轉載請注明來源。本文地址:http://www.bjnorthway.com/941/