在我們之前的文章裡,趨勢科技報導了被稱為PlugX的新品種遠端存取工具(RAT),它被用在Poison Ivy相關的APT攻擊-進階持續性滲透攻擊 (Advanced Persistent Threat, APT) /目標攻擊中。乍一看,這個遠端存取工具似乎只是個簡單的工具,具備有限的遠端存取能力。然而,進一步分析PlugX會發現它有更多微妙之處。
在典型的攻擊中,PlugX通常具備三個組成部分,即:
- 一個正常檔案
- 一個可以由正常檔案載入的惡意DLL
- 一個包含惡意程式碼,可以由DLL載入的二進位檔案。
攻擊是由包含惡意附件檔的釣魚郵件所開始,通常是壓縮過或精心製造的文件檔,可以攻擊 Adobe Acrobat Reader或微軟Office(特別是 CVE-2010-3333)的漏洞。在此案例中,它透過特製文件檔到達(偵測為TROJ_ARTIEF.LWO)。這個木馬程式會植入並執行BKDR_PLUGX.SME,它接著會植入以下檔案:
所有使用者的%User Profile%\Gf\NvSmart.exe – 一個正常的NVIDIA檔案(NVIDIA Smart Maximise Helper Host)
- 所有使用者的%User Profile%\Gf\NvSmartMax.dll – BUT
- 所有使用者的%User Profile%\Gf\boot.ldr – TROJ_PLUGX.SME
要注意的是,這惡意軟體會植入檔案NvSmart.exe,這是一個已知的正常NVIDIA檔案。
檢視NvSmart.exe的匯入表(import table),可以看到它從NvSmartMax.dll匯入三個函數。在正常情況下,它會載入正常的NvSmartMax.dll。但如果相同目錄中有此DLL檔案的惡意版本,那它將載入這惡意版本。
惡意NvSmartMax.dll接著會載入位在相同目錄的boot.ldr。這個檔案包含NvSmartMax.dll所用的惡意程式碼。
繼續深入被載入程式碼的作用,我們看到它會先解密自身,在其記憶體空間形成「可執行檔」。所有的後門模組都可以在這「可執行檔」內找到。
但是,被載入的程式碼並不會將此解密出的「可執行檔」植入系統。相反地,它會將程式碼注入到正常程序svchost.exe,這可能是為了避免被偵測。在它注入程式碼到svchost.exe後,它會終止最初執行的NvSmart.exe。
我們分析解密後的可執行檔發現它是設計成並充滿著數個後門模組。這些模組被安排進行各自獨特的任務。我們從惡意軟體發現以下模組:
PlugX模組 | 後門功能 |
XPlugDisk | 複製、移動、重新命名和刪除檔案新增資料夾新增檔案
枚舉檔案 執行檔案 取得磁碟機資訊 取得檔案資訊 修改檔案 開啟檔案 |
XPlugKeyLogger | 記錄按鍵和啟動視窗 |
XPlugNethood | 枚舉TCP和UDP連線枚舉網路資源設置TCP連線狀態 |
XPlugOption | 顯示訊息方塊鎖定工作站登出使用者
重新啟動系統 |
XPlugPortMap | 執行端口映射 |
XPlugProcess | 枚舉程序取得程序資訊終止程序 |
XPlugRegedit | 枚舉登錄機碼新增登錄機碼刪除登錄機碼
複製登錄機碼 枚舉登錄項目 修改登錄項目 刪除登錄值 |
XPlugScreen | 螢幕擷取擷取影片 |
XPlugService | 刪除服務枚舉服務取得服務資訊
修改服務 啟動服務 |
XPlugShell | 執行遠端shell |
XPlugSQL | 連接資料庫伺服器和執行SQL指令 |
XPlugTelnet | 建立Telnet伺服器 |
類似於我們最初的PlugX文章,我們觀察到它會植入除錯日誌到%All Users Profiel%\SxS\bug.log。此檔案包含了可以讓惡意軟體作者用來改進PlugX的錯誤代碼。例如,如果惡意軟體無法存取某些檔案或資料夾,它會建立事件日誌。參考此除錯日誌,惡意軟體作者就可以修改未來的PlugX版本以存取這些檔案或資料夾。作者甚至可以利用該日誌來知道如何避免被偵測或被停用。因此,此檔案對於建立更有效的PlugX工具來說是非常關鍵。
趨勢科技的使用者受到了主動式雲端截毒服務 Smart Protection Network的保護。特別是檔案信譽評比服務可以偵測並刪除PlugX(BKDR_PLUGX和TROJ_PLUGX)。網頁信譽評比和電子郵件信譽評比服務可以封鎖上述的C&C和相關電子郵件。趨勢科技的Deep Security使用者可以利用規則1004498 – Word RTF檔案解析堆疊緩衝區溢位漏洞來防護此威脅。