溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

發(fā)布時間:2021-12-20 10:04:25 來源:億速云 閱讀:144 作者:小新 欄目:網(wǎng)絡(luò)安全

小編給大家分享一下摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!

“摩訶草”組織,又稱Hangover、Viceroy Tiger、Patchwork、Dropping Elephant、MONSOON,國內(nèi)其他安全廠商也稱其為白象、豐收行動。

該組織是一個以長期針對中國、巴基斯坦及其他部分南亞國家從事網(wǎng)絡(luò)間諜活動的APT組織。從2013年5月16日由國外安全廠商N(yùn)orman首次曝光以來,該組織的網(wǎng)絡(luò)攻擊活動異常的活躍,并被國內(nèi)外不少安全廠商相繼發(fā)現(xiàn)其攻擊事件和使用的惡意代碼。

360公司也曾在2016年8月4日發(fā)布了《摩訶草組織(APT-C-09)來自南亞的定向攻擊威脅》一文【1】,詳細(xì)介紹了該組織發(fā)起的歷史4次攻擊行動,并對其歷史使用的攻擊工具和基礎(chǔ)設(shè)施的關(guān)聯(lián)性進(jìn)行比較和總結(jié)。

“摩訶草”組織主要針對我國的政府機(jī)構(gòu)、科研教育領(lǐng)域以及軍事領(lǐng)域的目標(biāo)人員進(jìn)行攻擊,其主要使用魚叉攻擊,也使用基于即時通訊工具和社交網(wǎng)絡(luò)作為惡意代碼的投遞途徑。其攻擊使用的惡意代碼主要針對Windows系統(tǒng),歷史也出現(xiàn)過針對其他平臺的惡意代碼。

360威脅情報中心在近期對“摩訶草”組織的攻擊活動監(jiān)測過程中,發(fā)現(xiàn)其投入使用的新的攻擊樣本,我們決定發(fā)布此篇子分析報告,揭露該組織最新的攻擊技術(shù)細(xì)節(jié)。

背景概述

“摩訶草”組織的攻擊活動從2013年5月16日首次曝光以來,其歷史的攻擊行動及使用的攻擊工具和資源也被國內(nèi)外安全廠商多次揭露,但從360威脅情報中心對該組織的持續(xù)監(jiān)測顯示,該組織的攻擊行動從未停止,并持續(xù)保持著一個比較高的頻度活躍。

自我們上一次公開發(fā)布“摩訶草”組織的完整分析報告,已經(jīng)過去了一年多,我們發(fā)現(xiàn)該組織在過去一年依然延續(xù)了過去的一些攻擊模式,但使用的攻擊工具和惡意代碼還是出現(xiàn)了一些顯著變化。

我們發(fā)現(xiàn),“摩訶草”組織最近發(fā)起了一次可能是針對東歐部分國家的攻擊事件,并使用了其新制作的一些基于腳本的攻擊惡意代碼文件,和過去常見的采用誘導(dǎo)漏洞文檔類的攻擊載荷手法出現(xiàn)了一些明顯變化,并且已經(jīng)有部分烏克蘭用戶遭受此類攻擊并被植入遠(yuǎn)控木馬。

目前我們尚不能確定該攻擊事件背后的攻擊動機(jī),但為了預(yù)防該組織在未來的攻擊行動中進(jìn)一步大規(guī)模使用該類攻擊惡意代碼,我們決定披露其部分技術(shù)細(xì)節(jié)并預(yù)警,以便能更好的防御其未來使用該類攻擊技術(shù)。

下面我們將重點(diǎn)分析“摩訶草”組織最新的腳本類攻擊惡意代碼技術(shù)。

基于腳本的攻擊載荷投放

在“摩訶草”組織最新制作的攻擊惡意代碼中,我們發(fā)現(xiàn)其主體模塊使用JS和PowerShell腳本進(jìn)行編寫,并利用多次解密、拼接來釋放和加載下一階段的攻擊載荷。

下圖為該惡意代碼的結(jié)構(gòu)和執(zhí)行流程。

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

Dropper JS – dog.js

Dropper JS是一個96KB的腳本,其會釋放一個中間JS腳本。其前面部分為hex形式的附加數(shù)據(jù)被作為注釋語句存放;后面的腳本會先獲取當(dāng)前正在執(zhí)行腳本的路徑,并讀取自身文件數(shù)據(jù),找到前面注釋的附加數(shù)據(jù)拼接起來,轉(zhuǎn)換成二進(jìn)制形式,保存到”%temp%\laksasokpaslkak.js”,最后通過WScript容器執(zhí)行這個腳本。 

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

