您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關如何實現Winnti Group新變體分析,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
2020年2月發現Winnti Group新的模塊化后門PipeMon。其主要目標是韓國和臺灣多人在線游戲和視頻公司,惡意軟件可發起對供應鏈的攻擊。攻擊者可在發行的游戲中植入木馬,或攻擊游戲服務器,利用游戲貨幣獲取經濟利益。Winnti Group從2012年以來一直保持活躍,該組織針對軟件行業供應鏈攻擊。最近ESET研究人員還發現了其針對香港幾所大學的攻擊。
在目標公司中發現了PipeMon的兩個變體,PipeMon的第一階段包括啟動嵌入在.rsrc中受密碼保護的可執行文件。 啟動程序將RARSFX會在自動生成目錄下寫入setup0.exe,通過參數提供密碼,利用CreateProcess執行RARSFX,如下所示:
setup0.exe -p*|T/PMR{|T2^LWJ*
每個樣本的密碼都不相同,然后將RARSFX的內容提取到%TMP%\RarSFX0中:
CrLnc.dat – 加密負載
Duser.dll – UAC bypass
osksupport.dll – UAC bypass
PrintDialog.dll – 惡意軟件初始化
PrintDialog.exe – 加載PrintDialog.dll的合法Windows文件
setup.dll – 安裝dll
setup.exe – 主程序
如果文件夾名發生沖突,RarSFX0字符串末尾的數字將遞增,直到沒有沖突為止。提取文件后,setup.exe將不帶參數地執行,使用LoadLibraryA加載setup.dll。 加載后,setup.dll將檢查形如‘–x:n’的參數,n不同操作模式也不同。表1中顯示了支持的參數及其相應的行為。
RARSFX在不帶參數的情況下執行setup.exe,檢查它是否以特權運行。 如果不是,進一步判斷Windows版本是否低于Windows 7 build 7601,如果符合條件則會利用token impersonation獲取權限。 否則它將嘗試使用不同的UAC bypass技術,可將有效載荷加載安裝到以下其中一項中:
C:\Windows\System32\spool\prtprocs\x64\DEment.dll
C:\Windows\System32\spool\prtprocs\x64\EntAppsvc.dll
C:\Windows\System32\spool\prtprocs\x64\Interactive.dll
攻擊者并不是隨機選擇惡意DLL的位置,setup.dll通過設置以下注冊表值將DLL加載程序注冊為備用打印器:
HKLM\SYSTEM\ControlSet001\Control\Print\Environments\Windows x64\Print Processors\PrintFiiterPipelineSvc\Driver = “DEment.dll”
HKLM\SYSTEM\CurrentControlSet\Control\Print\Environments\Windows x64\Print Processors\lltdsvc1\Driver = “EntAppsvc.dll”
請注意PrintFiiterPipelineSvc中的拼寫錯誤(由于可以使用任何名稱,因此對打印處理器的安裝沒有影響)。
注冊打印處理器后,PipeMon重新啟動打印后臺處理服務(spoolsv.exe),將加載惡意打印進程。 Print Spooler服務會在每次PC啟動時啟動,從而確保了惡意程序的持久性。根據安裝程序的不同,會將CrLnc.dat寫入注冊表中的以下位置:
HKLM\SOFTWARE\Microsoft\Print\Components\DC20FD7E-4B1B-4B88-8172-61F0BED7D9E8
HKLM\SOFTWARE\Microsoft\Print\Components\A66F35-4164-45FF-9CB4-69ACAA10E52D
整個PipeMon執行過程如下圖所示:
PipeMon是一個模塊化后門,每個模塊都是一個DLL,可導出IntelLoader函數,使用反射加載技術進行加載。每個模塊具有不同的功能,如表2所示。
負責加載主要模塊(ManagerMain和GuardClient)的加載程序是Win32CmdDll.dll,位于打印處理器目錄中。這些模塊以加密的方式存儲在相同位置,其命名如下:
banner.bmp
certificate.cert
License.hwp
JSONDIU7c9djE
D8JNCKS0DJE
B0SDFUWEkNCj.logN
.hwp是韓文文字處理程序使用的擴展名,在韓國非常流行。模塊經過R**加密,解密密鑰‘Com!123Qasdz’會硬編碼在每個模塊之中。 Win32CmDll.dll解密并注入ManagerMain和GuardClient模塊。 ManagerMain模塊負責解密和注入Communication模塊,而GuardClient模塊將確保Communication模塊正在運行,并在必要時重新加載。下圖概述了PipeMon的工作方式。
Win32CmDll.dll首先嘗試將ManagerMain和GuardClient模塊注入以下名稱之一的進程中:lsass.exe,wininit.exe或lsm.exe。如果失敗,它將嘗試注入已注冊的Windows服務進程之一,但不包括名為spoolsv.exe,ekrn.exe(ESET),avp.exe(Kaspersky)或dllhost.exe的進程。如果所有操作均失敗,它將嘗試進程taskhost.exe,taskhostw.exe或explorer.exe。
可以使用專用命令按需加載其他模塊,但是還沒有發現其中的任何模塊。模塊間通過命名管道通信,每個模塊之間通信通道使用兩個命名管道,一個用于發送,一個用于接收。
從C&C服務器收到%CNC_DEFINED%字符串,變量%B64_TIMESTAMP%是base64編碼的時間戳:
通訊模塊負責通過管道管理C&C服務器與其他模塊之間的通訊,其C&C地址硬編碼在ManagerMain模塊中。通信協議是基于TCP的TLS,通過HP-Socket庫處理。 所有消息均使用硬編碼密鑰進行R**加密。如果傳輸內容大于或等于4KB,則先使用zlib對其進行壓縮。
啟動與C&C服務器的通信,首先發送信標消息,其中包含以下信息:
OS version
physical addresses of connected network adapters concatenated with %B64_TIMESTAMP%
victim’s local IP address
backdoor version/campaign ID; we’ve observed the following values
“1.1.1.4beat”
“1.1.1.4Bata”
“1.1.1.5”
Victim computer name
支持的命令如下表:
攻擊者還使用了PipeMon的更新版本,R**替換為簡單的XOR,以0x75E8EEAF作為密鑰,刪除了所有硬編碼的字符串,使用隨機值命名模塊間通信管道。只有主加載程序作為文件存儲在磁盤上,更新的模塊如下表描述:
C&C 通信格式發生變化:
后門配置被加密并嵌入到加載程序DLL中。
PipeMon模塊和安裝程序都使用相同的簽名,該證書可能是Winnti組織在上一次攻擊中盜取的。
以上就是如何實現Winnti Group新變體分析,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。