最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【PC樣本分析】plugx家族RAT樣本分析

2020-12-17 15:25 作者:吾愛破解論壇  | 我要投稿

作者論壇賬號:yusakul


一、樣本概述

wsc_proxy.exe為海蓮花遠(yuǎn)控樣本,wsc_proxy.exe執(zhí)行后加載wsc.dll解密wsc.dump文件,得到攻擊模塊(dll),攻擊模塊注入自身到系統(tǒng)進(jìn)程后連接遠(yuǎn)控服務(wù)器上線,接收執(zhí)行遠(yuǎn)控功能。遠(yuǎn)控功能包括:管理系統(tǒng)、文件、屏幕、進(jìn)程、服務(wù)、網(wǎng)絡(luò)、遠(yuǎn)程shell、鍵盤記錄等。

wsc_proxy.exe主要功能為:

  1. 攜帶小紅傘簽名的exe文件;

  2. 加載wsc.dll。

wsc.dll主要功能為:

  1. 解密并調(diào)用wsc.dump。

wsc.dump主要功能為:

  1. 注冊自啟服務(wù);

  2. 注入自身到系統(tǒng)進(jìn)程svchost、msiexec;

  3. 被注入進(jìn)程連接cc,執(zhí)行遠(yuǎn)控指令。

二、樣本類型

樣本為越南海蓮花組織開發(fā),plugx木馬程序。未加殼,通過注冊服務(wù)的方式進(jìn)行權(quán)限維持,實(shí)現(xiàn)開機(jī)啟動(dòng)。

三、詳細(xì)分析

3.1 執(zhí)行釋放

A、攻擊組件由三個(gè)文件組成wsc_proxy.exe、wsc.dll、wsc.dump。

B、執(zhí)行經(jīng)過簽名的合法程序wsc_proxy.exe,并惡意加載loader程序wsc.dll。

C、loader程序wsc.dll解密并解壓縮payload文件。

D、解密的shellcode被注入到合法的系統(tǒng)進(jìn)程中。

E、注入的Windows進(jìn)程執(zhí)行C2 /遠(yuǎn)控功能。

執(zhí)行鏈

3.2 攻擊細(xì)節(jié)

Payload啟動(dòng)并掛起系統(tǒng)信任的文件svchost.exe,將具有解密加載功能的函數(shù)注入到svchost進(jìn)程,并在scvhost進(jìn)程入口地址構(gòu)造shellcode,喚醒scvhost進(jìn)程執(zhí)行shellcode,shellcode將跳轉(zhuǎn)到解密加載函數(shù),該函數(shù)解密wsc.dump文件并執(zhí)行payload。

如上操作后,payload將運(yùn)行在白名單進(jìn)程中,達(dá)到隱藏自身的目的,后續(xù)注入挖空進(jìn)程msiexec.exe的過程與之相同。

3.3 遠(yuǎn)控模塊

遠(yuǎn)控功能包括:系統(tǒng)配置、文件管理、屏幕監(jiān)視、進(jìn)程管理、服務(wù)管理、遠(yuǎn)程shell、網(wǎng)絡(luò)配置、注冊表管理、數(shù)據(jù)庫管理、鍵盤記錄等。

分發(fā)命令子命令描述Option0x2000鎖屏0x2001直接關(guān)機(jī)0x2002重啟動(dòng)0x2003提示將關(guān)機(jī)0x2005彈出對話框

表一

分發(fā)命令子命令描述Disk0x3000遍歷磁盤0x3001查找文件0x3002遞歸查找文件0x3004讀取文件0x3007寫文件0x300A創(chuàng)建文件0x300C創(chuàng)建隱藏桌面,并創(chuàng)建進(jìn)程0x300D文件操作(復(fù)制、移動(dòng)、重命名)0x300E根據(jù)環(huán)境變量名獲取路徑

表2

分發(fā)命令子命令描述Screen0x4000遠(yuǎn)程桌面0x4100截圖

表3

分發(fā)命令子命令描述Process0x5000創(chuàng)建進(jìn)程0x5001枚舉進(jìn)程0x5002關(guān)閉進(jìn)程

表4

分發(fā)命令子命令描述Service0x6000查詢服務(wù)配置0x6001修改服務(wù)配置0x6002啟動(dòng)服務(wù)0x6003控制服務(wù)0x6004刪除服務(wù)