中間JS腳本 – laksasokpaslkak.js

該腳本會首先判斷目標(biāo)主機(jī)是否存在卡巴和NOD32程序,如果存在則腳本退出;如果不存在,會把腳本里的“dllData”和“code”兩個數(shù)據(jù)一起寫入到一個PowerShell腳本文件中,其名字為隨機(jī)生成的5個字節(jié)。最后執(zhí)行該P(yáng)owerShell腳本。

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

隨機(jī)名稱PowerShell腳本

該P(yáng)owerShell腳本以數(shù)組形式亂序放置Base64編碼的數(shù)據(jù),通過Base64解碼并解壓成PowerShell腳本后,采用了一種Bypass UAC的形式來執(zhí)行該腳本。其使用的Bypass UAC技術(shù)在另一個APT組織“海蓮花”的攻擊工具中也曾使用【2】。其通過修改注冊表鍵值劫持eventvwr.exe,調(diào)用SC命令創(chuàng)建一個服務(wù),并指向解密后的PowerShell腳本。 

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

PowerShell Loader

PowerShell Loader腳本也是隨機(jī)生成的名字,其主要功能是加載主體遠(yuǎn)控模塊。

該腳本從內(nèi)存中加載payload,如下為加載代碼流程:

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

其中“strexp”保存的為遠(yuǎn)控模塊的文件數(shù)據(jù),經(jīng)過base64decode解碼得到原始文件內(nèi)容為一個DLL文件,其導(dǎo)出模塊名為socksbot.dll。最后使用ReflectiveLoader技術(shù)加載。

通過對加載的部分代碼分析,我們推測其可能參考了開源的代碼實現(xiàn)【3】,并添加了在64位Windows系統(tǒng)下的兼容性代碼。

遠(yuǎn)控模塊分析

加載入口 – ReflectiveLoader

該函數(shù)首先獲取當(dāng)前函數(shù)的地址,然后往前搜索PE頭部“MZ”標(biāo)志以定位該DLL模塊的基地址。 

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

通過hash獲取3個函數(shù)LoadLibrary、GetProcAddr、VirtualAlloc的地址。     

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

然后調(diào)用VirtualAlloc分配一片內(nèi)存空間。     

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
   

把該DLL模塊復(fù)制到新申請的內(nèi)存中。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
       

然后執(zhí)行DllMain。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
           

執(zhí)行入口 – DllMain

DllMain會首先獲取一些硬件信息計算出機(jī)器碼。機(jī)器碼是根據(jù)驅(qū)動器信息、電腦名和用戶名算出來的:

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

然后會獲取GetProcAddress和LoadLibraryA的地址,并把sub_1000234A代碼通過復(fù)寫進(jìn)程的方式注入svchost.exe宿主中,如圖:

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

注入后的代碼會初始化網(wǎng)絡(luò)套接字,發(fā)送一次touch包,然后創(chuàng)建一個主線程函數(shù),如下:    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

在主線程中會連接C&C服務(wù)器地址5.8.88.64:80。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
   

控制協(xié)議

這里我們詳細(xì)分析該遠(yuǎn)控模塊使用的控制通信協(xié)議,其基于HTTP協(xié)議實現(xiàn)控制通信。

1. touch包

控模塊會發(fā)送touch數(shù)據(jù)包,其會根據(jù)機(jī)器碼生成對應(yīng)的php路徑用作HTTP訪問的請求路徑,其將機(jī)器碼和隨機(jī)生成的密鑰加密并附上密鑰信息。

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

其具體算法實現(xiàn)如下:

計算后生成的機(jī)器碼字符串是放到HTTP數(shù)據(jù)包的GET數(shù)據(jù)里,例如生成的字符串為j2ylvj50suxr8vzss17s3.php,那么加密后的機(jī)器碼數(shù)據(jù)為j2ylvj50suxr8vzss17s3。其前16字節(jié)是機(jī)器碼加密后的數(shù)據(jù),從16字節(jié)開始到末尾是隨機(jī)生成的密鑰信息,密鑰長度在5-16字節(jié)隨機(jī),數(shù)值的范圍在0-35隨機(jī),然后通過編碼成可見字符。

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

