APT & 針對式目標攻擊
TIDRONE 攻擊台灣軍工與衛星產業
根據我們的研究顯示,有一個不明的駭客集團對軍事相關產業鏈擁有濃厚的興趣,尤其是無人機製造商,該集團我們命名為「TIDRONE」。
摘要
- TIDRONE 應該是一個至今尚未被發現的中國駭客集團,對於軍事相關產業鏈擁有濃厚的興趣,尤其是台灣的無人機製造商。
- 駭客集團透過企業資源規劃 (ERP) 軟體或遠端桌面來部署進階惡意程式,例如:CXCLNT 和 CLNTEND。
- CXCLNT 具備基本的檔案上傳及下載功能,而且還能清除入侵痕跡、蒐集受害系統資訊 (如檔案清單與電腦名稱),以及下載其他 PE 執行檔到系統上執行。
- CLNTEND 是一個新發現的遠端存取工具 (RAT),今年 4 月曾經被用於攻擊中,可支援各式各樣的網路通訊協定。
- 根據監測記錄檔顯示,駭客在攻擊的後續階段會運用使用者帳號控制 (UAC) 迴避技巧、搜刮登入憑證,並利用駭客工具來停用防毒產品。
簡介
從 2024 年初開始,我們就一直收到來自台灣的資安事件回應案例。我們追查到一個尚未被發現的駭客集團,並將它命名為「TIDRONE」,根據我們的研究,該集團對於軍事相關產業鏈抱持濃厚的興趣,尤其是無人機製造商。此外,根據 VirusTotal 的監測資料顯示,被攻擊的國家相當多元,因此人人都應小心提防這項威脅。
除此之外,這份報告也調查了他們的最新攻擊手法、技巧與程序 (TTP),還有 CXCLNT 與 CLNTEND 這些工具的演進,並點出其攻擊程序來說明駭客在受害系統上的行為。從 TTP 可確認該集團一直在更新其武器並最佳化其攻擊程序,值得注意的是,它在載入器中導入了反制分析技巧,能檢查從父處理程序進入的位址,並且會勾掛一些使用廣泛的應用程式開發介面 (API),如 GetProcAddress 來改變程式的執行程序。
攻擊執行程序
我們根據惡意程式部署至受害環境的方式推測,這起攻擊很可能早在一段時間之前就已預先利用其他工具滲透到受害系統內,目前已進行到橫向移動階段。
我們在這起案例研究中,重新檢視了 CXCLNT/CLNTEND 以及相關的元件,包括啟動器與一個用來側載的合法執行檔,兩者都是經由 UltraVNC 下載。UltraVNC 是一個可讓使用者透過滑鼠和鍵盤遙控遠端伺服器的程式。調查期間,我們在不同的受害機構都發現了同一套 ERP 系統,這意味著惡意程式有可能是經由供應鏈攻擊來散播。
惡意程式在執行了 winsrv.exe 之後,會從 Winlogon.exe 複製金鑰來提升權限以從事惡意活動。原指定目錄中的 Update.exe 檔案也會被換成駭客提供的版本。我們在監測記錄檔中觀察到,駭客在攻擊的後續階段會迴避使用者帳戶控制 (UAC)、搜刮登入憑證,並且使用特殊指令來停用防毒產品。
技術面分析
本節進一步說明這起威脅所使用的工具,如:CXCLNT 和 CLNTEND,以及先前活動與近期活動的攻擊手法、技巧與程序 (TTP),如下圖所示。
載入器
我們從 VirusTotal 發現了兩種載入器版本以及用戶端,分別對應不同的感染程序。第一個版本 (圖 3 的 A 部分) 的載入器會建立一個服務來常駐在受害電腦上 (我們看到的服務名稱為「ASProxys」) ,並且在指令列中指定「-s」作為第一個參數,以保證下次執行時會經由服務來啟動處理程序。在加密部分,載入器需要兩個惡意檔案:wwlib.dat 和 wwlib.cfg。前者是一個 shellcode,內含一個解密函式,用來解開後者。
不過,這兩個惡意檔案在第二個版本 (圖 3 的 B 部分) 已經合併成一個加密檔案,只不過解密函式還是放在 shellcode 那部分中:
- 使用 RtlDecompressBuffer 來解開 PE 檔案。
- 執行 PE 檔案的進入點。
- 執行 PE 檔案中匯出的指定函式。(在第一個版本中是「TgSetup」,在第二個版本中則是「InstallSetup」)
除此之外,第二個版本的載入器還增加了一些額外功能:
反制分析技巧
- 讀取進入點來檢查「父」處理程序。
- 勾掛 GetProcAddress 函式,複寫原本函式當中的程式碼。
反制防毒軟體:使用反向呼叫 API
載入器不會使用一般的 API (如 CreateThread 和 _beginthread) 來啟動新的執行緒,而是使用從未見過的技巧,步驟如下:
- 使用 ConvertThreadToFiber 來建立一個 Fiber 結構。
- 使用 CreateFiber 來進入一個新的執行緒 (但輸入位址為垃圾程式碼)。
- 覆寫 Fiber 結構中的位址 (+0xC4),填入想要的函式位址。
- 呼叫 API 函式 SwitchToFiber 來進入想要的函式。
後門程式
根據我們的觀察,這起行動使用了兩個不同的後門程式。由於其程式碼結構的關係,shellcode 可彈性接受不同格式的檔案 (如 EXE 和 DLL) 作為最終惡意檔案。
EXE (Backdoor.CXCLNT)
最終惡意檔案之一,是一個不落地的執行檔,會蒐集受害系統的資訊,如:IP、MAC 位址、電腦名稱、產品名稱,以及系統架構。藉由分析封包傳輸的內容,我們就能推測出封包格式。
其解密步驟有兩道:第一個金鑰存放在 [開頭+0x8] 的位置,第二個金鑰存放在 [開頭+0x12] 的位置。接著,使用客製化 XOR 加/解密程序來將這個加密封包解開。
不過,在分析這個樣本時,我們發現其幕後操縱 (CC) 伺服器早已停止活動。追蹤惡意程式當中使用的 API 以及來自沙盒報告記錄到的 pcap 檔案,我們就能推測其可能的功能。透過比較解密後的封包內容以及惡意程式內寫死的指令碼,我們認為這個後門程式很可能具備以下功能:
指令碼 |
說明 |
0x1001 |
將受害系統資訊發送給 CC 伺服器。 |
0x1002 |
略過不做任何事。 |
0x1003 |
設定事件。 |
0x1004 |
接收不明資料,不確定其用途為何。 |
0x1005 |
清除足跡並:
|
0x1006 |
透過系統登錄來常駐。 |
0x2001 |
從 CC 伺服器接收惡意檔案的大小。 |
0x2002 |
從 CC 伺服器接收一個 DLL 檔案。 |
0x2003 |
呼叫指令 0x2002 收到的 DLL 檔案匯出的函式。 |
0x2004 |
不明。 |
0x2005 |
檢查活躍中的連線。 |
0x2007 |
將指定資料夾內列在清單上的檔案傳送到 CC 伺服器。 |
表 1:CXCLNT 的後門指令。
DLL (Backdoor.CLNTEND)
另一個惡意檔案是一個不落地的 DLL 檔案,內部名稱為「install.dll」。在「InstallSetup」匯出函式中,依組態設定的不同,惡意程式有三條執行路徑:
- SvcLoad → 建立一個名為「CertPropSvce」的服務,然後將接下來的惡意檔案「ClientEndPoint.dll」注入到目前的處理程序或 svchost 處理程序中 (視組態設定而定)。
- TaskLoad → 建立一個名為「CertificatePropagatione」的工作,然後將接下來的惡意檔案「ClientEndPoint.dll」注入到目前的處理程序或 svchost 處理程序中 (視組態設定而定)。
- 其他:直接將接下來的惡意檔案「ClientEndPoint.dll」注入到目前的處理程序或 svchost 處理程序中 (視組態設定而定)。
ClientEndPoint.dll 是一個遠端指令列工具,圖 3 顯示的是我們觀察到的指令。它支援透過以下協定和 CC 伺服器通訊:
- TCP
- HTTP
- HTTPS
- TLS
- SMB (連接埠:445)
根據我們的經驗,駭客喜歡使用假冒知名公司的網域名稱,例如:symantecsecuritycloud[.]com、microsoftsvc[.]com 及 windowswns[.]com,不論 CLNTEND 和 CXCLNT 皆如此。它們全都使用類似的命名方式來誤導研究人員對其網路基礎架構的調查。
幕後集團分析
從檔案編譯時間大致相同、以及此駭客集團的活動時間與其他間從事諜行動的中國駭客活動一致來看,這起行動有可能是某個尚未被發掘的中國駭客集團所為。此外,我們觀察到的攻擊事件也都是針對一些特定目標,主要瞄準軍事相關產業鏈,尤其是無人機製造商。由於這些廠商通常含有機密資料,因此駭客的動機很可能是為了竊取機密。而這也進一步證明 TIDRONE 有可能涉及了間諜活動。
WinWord.exe
由於駭客都是使用同一個「父」處理程序 (WinWord.exe),因此企業只要對以下變種保持警戒就能防範來自 TIDRONE 的攻擊:
- WinWord.exe (sha256: 8cfb55087fa8e4c1e7bcc580d767cf2c884c1b8c890ad240c1e7009810af6736),請注意,由於駭客使用了遠端指令列功能,所以「子」處理程序會是「cmd.exe」。
- WinWord.exe (sha256: 8cfb55087fa8e4c1e7bcc580d767cf2c884c1b8c890ad240c1e7009810af6736),指令列的第一個參數是「-s」。
- WinWord.exe (sha256: 8cfb55087fa8e4c1e7bcc580d767cf2c884c1b8c890ad240c1e7009810af6736),指令列的最後一個參數是「/SvcLoad」或「/TaskLoad」。
結論
本文探討了 TIDRONE 中國駭客集團,目前偵測到的攻擊大多分布在台灣,而且大多針對軍事相關產業,尤其是無人機製造商。攻擊中使用了進階惡意程式變種 (如 CXCLNT 和 CLNTEND),並經由 ERP 軟體或遠端桌面散播。此外,我們也說明了這些惡意活動的技術細節,好讓使用者知道該如何提防這些威脅。
以下是企業可用來自保的幾個步驟:
- 僅從信賴的來源下載軟體。
- 隨時提防駭客可能用來突破企業防線的社交工程誘餌。
- 使用能夠偵測駭客入侵早期跡象的惡意程式防護,不論惡意程式躲藏在系統的何處。
Trend Micro Vision One 提供了多層式防護來保護各式各樣的環境,它能藉由完整的防範、偵測及回應功能來保護系統,防範駭客的入侵和攻擊。
入侵指標 (IoC)
檔案
SHA-256 |
偵測名稱 |
f13869390dda83d40960d4f8a6b438c5c4cd31b4d25def7726c2809ddc573dc7 |
Trojan.Win32.CXCLNT.ZTLH |
e366f0209a939503418f2b7befbd60b79609b7298fed9c2fbafcb0e7fde19740 |
Trojan.Win32.CXCLNT.ZTLH |
6cb08a458e35101ef1035e7926130e1394cc1764a10166628aff541834c67063 |
Trojan.Win32.CXCLNT.ZTLH |
19bbc2daa05a0e932d72ecfa4e08282aa4a27becaabad03b8fc18bb85d37743a |
Trojan.Win32.CXCLNT.ZTLH |
eea0f94c6a8f18275c3dac1e1b9e9d3240e37073ff391852e8ff8d8391efa9aa |
Trojan.Win32.CXCLNT.ZTLH |
0d91dfd16175658da35e12cafc4f8aa22129b42b7170898148ad516836a3344f |
Trojan.Win32.CXCLNT.ZTLH |
1b08f1af849f34bd3eaf2c8a97100d1ac4d78ff4f1c82dbea9c618d2fcd7b4c8 |
Trojan.Win32.DULLOAD.ZTLC |
4b5f609c6b6788bdf0b900dd3df3c982cd547e7925840000bdc4014f8a980070 |
Trojan.Win32.SHELLDEBIN.ZTLC |
1f22be2bbe1bfcda58ed6b29b573d417fa94f4e10be0636ab4c364520cda748e |
Backdoor.Win32.CXCLNT.ZTLC.enc |
3b8f10a780eb64a3c59a2ae85fec074faf0f1a8d9725fb111f5cbf80e7b0dc1b |
Backdoor.Win32.CLNTEND.ZTLH.enc |
db600b0ae5f7bfc81518a6b83d0c5d73e1b230e7378aab70b4e98a32ab219a18 |
Backdoor.Win32.CLNTEND.ZTLH.enc |
1bf318c94fa7c3fb26d162d08628cef54157dfeb2b36cf7b264e3915d0c3a504 |
Backdoor.Win32.CLNTEND.ZTLH.enc |
f3897381b9a4723b5f1f621632b1d83d889721535f544a6c0f5b83f6ea3e50b3 |
Backdoor.Win32.CLNTEND.ZTLH.enc |
網路
- bestadll[.]fghytr[.]com
- client[.]wns[.]windowswns[.]com
- server[.]microsoftsvc[.]com
- service[.]symantecsecuritycloud[.]com
- time.vmwaresync[.]com