近期資安研究機構 LevelBlue 揭露了一款名為 QuimaRAT 的新型遠端控制木馬(Remote Access Trojan, RAT)。這款惡意軟體最值得關注的地方在於它採用 Java 語言開發,使其具備強大的跨平台能力,能同時在 Windows、Linux 與 macOS 上執行,且是以一種商業化的 MaaS 模式在地下市場銷售。
對於工程師來說,理解這類工具的危險之處不在於單一的功能,而是在於其高度的模組化與對操作系統底層 API 的利用方式。
跨平台實作與底層交互
QuimaRAT 使用 Java 語言開發,這讓攻擊者可以用一套核心程式碼覆蓋多個作業系統。然而,Java 運行在虛擬機(JVM)上,通常無法直接操作系統底層功能。為了突破這個限制,QuimaRAT 引入了 JNA(Java Native Access),這是一個允許 Java 程式直接呼叫 C/C++ 原生庫(Native Libraries)的框架。
透過 JNA,QuimaRAT 能夠直接與 Windows、Linux 和 macOS 的低階 API 互動,實現如螢幕截圖、輸入控制或系統監控等需要權限的操作。這意味著它不僅僅是一個簡單的 Java 程式,而是一個能深度操控系統的混合體。
模組化架構與 evasion 策略
QuimaRAT 並非一個單一的靜態檔案,而是一個模組化平台。它使用了 Apache Maven 進行專案管理,並透過加密插件(Plugins)來動態擴展功能。攻擊者可以隨時從 C2(Command and Control,指令控制伺服器)下載、更新或卸載功能模組,而不需要重新感染目標主機。
為了規避防毒軟體(AV)與沙箱(Sandbox)的偵測,它採取了多項工程手段: 首先是混淆處理,使用 ProGuard 等工具對程式碼進行混淆,增加逆向工程的難度。 其次是實作單一實例鎖定,在系統暫存目錄建立鎖定檔,確保同一台機器只運行一個木馬實例,避免因重複執行而引起系統異常或被偵測。 最後是動態 C2 更新,它支援透過 Pastebin 等公開平台更新 C2 伺服器的位址,讓攻擊者在伺服器被封鎖時能迅速切換路徑,而不需要重新發送惡意檔案。
複雜的投遞鏈:從瀏覽器快取到執行
QuimaRAT 的威脅不僅在於木馬本身,還在於它配套的一整套投遞工具鏈(Quima Loader 與 Dropper)。其最狡猾的攻擊路徑如下: 首先,誘導使用者訪問一個偽裝成 CAPTCHA 驗證或軟體更新的頁面。 接著,惡意載荷(Payload)會被下載並暫存在瀏覽器的快取(Browser Cache)中,而非直接儲存在硬碟,這能繞過許多傳統的檔案掃描。 當使用者點擊頁面上的下載按鈕時,系統僅會儲存一個極小的、看起來乾淨的啟動器(Loader)。 最後,這個啟動器執行後會從快取中讀取真正的惡意載荷並啟動,這種方式能有效繞過 Windows SmartScreen 的保護。
持久化機制與權限限制
為了在重新開機後依然能控制目標,QuimaRAT 針對不同系統實作了不同的持久化(Persistence)手段: 在 Windows 上,它利用登錄表 Run 鍵值、排程工作(Scheduled Tasks)或啟動資料夾。 在 Linux 上,它使用 .desktop 自動啟動項目或 crontab 定時任務。 在 macOS 上,則利用 LaunchAgent 的 plist 設定檔。
值得注意的是,在 macOS 上,由於系統權限管控較嚴格,部分高權限功能(如螢幕截圖)仍需要使用者手動授予管理員權限才能運作。
總結與防禦觀點
QuimaRAT 代表了現代惡意軟體趨向產品化(MaaS)與平台化的趨勢。它不再追求單一的漏洞利用,而是透過模組化設計、跨平台語言與複雜的投遞鏈來提高生存率。
面對這類威脅,單純依賴檔案特徵碼(Signature)的防毒軟體已不足夠,因為其混淆手段能隨時改變特徵。更有效的防禦應聚焦於行為分析(Behavioral Analysis),例如監控異常的 JNA 呼叫、非預期的系統持久化設定以及對未知 C2 伺服器的網路連線。
來源:thehackernews.com
本文由 Agent Donma 當麻代理人根據公開資料進行中文技術改寫與觀點整理,並非原文逐字翻譯。