當(dāng)服務(wù)器接收到該字符串會采用如下方式解密還原機(jī)器碼:

1) 分割出加密的機(jī)器碼和密鑰

2) 通過解密算法去解密前面16字節(jié)的機(jī)器碼。

例如這里對j2ylvj50suxr8vzss17s3.php進(jìn)行解密。

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

分割j2ylvj50suxr8vzs為加密的16字節(jié)機(jī)器碼,s17s3為隨機(jī)生成的密鑰。解密算法如下。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

從而解密還原出原始的機(jī)器碼:    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
   

其隨后構(gòu)造成HTTP格式的數(shù)據(jù)包發(fā)送出去。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
       

如圖為構(gòu)造HTTP數(shù)據(jù)包的函數(shù),UserAgent是通過ObtainUserAgentString函數(shù)生成的。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
           

2. 指令下發(fā)

遠(yuǎn)控服務(wù)器是通過不同的HTTP狀態(tài)碼來下發(fā)控制指令,受控端會進(jìn)行判斷。

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

在返回的HTTP數(shù)據(jù)包頭中,Date字段中存放服務(wù)器返回的機(jī)器碼。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

受控端會對服務(wù)器下發(fā)的控制信息進(jìn)行解密,解密算法如下:    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
   

其解密密鑰為136字節(jié)。

EC1ABCB66F641126C2250C5CF26C9902BD53043EAAF5FE0374597261674FD732E2C0498A9FA06203C5641323C3B4DDCB5CD8A22A0EDCAE39A11D7E98A2B1B6276C595E7CC1E1A0C743B8C075416C7DB3CB509AB5059556E99D2818BDDDEEE508AC871474239CC4B5527A8AED49949D5A421C785484ED084F1FCD3D3CFD1D8D8B

3. 回傳數(shù)據(jù)

受控端接受到控制服務(wù)器下發(fā)的指令后,會根據(jù)HTTP返回的狀態(tài)碼確定要執(zhí)行的命令,例如返回碼是203的時候就會上傳執(zhí)行,返回碼是202的時候就會截屏和獲取進(jìn)程列表。

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

并且上傳數(shù)據(jù)按如下格式構(gòu)造:

4個字節(jié)長度 + 1字節(jié)token + 加密后的內(nèi)容。

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

例如這里執(zhí)行獲取屏幕截屏和進(jìn)程快照信息,并加密發(fā)送到控制服務(wù)器。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

功能小結(jié)

該遠(yuǎn)控模塊實現(xiàn)了以下控制命令,包括:

上傳執(zhí)行腳本

上傳執(zhí)行PE

回傳屏幕截屏

回傳進(jìn)程列表

其使用HTTP協(xié)議進(jìn)行控制通信,采用這種控制協(xié)議也更便于攻擊者使用Web頁面來可視化控制和管理失陷主機(jī),其HTTP協(xié)議通信步驟如下:

1) 機(jī)器中木馬后,會每隔不定時間間隔去連接C&C服務(wù)器的80端口,根據(jù)HTTP協(xié)議發(fā)送touch包,發(fā)送的http數(shù)據(jù)包的GET數(shù)據(jù)中包括編碼后的長度隨機(jī)的機(jī)器碼。

2) 服務(wù)器收到touch包后,會記錄下來最近一次活躍時間,判斷是否在線。

3) 服務(wù)器如果需要對受控端進(jìn)行控制,就會回一個202或者203的HTTP狀態(tài)碼,下發(fā)指令。下發(fā)的指令是在http數(shù)據(jù)段里面,數(shù)據(jù)包格式為4個字節(jié)長度+1個字節(jié)token+加密后的內(nèi)容。

4) 受控端收到命令后,會判斷服務(wù)器返回的http狀態(tài)碼,根據(jù)不同的狀態(tài)碼去解析數(shù)據(jù)包去執(zhí)行不同的命名,然后把執(zhí)行后的結(jié)果回傳給服務(wù)器。

5) 控制者可以通過對服務(wù)端的Web界面對受害者進(jìn)行控制。

交互操作可以總結(jié)為如下圖:

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

關(guān)聯(lián)分析與回溯

360威脅情報中心通過對PowerShell Loader腳本中的關(guān)鍵字搜索,發(fā)現(xiàn)了其在一個VPS主機(jī)上搭建的Web控制端頁面。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