表5

分發(fā)命令子命令描述Shell0x7002啟動(dòng)cmd

表6

分發(fā)命令子命令描述Telnet0x7100啟動(dòng)Tlenet服務(wù)

表7

分發(fā)命令子命令描述RegEdit0x9000枚舉注冊表鍵0x9001創(chuàng)建注冊表鍵0x9002刪除注冊表鍵0x9003復(fù)制注冊表鍵0x9004枚舉鍵值0x9005設(shè)置鍵值0x9006刪除鍵值0x9007讀取鍵值

表8

分發(fā)命令子命令描述Nethood0xA000枚舉網(wǎng)絡(luò)資源

表9

分發(fā)命令子命令描述PortMap0xB000開啟端口映射

表10

分發(fā)命令子命令描述SQL0xC000獲取數(shù)據(jù)庫信息0xC001列出驅(qū)動(dòng)程序說明s0xC002連接數(shù)據(jù)庫

表11

分發(fā)命令子命令描述Netstat0xD000獲取TCP相關(guān)信息0xD001獲取UDP相關(guān)信息0xD002設(shè)置TCP連接的狀態(tài)

表12

分發(fā)命令子命令描述KeyLog0xE000鍵盤記錄

表12

分發(fā)命令子命令描述ClipLog0xF000剪切板記錄

表13

3.4 逆向細(xì)節(jié)

3.4.1 wsc_proxy.exe

wsc_proxy.exe文件數(shù)字簽名為AVAST Software
s.r.o.,來自安全廠商AVAST。說明樣本開發(fā)者擁有該安全廠商私有證書,利用證書將樣本簽名,達(dá)到免殺目的(可能是由于廠商的數(shù)字簽名私鑰泄露或被破解)。

wsc_proxy.exe數(shù)字簽名

0x1 加載“解密dll”

wsc_proxy.exe為帶簽名的白名單程序,程序功能為:加載wsc.dll。

3.4.2 wsc.dll

0x1 構(gòu)造shellcode

wsc.dll構(gòu)造了一段shellcode調(diào)用wsc.dll導(dǎo)出函數(shù)sub_10001000,構(gòu)造地址為wsc_proxy.exe加載自身完成時(shí)。sub_10001000為加載函數(shù)。

構(gòu)造shellcode

Shellcode地址

執(zhí)行流程

0x2加載wsc.dump

讀取wsc.dump到內(nèi)存,修改內(nèi)存屬性為可執(zhí)行,跳轉(zhuǎn)到目標(biāo)wsc.dump地址執(zhí)行。

文件路徑

修改內(nèi)存屬性,跳轉(zhuǎn)執(zhí)行

3.4.3 wsc.dump

文件wsc.dump猜測為樣本開發(fā)者從內(nèi)存中dump函數(shù)指令得到二進(jìn)制文件,跳轉(zhuǎn)到文件首地址即可正常執(zhí)行函數(shù)。

0x1 解密解壓縮并執(zhí)行payload

解密wsc.dump自帶的加密數(shù)據(jù),再次解壓得到一個(gè)dll文件,在內(nèi)存中展開PE文件并修復(fù)重定位。上述操作完畢后調(diào)用該payload(dll)。

在該片內(nèi)存中標(biāo)記“PLUG”。

解密算法

解壓得到payload

3.4.4 payload

Payload每次啟動(dòng)將檢查啟動(dòng)環(huán)境,并據(jù)此進(jìn)行一些初始化操作。同時(shí)payload將根據(jù)啟動(dòng)參數(shù)執(zhí)行不同的功能。

0x1 初始化

提升權(quán)限

2) 復(fù)制到指令目錄

復(fù)制樣本組件到路徑"C:\ProgramData\Windows NT\accessories\

wsc_proxy.exe",文件屬性為隱藏,再次啟動(dòng)wsc_proxy.exe。

0x2 注冊自啟服務(wù):100進(jìn)程

主要目的為注冊自啟服務(wù),注冊服務(wù)之前有檢查權(quán)限和提升權(quán)限的操作。

提權(quán)

利用方法:COM提升名稱(COM Elevation
Moniker)技術(shù)提升接口權(quán)限,ICMLuaUtil接口啟動(dòng)附帶管理員權(quán)限進(jìn)程wsc_proxy.exe進(jìn)程,啟動(dòng)參數(shù)為100。

