海蓮花組織Torii遠控的網絡攻擊活動分析
時間 : 2022年12月02日 來源: 安天CERT
1.概述
近期,安天CERT捕獲到一批活躍中的物聯網遠控木馬,背后的攻擊者不為經濟利益,在攻擊我國重要政企單位相當數量的Linux主機、服務器和物聯網等設備后潛伏隱藏。木馬具備豐富的竊密和命令控制能力,C2回傳鏈路上還通過提前攻陷的境內外物聯網設備作為流量跳板隱藏真實命令控制服務器。通過關聯溯源,安天CERT發現該木馬屬于Torii僵尸網絡家族[1]的升級版本,與海蓮花組織的同類遠控木馬存在一定的同源性和差別,且在依托的網絡資產上與早期海蓮花組織的攻擊活動也存在重疊。
最終,安天CERT發現Torii家族很可能是除雙頭龍家族[2]和Buni家族[3]之外,海蓮花組織第三款比較成熟且常用的針對Linux主機、服務器和物聯網平臺的遠控裝備。
表1-1 攻擊活動特征
事件要點 |
特征內容 |
攻擊時間 |
最早可追溯到2017年,至今活躍中 |
涉及組織 |
海蓮花(APT-TOCS) |
事件概述 |
海蓮花組織使用Torii遠控針對我國的網絡攻擊 |
攻擊目標 |
中國 |
攻擊手法 |
憑證暴力破解、漏洞攻擊等 |
武器工具 |
Torii遠控 |
攻擊意圖 |
竊密 |
2.攻擊活動分析
2.1 活動簡介
此次攻擊活動中涉及的遠控家族又被稱為Torii,溯源結果表明,該遠控很可能是由海蓮花組織研發并運營。遠控涉及的攻擊活動最早在2018年被披露,當時由于其復雜度被業內認為是下一代的物聯網僵尸網絡,最早活躍時間可追溯至2017年,已發現通過弱口令暴力破解、漏洞攻擊等手段進行傳播,因為主要被用于針對性的攻擊,不會基于已感染設備對全網的其他設備進行掃描攻擊,也不會利用已感染設備進行挖礦、勒索、DDOS等活動,因此5年以來其一直保持有相對較好的潛藏隱蔽狀態。
該遠控的功能豐富,適配廣泛,支持生成眾多類型如ARM、x86、x64、MIPS、SPARC、PowerPC、SuperH、Motorola 68000等等CPU架構的載荷,能對運行于以上架構的服務器、物聯網設備、辦公主機等進行深度信息竊取和控制,此外還具備10組以上的命令控制能力。
近年來,Torii活躍于海蓮花組織針對我國的網絡攻擊活動中,攻擊者通過攻陷國內的公網路由器、攝像頭等網絡設備充當跳板,安裝流量轉發工具,將被植入Torii木馬的設備的竊密和控制流量,經一層或多層跳板轉發至真實的Torii遠控C2服務器?;谀壳罢莆盏奶搴驼鎸岰2查找國內受控情況,發現2022上半年存在超1萬7千條的可疑受控流量訪問次數,Torii在國內已初步具有僵尸網絡規模。
2.2 遠控功能分析
2.2.1 對抗分析能力
1) 字符加密
絕大多數敏感字符串都被加密,運行時解密,解密算法為自定義的輪轉異或:
圖2?1 字符解密函數
2) 執行后休眠
木馬執行后,先進行sleep()函數休眠,休眠時間默認60秒或根據傳參而自定義,此舉可對抗一部分的自動化分析如沙箱等。
圖2?2 運行后休眠
3) 子進程名隨機化
父進程退出后的子進程,進程名被命名為正則表達式隨機生成的字符串,此舉可抵抗基于進程名的篩查檢測。
圖2?3 子進程名被隨機化
4) C2通信流量加密
雖然木馬主要使用443端口通信,但過程實際并非使用TLS加密,而是使用RC4加密后再倒序:
圖2?4 通信流量加密算法
5) 落地文件名偽裝
雖然未完全掌握此次攻擊活動的上文,但從Torii家族歷史的攻擊過程來看,此次的遠控也應存在第一階段的母體,母體是負責釋放本遠控的Dropper,會將遠控的落地位置由目錄表和偽裝正常的文件名表這兩個表隨機組合而成:
表2?1 落地位置由兩表隨機組合
目錄表 |
文件名表 |
/usr/bin |
setenvi |
/usr/lib |
bridged |
$HOME_PATH |
swapper |
/system/xbin |
natd |
/dev |
lftpd |
$LOCATION_OF_1ST_STAGE |
initenv |
/var/tmp |
unix_upstart |
/tmp |
mntctrd |
… |
2.2.2 信息竊取能力
除了使用系統函數獲取如主機名、MAC地址等,木馬還會通過解密出的一批shell命令來獲取豐富的系統軟硬件信息,例如:
圖2?5 執行收集信息
梳理出的Shell命令和收集對象如下表:
表2?2 信息收集命令對應信息
Shell命令 |
對應信息 |
id 2>/dev/null |
用戶id |
uname -a 2>/dev/null |
操作系統信息 |
whoami 2>/dev/null |
用戶名 |
cat /proc/cpuinfo 2>/dev/null |
處理器信息 |
cat /proc/meminfo 2>/dev/null |
內存數量 |
cat /proc/version 2>/dev/null |
內核版本 |
cat /proc/partitions 2>/dev/null |
分區塊分配信息 |
cat /etc/*release /etc/issue 2>/dev/null |
系統標識 |
2.2.3 遠程控制能力
梳理出遠控的功能包括操控和竊取本地文件、命令執行、載荷下載等,羅列如下:
表2?3 命令控制功能
指令 |
主要功能 |
0xBB32 |
從C2下載文件,MD5校驗并保存 |
0xE04B |
搜尋指定文件并返回大小 |
0xEBF0 |
獲取心跳或ping |
0xF28C |
讀取文件指定偏移的內容發送至C2 |
0xC221 |
從指定URL下載文件 |
0xDEB7 |
刪除指定文件 |
0xA16D |
獲取超時數值 |
0xA863 |
從C2下載文件,權限標志為rwxr-xr-x并執行 |
0xAE35 |
執行給定Shell命令,結果返回C2 |
0x5B77 |
獲取心跳或ping |
0x73BF |
獲取心跳或ping |
遠控連接的C2地址由上述同一解密算法解得,攻擊活動中既存在直連真實C2服務器,也存在連接國內跳板的轉發端口,之后轉往下一跳:
圖2?6 直連C2服務器
圖2?7 連接跳板機和轉發端口
3.回傳鏈路分析
當木馬硬編碼的C2地址為跳板時,跳板性質一般為物聯網設備,主要有國產路由器、國產VPN設備、公網攝像頭等,TCP協議的惡意流量從8443、8773等端口進入設備,然后被轉發至真實的C2服務器或更多層的跳板。
從跳板設備運行的服務來看,攻擊者有可能通過nday甚至0day漏洞攻擊得到系統執行權限。從以往的海蓮花在物聯網跳板上實現流量轉發的手段來看,其曾使用自研或開源的轉發工具、防火墻轉發規則等,由于目前尚未進一步掌握以上跳板內部信息,猜測此次活動手段也大多如此,例如Github開源的tinyPortMapper,其支持Linux/Windows/MacOS主機、安卓手機/平板、路由器、樹莓派等等設備,使用方式例如將本地的1234端口接收到的TCP和UDP流量,轉發到目標IP的443端口:
圖3?1 tinyPortMapper的使用方式
當硬編碼的地址為真實C2服務器時,目標端口皆為443,域名和VPS的購置廠商和地理位置都分散在境外,無明顯特點。
4.關聯溯源
4.1 與Torii家族的高度同源
通過代碼比對,安天CERT發現此次的木馬家族與Torii僵尸網絡的第二階段木馬存在有大量的同源性,能確認屬于同一木馬家族,但相對來說有更規范的編碼實現和升級,屬于Torii家族的新版本。
表4?1 此次木馬家族與Torii的同源性
同源性 |
此次木馬家族 |
Torii家族 |
對抗分析手段 |
1. 字符異或加密,密鑰:0xFFABFACB; 2. 執行后先休眠; 3. 子進程名隨機化。 |
1. 字符異或加密,密鑰:0xFEBCEADE; 2. 執行后先休眠; 3. 子進程名隨機化。 |
指令功能基本一致 |
0x5B77,獲取心跳或ping |
0x5B77,獲取心跳或ping |
0x73BF,獲取心跳或ping |
0x73BF,獲取心跳或ping |
|
0xA16D,獲取超時數值 |
0xA16D,獲取超時數值 |
|
0xA863,從C2下載文件,標志為rwxr-xr-x并執行 |
0xA863,從C2下載文件,標志為rwxr-xr-x并執行 |
|
0xAE35,執行給定Shell命令, 結果返回C2 |
0xAE35,執行給定Shell命令,結果返回C2 |
|
0xBB32,從C2下載文件, MD5校驗并保存 |
0xBB32,從C2下載文件,MD5校驗并保存 |
|
0xC221,從給定URL下載文件并保存 |
0xC221,從給定URL下載文件并保存 |
|
0xDEB7,刪除指定文件 |
0xDEB7,刪除指定文件 |
|
0xE04B,搜尋指定文件并返回大小 |
0xE04B,搜尋指定文件并返回大小 |
|
0xEBF0,獲取心跳或ping |
0xEBF0,獲取心跳或ping |
|
0xF28C,讀取文件指定偏移的內容發送至C2 |
0xF28C,讀取文件指定偏移的內容發送至C2 |
|
0xB76E,無意義 |
||
0xF76F,切換新的C2地址 |
||
C2地址 |
硬編碼,每個樣本包含1個地址,可為攻擊者自注冊域名,也可為跳板服務器 |
硬編碼,基本每個樣本包含3個地址,皆為攻擊者自注冊域名 |
4.2 與海蓮花遠控家族的同源性和差異
國內Netlab實驗室的研究報告[4]表明,雙頭龍家族與海蓮花組織的MacOS遠控兩者之間從C2會話的建立方式、上線包構造、加解密算法甚至多組指令功能對都存在驚人的相似,雙頭龍家族可以稱之為海蓮花MAC遠控在Linux平臺的實現版本。
更早的報告表明[2],雙頭龍家族與Torii家族間存在敏感命令的重用、流量構造方式和持久化方式的相似性,報告推測雙頭龍與Torii家族可能出自同一攻擊者之手。
安天CERT進一步分析發現,雙頭龍與Torii家族雖然存在個別相似性,但整體的差異要遠多于重合,以下羅列雙頭龍、Torii和另一款已知的海蓮花Linux遠控Buni家族,三者間的重要差別如下:
表4?2 Torii家族與雙頭龍的差異
差異點 |
雙頭龍家族(海蓮花) |
Torii家族 |
Buni家族(海蓮花) |
敏感字符的加解密算法: 無相同的加解密算法 |
AES算法、循環移位算法 |
多字節輪轉異或算法 |
單字節輪轉異或算法 |
指令功能的對應關系: 無相同的指令功能對應 |
12條: 0x138E3E6,
0x208307A 0x5CCA727,
0x17B1CC4 0x25360EA,
0x18320e0 0x2E25992,
0x2CD9070 0x12B3629,
0x1B25503 0x1532E65,
0x25D5082 |
11條: 0xBB32, 0xE04B 0xEBF0,
0xF28C 0xC221,
0xDEB7 0xA16D,
0xA863 0xAE35,
0x5B77 0x73BF |
7條: 0x48B8,
0x5C37 0x5C7C,
0x7221 0xB616,
0x1CE3 0xDAFE |
通訊流量的加密算法: 無相同的加密算法 |
AES加密后ZLIB壓縮 |
AES-128加密后MD5校驗; 或采用RC4加密后倒序放置 |
異或加密后GZIP壓縮 |
網絡資產: 無相同的網絡資產重疊 |
news.th***.net blog.edu***.com cdn.mir***.net status.sub***.net 更多… |
jd-***.com kjtzgz.szl***.org update.firm***.com 更多… 或IoT跳板 |
Zabbix***.com 更多… 或IoT跳板 |
從整體的功能設計、代碼實現和資產依托等更多的層面來看,Torii、雙頭龍和Buni三者的局部相似性雖然表明可能出自相同的攻擊者,但三者并不能劃為同一惡意代碼家族,而應屬于三種不同的遠控工具。
4.3 與海蓮花組織的資產關聯
Torii家族2020年2月活躍的載荷分發服務器185.174.***.***,曾在2017年至2018年綁定已知的海蓮花域名svena***.com,以及綁定了可關聯到多個海蓮花歷史資產的高可疑域名hosti***.xyz:
表4?3 與海蓮花組織的資產關聯性1
Torii家族資產 |
歷史綁定關系 |
歷史綁定關系 |
關聯已知的海蓮花資產 |
185.174.***.*** 性質:載荷分發服務器 |
svena***.com,海蓮花的已知域名 |
||
hosti***.xyz |
185.174.***.*** |
mariala***.club |
|
185.174.***.*** |
loucest***.club |
||
annette***.club |
|||
ganmo***.com |
|||
abigails***.com |
|||
barbara***.com |
同在2022年2月時期活躍的Torii家族C2域名zhi***.com,曾在該月首先解析到動態IP地址188.166.***.***,該IP曾被卡巴斯基PhantomLance活動報告所提及[5],進一步分析發現,其并非海蓮花私有的IP,但海蓮花自2018年起存在偏好將諸如Denes遠控、KerrDown下載器、PhantomLance安卓木馬以及Covid19疫情期間竊密等攻擊活動的大量域名資產臨時性地指向該IP。
表4?4 與海蓮花組織的資產關聯性2
Torii家族資產 |
歷史綁定關系 |
關聯已知的海蓮花資產 |
zhi***.com 性質:C2域名 |
188.166.***.*** |
udt.sophi***.com,Denes遠控 |
e.browser***.com,KerrDown下載器 |
||
elizongha***.com,PhantomLance安卓木馬 |
||
georgiath***.com,PhantomLance安卓木馬 |
||
dictionari***.com,Cobalt
Strike遠控 |
||
social.ceri***..com,Remy遠控 |
||
aidanpain***..com |
||
rown***..com |
||
其它 |
綜上,Torii與早期海蓮花網絡資產的關聯性,結合海蓮花組織的雙頭龍家族與海蓮花MAC遠控家族的代碼高度同源,以及Torii與雙頭龍家族在設計上的相似性,再結合近期Torii家族通過海蓮花組織近年的同類攻擊手法攻陷我國的物聯網設備充當跳板,大量控制境內重要政企單位網絡和辦公設備,有理由相信Torii家族很可能是海蓮花組織除雙頭龍家族和Buni家族之外,第三款比較成熟的針對Linux或物聯網平臺的遠控工具。
5.威脅框架視角的攻擊映射
本次系列攻擊活動共涉及ATT&CK框架中10個階段的17個技術點,具體行為描述如下表:
表5?1 近期Torri攻擊活動的技術行為描述表
ATT&CK階段 |
具體行為 |
注釋 |
偵察 |
主動掃描 |
掃描暴露在公網中且存在指定漏洞的IOT設備 |
資源開發 |
獲取基礎設施 |
注冊C2域名,購買并搭建C2服務器 |
入侵基礎設施 |
入侵服務器或IOT設備作為跳板 |
|
初始訪問 |
利用面向公眾的應用程序 |
利用暴露在公網中且存在漏洞的應用服務 |
利用外部遠程服務 |
對暴露在公網中的遠程服務進行口令暴力破解 |
|
執行 |
利用命令和腳本解釋器 |
獲取權限后利用shell腳本安裝后續木馬 |
持久化 |
利用自動啟動執行引導或登錄 |
利用/etc/init實現開機時啟動 |
利用計劃任務/工作 |
利用crontab計劃任務自動執行 |
|
防御規避 |
規避調試器 |
進程名隨機化逃避調試器附加 |
仿冒 |
落地文件名仿冒成正常系統文件 |
|
發現 |
發現賬戶 |
獲取系統賬戶信息 |
發現系統信息 |
獲取系統版本信息 |
|
發現系統網絡配置 |
獲取系統網絡信息 |
|
收集 |
壓縮/加密收集的數據 |
收集到的數據通過異或后加AES加密 |
命令與控制 |
編碼數據 |
收集到的數據通訊前經過加密 |
使用標準非應用層協議 |
使用TCP協議通訊 |
|
數據滲出 |
使用C2信道回傳 |
遠控使用傳統C2信道通訊 |
將涉及到的威脅行為技術點映射到ATT&CK框架如下圖所示:
圖5?1 近期Torri攻擊活動對應ATT&CK映射圖