作者: 啟明星辰ADLab

一、分析簡述

近期,啟明星辰ADLab研究人員發現一款未知的僵尸程序,該僵尸會持續向目標主機發動 UDP 分布式拒絕服務( DDoS )攻擊。不過,有趣的是該僵尸的 UDP 攻擊流量并不是隨機的,而是由大量重復的 "trumpisdaddy" 數據構成。

攻擊流量包:"Trump is daddy"

黑客反常的以 "Trump Is Daddy" 作為攻擊流量,似乎表明該黑客可能是川普的支持者。川普大力實施”美國優先”的政策使得很多支持者稱川普為 "Daddy OF USA",不過反對者通常愿意理解成為“老色鬼”(Daddy 的另外一層含義)。

通過我們對感染設備的取證分析發現,該僵尸是以 "Trump" 作為程序和進程的名稱,并且 "Trump" 程序文件存放于 "whitehouse" 文件目錄下(意指住在白宮中的川普),因此我們將這個有趣的物聯網僵尸命名為“川普僵尸(Trump Bot)”。

二、川普僵尸的發現

啟明星辰ADLab研究人員在為客戶應急處理一臺網絡攝像頭時發現,該攝像頭會不斷的掃描外部網絡,并且根據掃描的網絡流量數據判斷該設備有可能感染上 Mirai 僵尸,因此決定對該設備進行取證分析。

通過設備取證工具我們進入到設備中,并且建立了可以遠程訪問的 shell,利用遠程 shell 可以查看攝像頭系統中的進程,并且從進程列表中發現了幾個異常進程,如下:

進一步的分析確認這幾個進程是 Mirai 僵尸的活動進程。由于 Mirai 僵尸啟動執行后會更改自身進程名稱,因此我們看到的進程名有一定的隨機性。接下來我們在 MDT 分區中發現了 Mirai 僵尸的 Loader 模塊 "durGelper" 文件,并且同時在 MDT 分區的 "whitehouse" 目錄下發現了 Trump 僵尸程序,也就是說該攝像頭同時感染上了兩款僵尸程序。但我們知道,Mirai 本身是具有排他性的,一旦一個設備感染上了 Mirai 僵尸后,感染入口會被其關閉,之后其他的惡意代碼就很難進入該設備。因此“川普僵尸”應該早于 Mirai 僵尸入侵到設備中,通過遠程 shell 可以查看到這兩個文件的落地時間。

可以看到 Mirai 感染時間是2016年11月17日,而“川普僵尸”的感染時間是同年的7月13日。同時,從上圖中我們還可以看出該僵尸是以 "Trump" 命名并且存在于 MTD 分區的 "whitehouse" 目錄下。

“川普僵尸”主要以感染物聯網設備為主,尤其是攝像頭、路由器等嵌入式設備。當前我們所發現的“川普僵尸”為 arm 平臺的僵尸樣本,目前未發現其他平臺的該類僵尸。

由于 Mirai 具有干掉其他惡意代碼的能力,所以“川普僵尸”的主體感染模塊可能在 Mirai 感染時被強行干掉,使得被感染設備中只留下該僵尸程序的攻擊模塊文件。

三、”川普僵尸”攻擊模塊逆向分析

我們取回的“川普僵尸”程序為僵尸的攻擊模塊,感染模塊或者加載器已經消失,無法在設備中找到。“川普僵尸”攻擊模塊主要實現僵尸的上線及接受C&C服務器控制命令執行等功能,其中實現了兩種類型的 DDoS 攻擊功能:UDP 攻擊和 HTTP 攻擊。

“川普僵尸”程序執行時,首先就會在終端顯示一行 "TRUMP IS DADDY\" 的信息。

接著僵尸便會連接 C&C 服務進行上線,上線 C&C(198.50.154.188:33369) 寫死在惡意代碼中。在僵尸程序中,通常固定 IP 地址和端口的模塊都不屬于常駐模塊,而屬于臨時下發執行的模塊,以防止 C&C 失效后而失去肉雞。因而該僵尸應該還存在一個加載器用于下載該模塊執行,黑客也可以通過加載器動態來下發該僵尸攻擊模塊,以此來動態變換 C&C 服務器。

如果連接成功,僵尸會向 C&C 服務器發送7個字節的上線數據包。

上線完成后,川普僵尸等候接收黑客的控制命令,伺機發動攻擊。

“川普僵尸”程序可以連環接收多個控制命令進行攻擊,每條控制命令通過換行符 "\n" 隔開,單個控制命令格式通過空格來將各個參數進行隔開。

僵尸程序將每條控制命令解析成為控制指令以及各種控制參數,通過分析發現這個僵尸支持4種類型控制指令,分別為:"!urid""!rape""!exit""!webfuck"

通過分析我們將該僵尸的控制指令、控制指令格式以及控制功能列入下表:

該僵尸實現兩種攻擊方式:UDP FLOOD 和 HTTP FLOOD

1)UDP FLOOD 攻擊

當僵尸程序接收到黑客下發的 "!urid" 攻擊指令后,便會通過控制參數來指定端口、攻擊數據長度、攻擊時間來對目標發動 UDP FLOOD 攻擊。

攻擊數據包是一堆重復的 "trumpisdaddy" 字符串,攻擊包的長度是通過控制端下發的控制指令的參數指定的,內嵌在惡意代碼中的攻擊數據如下圖:

以下為其中一個攻擊數據包的內容:

2) HTTP GET Flood 攻擊

僵尸程序如果接收到 "!webfuck" 攻擊指令,便會根據前兩個控制參數來定制 HTTP GET 請求的 URL 和 Host,最后偽造 HTTP 包對目標發動攻擊。值得注意的是,通過黑客指定 URL 來定制攻擊數據,可以非常靈活的構造最優的攻擊數據。我們知道,通過構造特殊的 URL 會極大的增加服務器資源的消耗,甚至對于解析URL存在漏洞的服務器還會直接導致服務假死等問題。所以對于黑客來說可以根據攻擊目標服務器的特點來定制一些特殊的 URL 來發動攻擊。而一般型僵尸的 HTTP 類 DDoS 攻擊,都會將 URL 寫死在代碼中,不便于靈活配置。

四、總結

通過以上分析我們可以看出,“川普僵尸”程序對目標提供了最直接有效的攻擊功能,代碼中并沒有做過多的冗余工作。不像黑客產業鏈中商品化的攻擊工具,為了吸引更多的黑客購買而提供非常全面且豐富多樣的功能,可以初步斷定該僵尸程序為一種未知類型的蠕蟲程序的攻擊模塊并且是在有攻擊需求時特別定制的。由于原始樣本程序被 "Mirai" 僵尸所清除,所以目前無法從當前設備中找到 "Trump Bot" 的原始母體樣本,啟明星辰ADLab后續會持續對該僵尸進行跟蹤。

威脅指標:

MD5:E6706149CB29A70497C23976C756547F
C&C:198.50.154.188:33369

上線指標:

payload_len=7&&pyload[0,7]="!getid\x0a"

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

ADLab成立于1999年,是中國安全行業最早成立的攻防技術研究實驗室之一,微軟MAPP計劃核心成員。截止目前,ADLab通過CVE發布Windows、Linux、Unix等操作系統安全或軟件漏洞近300個,持續保持亞洲領先并確立了其在國際網絡安全領域的核心地位。實驗室研究方向涵蓋操作系統與應用系統安全研究、移動智能終端安全研究、物聯網智能設備安全研究、Web安全研究、工控系統安全研究、云安全研究。研究成果應用于產品核心技術研究、國家重點科技項目攻關、專業安全服務等。


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