進(jìn)程監(jiān)控


注冊服務(wù)

創(chuàng)建服務(wù)

注冊表被添加的啟動(dòng)服務(wù)

0x3 注入、挖空svchost進(jìn)程:200進(jìn)程

該進(jìn)程將查找系統(tǒng)文件svchost.exe,啟動(dòng)并掛起svchost,隨后修改svchost進(jìn)程內(nèi)存,將一個(gè)功能為“解密、解壓縮wsc.dll并加載payload”的函數(shù)寫入到svchost進(jìn)程內(nèi)存,尋找入口地址OEP并在此構(gòu)造shellcode跳轉(zhuǎn)到解密解壓縮函數(shù)。

恢復(fù)svchost主線程,執(zhí)行解密解壓縮操作,執(zhí)行payload。

創(chuàng)建掛起進(jìn)程:svchost

計(jì)算跳轉(zhuǎn)

構(gòu)建shellcode

0x4 svchost進(jìn)程:201進(jìn)程

創(chuàng)建內(nèi)存映射,保存一些工具類函數(shù),待后續(xù)使用。

保存跨進(jìn)程訪問的工具類函數(shù)

保存功能函數(shù)

磁盤管理

注冊表操作

進(jìn)程管理

枚舉網(wǎng)絡(luò)資源

獲取網(wǎng)絡(luò)狀態(tài)

計(jì)算機(jī)設(shè)置

端口映射

服務(wù)管理

啟動(dòng)遠(yuǎn)程cmd

數(shù)據(jù)庫操作

啟動(dòng)telnet服務(wù)

Hook鍵盤消息

保存鍵盤記錄到本地

剪切板記錄

操作過程與操作svchost相同,見下圖。

上線、通訊

通訊線程為OlProcNotify,該線程能夠使用三種協(xié)議嘗試連接地址steam.dajuw.com,端口為443。

通信成功后發(fā)送附帶加密key的加密報(bào)文,在接收處理循環(huán)中接收執(zhí)行遠(yuǎn)控指令。

執(zhí)行流程

上線協(xié)議

發(fā)送接收指令消息

接收消息、處理指令

4)插件管理器

遠(yuǎn)控服務(wù)器可以發(fā)送指令創(chuàng)建模塊管理線程,線程名為:OlProcManager。該線程同樣先使用指定的協(xié)議連接服務(wù)器,并進(jìn)入入一個(gè)“發(fā)送-接收-處理”循環(huán),遍歷執(zhí)行遠(yuǎn)控模塊具有的功能(管理磁盤、文件、屏幕…)。

發(fā)送消息

接收指令循環(huán)

執(zhí)行功能

0x5 msiexec進(jìn)程:209進(jìn)程

209進(jìn)程同201進(jìn)程將功能模塊函數(shù)安裝,并創(chuàng)建管道實(shí)現(xiàn)進(jìn)程通訊。此外,209進(jìn)程創(chuàng)建DoImpUserProc線程接收指令執(zhí)行功能函數(shù)。

功能安裝與管道通訊

執(zhí)行功能

0x5 300進(jìn)程

300進(jìn)程操作:關(guān)閉并刪除遠(yuǎn)控服務(wù),清理遠(yuǎn)控留下的注冊表痕跡,最后將遠(yuǎn)控程序和文件刪除。

四、樣本特征

暫不提供


原文地址:https://www.52pojie.cn/thread-1330687-1-1.html

【PC樣本分析】plugx家族RAT樣本分析的評論 (共 條)

分享到微博請遵守國家法律
石首市| 石泉县| 南通市| 大洼县| 蓝山县| 新巴尔虎右旗| 阿城市| 望江县| 涞水县| 崇信县| 汤原县| 黄平县| 合阳县| 德格县| 云梦县| 海阳市| 石城县| 繁昌县| 浙江省| 高青县| 繁昌县| 武宁县| 大兴区| 迭部县| 乡宁县| 巴中市| 通海县| 波密县| 和平县| 黑龙江省| 瑞昌市| 普定县| 克东县| 保靖县| 古交市| 扎兰屯市| 泾源县| 楚雄市| 汶上县| 宜丰县| 兴业县|