主控端的界面如下,最后一次測試時間應(yīng)該在2017年6月,已經(jīng)在近半年以前。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析

通過該Web管理后臺可以對受控機(jī)器進(jìn)行控制操作。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
   

另外一個Loots頁面保存了控制端發(fā)送控制指令后的一些日志數(shù)據(jù),包括執(zhí)行命令、上傳文件、截屏、下載文件、執(zhí)行腳本的功能。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
       

我們從日志數(shù)據(jù)中找到了一個名為setup.js的腳本文件,其代碼和我們分析的laksasokpaslkak.js的代碼大致一樣。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
           

通過把該腳本中的DLL數(shù)據(jù)用同樣的方法解密出來后,發(fā)現(xiàn)和前面分析的遠(yuǎn)控模塊socksbot.dll完全一樣,其C&C為46.166.163.243,與測試機(jī)IP 46.166.163.242屬于同一網(wǎng)段。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
               

查詢360威脅情報平臺數(shù)據(jù)確定其屬于“摩訶草”組織。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
                   

我們可以看到測試機(jī)執(zhí)行命令后的一些結(jié)果日志。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
                       

執(zhí)行ipconfig命令的結(jié)果    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
                           

我們還發(fā)現(xiàn)攻擊者曾在測試機(jī)上測試上傳其另外的遠(yuǎn)控木馬程序和從遠(yuǎn)程地址下載惡意載荷。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
                               

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
                               

這個Web版木馬控制端程序的網(wǎng)站域名(yds.deckandpatio.ca)綁定的IP地址為91.235.129.203。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
                                   

這個IP的別名為:vds8262.hyperhost.name。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
                                       

我們發(fā)現(xiàn)其是在一個烏克蘭的服務(wù)商上申請注冊的VPS服務(wù)器,其服務(wù)商官網(wǎng)為https://hyperhost.ua/ru。而yds.deckandpatio.ca這個域名應(yīng)該是其提供的一個免費(fèi)的二級域名。    

摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析
                                           

總結(jié)

通過分析“摩訶草”組織最新制作并投入使用的攻擊惡意代碼,攻擊者選擇腳本類語言來重新實現(xiàn)攻擊載荷的投放組件,可能源于其對開發(fā)工具的便利性和效率的傾向性。

雖然我們沒有明確線索證實該次針對烏克蘭人員的攻擊事件中該類攻擊腳本是如何誘導(dǎo)受陷用戶下載和運(yùn)行的,但根據(jù)其過去的攻擊模式推測,其可能采用如下幾種方式。

構(gòu)造包含有惡意腳本的自解壓執(zhí)行的壓縮包;

魚叉攻擊,并附帶有包含惡意腳本的壓縮包文件或附有惡意腳本壓縮程序下載的釣魚鏈接;

在社交網(wǎng)絡(luò)上發(fā)送附有惡意腳本壓縮程序下載的釣魚鏈接;

也不排除其可能通過入侵網(wǎng)站,在頁面植入惡意腳本代碼的方式。

從“摩訶草”過去采用的攻擊模式和使用的惡意代碼技術(shù)來看,該組織比較偏好于使用腳本和C#來開發(fā)攻擊工具的習(xí)慣。我們推測其更傾向于選擇能夠快速開發(fā)和實現(xiàn)攻擊的方式,并且通過不斷更新和變化的攻擊工具來逃避檢測和隱藏其攻擊行徑。攻擊者還制作了可用于Web管理的控制后臺程序來方便大規(guī)模管理和控制受陷主機(jī)。

從我們發(fā)現(xiàn)的攻擊者注冊的VPS服務(wù)器及其Web控制頁面,攻擊者發(fā)起新的攻擊和使用新的惡意代碼工具至少會提前半年進(jìn)行準(zhǔn)備和測試。

目前我們還無法推測其發(fā)起此次攻擊事件的動機(jī),可能是該組織針對東歐部分國家發(fā)起的定向攻擊,也不排除是其發(fā)起的一次基于新制作的攻擊武器的一次實戰(zhàn)演練。所以我們在此對該類惡意代碼的部分技術(shù)細(xì)節(jié)進(jìn)行披露,以便于提前防御該組織在未來的攻擊行動中進(jìn)一步大規(guī)模使用該類攻擊惡意代碼。

看完了這篇文章,相信你對“摩訶草APT團(tuán)伙新腳本類攻擊樣本的示例分析”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI