啟明星辰ADLab:MSC文件的在野利用情況與黑客攻擊活動分析

發布時間 2024-09-14

一、背 景


2024年6月22日,一個利用MSC格式的新型攻擊技術的惡意樣本出現在VT平臺上,此時利用這種技術的惡意樣本在VT上均顯示為零檢測率。這種技術被Elastic研究團隊命名為“GrimResource”,其通過惡意構建的MSC文件在Microsoft管理控制臺中執行任意代碼。啟明星辰ADLab在此后的兩個月時間中,持續關注使用這種利用手法的攻擊,通過監測的結果分析發現:自該技術公開后,同類攻擊迅速增加,到目前為止能夠監測到的有效攻擊及其攻擊樣本有100多起。并且有越來越多的APT組織、黑產團伙和紅隊利用該技術在全球范圍內進行網絡攻擊,包括Kimusuky、銀狐、海蓮花等。目前已發現的目標有中國、韓國、越南、蒙古等國家的政府機構和企業,涉及政府、科技、教育、石油等敏感行業。


這些攻擊普遍通過MSC文件作為惡意payload,通過各種方式發送給目標并誘使目標打開該文件。由于MSC格式的攻擊文件是一種相對罕見的文件類型(多數被攻擊者可能熟悉.exe、.doc等常見的可執行文件擴展名,但并不了解.msc文件,因此可能在實際攻擊中產生奇效),并且目前防護系統也鮮有對此類文件的針對性檢測,所以黑客利用該技術實現攻擊的成功率高,被檢測和發現的幾率低,就目前我們觀察到攻擊誘餌,有包含如:“《**論壇》外審專家邀請函與文章評審單”、:“匿名審稿專家回執 (校外) ”、“適用于南海的兩種法律制度研究 (稿件)”、“美國戰略收縮對中東地緣政治的影響”、“****網絡大會”等極具引誘性的攻擊,一旦點擊其中的MSC文件,其系統便會被植入竊密木馬,導致重要敏感數據被竊取。


通過我們對攻擊的追溯發現早在2024年4月,Kimusuky APT組織就開始利用MSC文件來對其目標實施了大量的攻擊,但其利用手法與GrimResource技術有所不同。由于MSC樣本的公開利用和技術演變尚處于發展初期,因此有關攻擊樣本和手法的變化值得引起持續關注。此外,Outflank于8月13日發文稱GrimResource技術源于其武器庫,其在攻防演練中被防守方上傳到公共沙箱。


MSC(Microsoft Snap-In Control)文件,是微軟管理控制臺(MMC)用來添加/刪除的嵌入式管理單元文件, 由于此類文件能夠執行命令和腳本,因此攻擊者能夠借助MSC文件在目標系統上執行各類惡意任務。自微軟默認限制來自互聯網的Office宏文檔后,LNK、MSI、ISO等其他類型的惡意利用數量就開始大幅增加,此次新出現的GrimResource技術也理所當然成為了黑客們的新寵,相關MSC樣本數量自4月以來呈高速增長態勢。因此,啟明星辰ADLab針對近期捕獲到的MSC樣本進行了深入的分析,本文將主要介紹目前MSC文件在野利用技術的相關原理,披露近期利用MSC文件的多起攻擊活動,并重點針對其中的兩個案例進行深入分析。

二、近期在野攻擊活動分析



通過對目前收集到的100余個MSC樣本的分析,我們發現最早的利用樣本出現在2024年4月5日,所有樣本中,出現在4-5月的攻擊樣本主要屬于Kimusuky組織。6月后,隨著GrimResource技術的公開,MSC格式的樣本數量以月為單位呈明顯的遞增關系,表明黑客們正積極利用和測試相關攻擊技術并轉化為實際攻擊。以下是近幾個月捕獲到的MSC格式的攻擊樣本數量圖。


圖片1.png

圖1 MSC攻擊樣本數量統計圖(單位:月)


在這批攻擊樣本中,其中一些是基于開源項目編譯的樣本(如下圖中圖標為“眼睛”的樣本即為開源項目MSC_Dropper生成),這類樣本可能是部分攻擊者正在積極地進行技術準備和免殺測試。同時,一些真實的攻擊活動也越來越頻繁地出現,在實際攻擊中樣本通常會把圖標偽裝成WORD、PDF、MP4等各類常見的文件格式用以迷惑受害目標,下圖是部分樣本及圖標示例。


圖片2.png

圖2 捕獲MSC樣本示例


從中我們發現了數起針對全球多個國家和地區的攻擊活動,目標主要包括中國、韓國、越南、蒙古等,攻擊的目標行業則涉及政府、科技、教育、石油等敏感行業。其中,針對中國的APT攻擊活動在近期開始明顯增多。在7月初期,有關攻擊主要以“易翻譯助手”、”抖音千粉企業號”、“教育行業數據”等為誘餌的黑產組織攻擊為主。而在8月之后,開始陸續出現了多起以政治議題、專家邀請、會議日程、投訴建議、舉報材料等針對政府組織或科研部門的針對性攻擊,需要引起高度警惕,部分誘餌文檔如下所示。


圖片3.png

圖3 主題為“專家邀請函”類的誘餌文檔


圖片4.png

圖4 主題為“政策制度研究”類的誘餌文檔


圖片5.png

圖5 主題為“****網絡大會”的誘餌文檔


圖片6.png

圖6 針對水利署的誘餌文檔


除了針對中國以外,韓國、越南、蒙古等多國也接連遭遇到利用MSC文件的攻擊活動,其中尤以韓國遭受的攻擊最多,這可能與kimsuky組織的攻擊目標傾向有關,部分攻擊活動誘餌如下所示。


圖片7.png

圖7 針對韓國的誘餌文檔


圖片8.png

圖8 針對越南石油公司的誘餌文檔


在針對這批樣本進行深入分析后,我們發現了攻擊者使用的多個基礎設施,包括多階段下載服務器和C2服務器等,其中大部分都采用了云服務來干擾溯源追蹤,其中一些服務器歸屬于美國、日本、瑞典、法國、新加坡等國家。部分樣本及C2服務器如下所示。


表1 惡意服務器地址

表1-1.png

表1-2.png


同時,我們也捕獲到了部分樣本的投遞URL地址如下表所示。


表2 樣本投遞URL

表2-1.png

表2-2.png


三、MSC文件利用技術原理分析


MSC(Microsoft Snap-In Control)文件,是微軟管理控制臺(MMC)用來添加/刪除的嵌入式管理單元文件, 管理員通過創建控制臺可以管理計算機的各種設置,添加各類功能如用戶賬戶管理、系統服務、設備驅動程序等,然后可以將這些管理單元的自定義配置以XML的形式保存到磁盤上,即MSC格式。Windows中常見的設備管理器、磁盤管理器、組策略管理器等都是MSC格式文件。如下圖是自定義MSC文件的管理單元任務板界面,攻擊者可以通過編程的方式與MMC進行交互,從而構造自定義的界面和內容。


圖片9.png

圖9 MSC文件管理單元任務板


我們在進一步針對這批樣本分析后,發現目前MSC格式文件的在野利用方式主要有兩種。在受害者默認開啟用戶賬戶控制(UAC)的情況下,第一種利用方式需要與受害者交互兩次(主要由Kimusuky組織使用);另一種只需交互一次(GrimResource技術),相關技術利用流程圖如下所示。

圖片10.png

圖10 MSC文件技術利用流程圖


利用方式一:在受害者打開MSC文件后,首先彈出UAC控制選項,如果選擇是,則繼續彈出攻擊者定制的Microsoft管理控制臺界面誘導目標,一旦受害者繼續點擊open打開文檔即會中招,執行cmd命令、powershell腳本等后續利用階段。

圖片11.png

圖11 利用方式一


對于此類樣本,攻擊者通過編輯MSC文件的界面偽造UI外觀,從而誘騙受害者點擊控制臺任務板上的鏈接,而不會產生懷疑。這種利用方式借助了MMC中的控制臺任務板實施攻擊,控制臺任務板是在MMC1.2中引入的,攻擊者可以借助控制臺任務板來執行各類任務,例如打開屬性頁、執行菜單命令、運行命令行和打開網頁等,目前主要發現Kimsuky組織在大量使用此類攻擊方式,相關利用樣本的最早出現時間是在今年4月5日,利用示例如下圖所示。

圖片12.png

圖12 控制臺任務板執行任意命令示例


圖片13.png

圖13 任務板執行任意命令XML


利用方式二:GrimResource技術,該技術利用apds.dll中的XSS漏洞,通過MSC文件的StringTable部分引用易受攻擊的APDS資源,從而實現嵌入在MSC文件中的JS代碼任意執行,最后執行XML中的腳本代碼。相較于利用方式一,其具有最少的安全警告,無疑能夠使得攻擊的成功率大大提高。同時,對于很多為了方便而默認取消UAC通知的受害者來說更是能達到無交互即可執行的效果。
技術利用關鍵點:


  • 將ActiveX對象加載到“ActiveX控件”管理單元中。

  • 將HTML文件加載到“鏈接到Web地址”管理單元中。

  • 在HTML文件中,使用JavaScript與加載的ActiveX對象進行交互。并通過 MSXML方法,觸發XSL轉換來執行JScript代碼。

  • 最后從JScript代碼中調用系統函數,或者通過 DotNetToJScript 執行.NET代碼。


首先,在MMC程序中,攻擊者可以自定義插入ActiveX控件。通過文件編輯器打開創建的MSC文件時,可以看到創建的ActiveX控件存儲在XML的StringTable中。


圖片14.png

圖14 插入ActiveX控件對象


但如果想成功加載對象,就要繞過ActiveX 控件的安全警告。攻擊者采用了一種巧妙的方法,通過Microsoft Internet Explorer瀏覽器組件訪問external 對象,從而與MMC控制臺的其他元素進行交互,這是微軟官方支持的一種方式。如下圖中,scopeNamespace和docObject即是通過external.Document獲取現有對象,而非創建新的ActiveX對象,進而繞過了直接創建ActiveX控件時的安全限制。


圖片15.png

圖15 GrimResource技術利用代碼


同時,攻擊者利用了apds.dll的一個XSS漏洞,從而可以執行Console Root中的Jscript,進而再執行XML中的腳本。這其中還涉及到一個技巧,即利用MSXML(Microsoft.XMLDOM / {2933BF90-7B36-11D2-B20E-00C04F983E60} )執行XSL文件中嵌入的腳本。

XSLT是一種用于將XML文檔轉換為其他文檔格式的語言,XSLT樣式表(XSL)則定義了如何將一個XML文檔轉換為其他形式。微軟支持MSXML XSLT使用元素及其屬性implements-prefix實現并擴展函數以提供腳本級支持。因此,攻擊者通過MSXML的方式即可執行XSL文件中嵌入的腳本,如調用函數 XML.transformNode(xsl),即可執行嵌入的腳本及后續的惡意利用模塊,解碼腳本中的標簽如下圖所示。


圖片16.png

圖16 腳本中的



四、案例分析


啟明星辰ADLab接連捕獲到了多起利用MSC文件針對全球目標的攻擊活動。其中已發現針對中國、韓國、越南、蒙古等國家的政府機構和企業的攻擊,越來越多的APT組織、黑產團伙和紅隊正在利用相關技術在全球范圍內進行網絡攻擊,包括Kimusuky、銀狐、海蓮花等。在諸多的攻擊案例中,我們選取了在技術層面較有代表性且相對敏感的兩類攻擊樣本作為此次的分析案例,利用GrimResource技術針對中國的攻擊活動,以及Kimsuky組織利用MMC控制臺任務板針對韓國的最新攻擊活動。下面我們將對選取的兩個案例進行深入的分析。


4.1 以政治話題為誘餌針對中國的攻擊活動


此案例利用的是GrimResource技術,當受害者點擊運行msc文件時,mmc.exe會執行樣本中的js代碼,繼而執行嵌入在xml中的VBScript代碼。其中,引致VBA代碼的執行的關鍵點是transforNode(xsl)方法的調用。


圖片17.png

圖17 引致VBA代碼執行的關鍵點


transforNode方法常用于將一個XML文檔通過XSLT樣式表(作為參數)轉換為其他文檔格式。如果XSLT樣式表中含有元素時,那么元素中的腳本則會在轉換過程中被執行。


圖片18.png

圖18 XSLT樣式表內容


被執行的VBScript代碼通過自定義編碼和解碼、字符串拼接、特殊字符混合編碼等混淆技術,能夠有效地隱藏其真實邏輯和惡意行為,同時增加了分析人員進行逆向分析的時間成本。下圖展示了在首次解碼之后的部分代碼塊,能夠看到代碼中依然存在著其他混淆。


圖片19.png

圖19 混淆的VBScript代碼


我們繼續對代碼進行去混淆以及函數重命名處理后,可以看到腳本先是設置文件路徑和目錄結構,再從XML結構中提取數據進行base64解碼并保存為指定文件(誘餌文檔),最后打開該文件。


圖片20.png

圖20 釋放誘餌文檔


在本案例中,用于迷惑受害者的是三個偽裝成Word的誘餌MSC文件,具體內容如下圖所示。


圖片21.png

圖21 誘餌文檔示例一


圖片22.png

圖22 誘餌文檔示例二


圖片23.png

圖23 誘餌文檔示例三


接著提取和解碼其他base64數據,再將解碼后的數據保存為最終的Warp.exe和7z.dll可執行文件。隨后將“ t 8.8.8.8”作為參數(自動加載同目錄下“7z.dll”的所需條件)啟動Warp.exe程序。


圖片24.png

圖24 生成并執行warp.exe程序


經查看,“Warp.exe”具有 “Lenovo (Beijing) Co., Ltd.”的合法數字簽名,其原文件名為“7zwrap.exe”。具體信息如下圖所示。


圖片25.png

圖25 “Warp.exe”詳細信息


當惡意“7z.dll”文件被“Wrap.exe”成功加載后,其會在內存中對指定數據進行解密。經內存特征掃描后,判定最終被加載執行的是CobaltStrike,我們提取出的CS配置信息如下圖所示。



圖片26.png

圖26 CS配置信息


4.2 以學術演講為誘餌針對韓國的攻擊活動


該案例是Kimsuky APT黑客組織在今年所引入的一種新的攻擊策略,攻擊者通過XML的設置屬性將MSC惡意文件的圖標設置為Word圖標,借以偽裝成WORD文檔來迷惑受害者。


圖片27.png

圖27 偽裝的Word圖標


當受害者點擊MSC文件時,用戶賬戶控制(UAC)會彈出請求權限選擇,如果選[是],則會通過執行msc連接程序mmc.exe,展示攻擊者定制的名為“?????.docx”的Microsoft管理控制臺界面。具體如下圖所示。


圖片28.png

圖28 “?????.docx”的Microsoft管理控制臺界面


代碼中包含一段cmd參數命令行,其中使用了三個網頁瀏覽器可識別的HTML特殊符號,其所對應的解析內容如下表所示。


表3 特殊符號內容解析

表3.png


圖片29.png

圖29 含有特殊符號的cmd參數命令行內容


通過該符號所對應的解析進行替換后,得到了如下圖所示的批處理命令。該串批處理命令則是執行MSC后的管理控制臺根任務窗口的命令行參數。該段命令的主要功能是從指定URL下載名為“Grieco Kavanagh Passive Supporters.docx”的用于偽裝的誘餌文檔,以及后續階段的“pest.exe”和“pest.exe.manifest”文件。除此之外,其還會創建一個名為“TemporaryClearStatesesf”的計劃任務,每58分鐘執行一次“%appdata%\pest.exe”文件。內容如下圖所示。


圖片30.png

圖30 cmd參數命令行內容


查看“pest.exe”程序詳細信息,發現該程序的數字簽名名稱為“Adersoft”,原始文件名為“launcher.exe”。該程序為VBSEdit(由Adersoft公司出品的一款小巧而強悍的VBScript編輯工具)腳本啟動器。


圖片31.png

圖31 “pest.exe”程序詳細信息


在“pest.exe”程序啟動時,會默認加載“pest.exe.manifest”文件,. manifest文件是Windows應用程序清單文件的一部分,常用于指定應用程序的運行時條件和環境變量等。攻擊者利用此程序的運行機制將惡意代碼寫入至清單文件中,那么當“pest.exe”程序運行時惡意代碼便可被自動加載執行。


圖片32.png

圖32 “pest.exe”程序執行報錯


 “pest.exe.manifest”文件內容是XML格式,惡意代碼包含在“”標簽之間。該文件的主要功能是由一段經base64編碼的VBScript代碼來實現。部分代碼如下圖所示。


圖片33.png

圖33 base64編碼的VBScript代碼


解碼后我們可以看到,惡意代碼首先會判斷"%appdata%\ Microsoft \"目錄下是否存在“sim.sid”文件。若存在且小于9字節,則刪除該文件并退出腳本;否則,將“sim.sid”移動至”%appdata%\Microsoft\sif.bat"并運行bat文件,執行完成后刪除自身文件。


圖片34.png

圖34 bat文件操作代碼


如果“sim.sid”文件不存在,則向指定的Google drive鏈接發送HTTP請求,并獲取響應內容。


圖片35.png

圖35 向Google drive共享鏈接發送請求


成功獲取后,從接收到的內容中提取base64編碼的數據(在"pprbstart--"和"--pprbend"標簽之間),最后替換特殊字符并將解碼后的數據寫入至”%appdata%\Microsoft\sif.bat"。


圖片36.png

圖36 解析響應內容


截止分析時該Google drive共享鏈接已失效,暫時無法獲取到后續階段的攻擊樣本,分析至此結束。


五、總 結


本文針對我們近期捕獲到的一系列基于新型MSC文件的攻擊活動進行了分析,重點介紹了目前MSC文件在野使用的兩種利用技術原理,披露近期利用MSC文件的多起敏感攻擊活動,并針對其中的兩個案例進行了深入分析。從近幾個月MSC文件相關攻擊的活躍趨勢來看,攻擊活動涉及到越來越多的APT組織、黑產組織以及紅隊等,尤其是近期針對政治、科技、教育、石油等領域的APT攻擊開始顯著增多,需要引起相關政企和個人用戶的重點關注。


同時,MSC文件的公開利用和技術演變尚處于發展初期,盡管目前只是發現了兩種在野利用方式,但MMC本身存在不少安全隱患,未來隨著更多攻防研究人員的深入挖掘,可能會出現更多基于MSC或是其它Windows組件的新型惡意利用技術,啟明星辰ADLab也將持續追蹤相關技術的發展演進,及時披露有關威脅活動。


啟明星辰積極防御實驗室(ADLab)


ADLab成立于1999年,是中國安全行業最早成立的攻防技術研究實驗室之一,微軟MAPP計劃核心成員,“黑雀攻擊”概念首推者。截至目前,ADLab已通過 CNVD/CNNVD/NVDB/CVE累計發布安全漏洞5000余個,持續保持國際網絡安全領域一流水準。實驗室研究方向涵蓋基礎安全研究、數據安全研究、5G安全研究、人工智能安全研究、移動安全研究、物聯網安全研究、車聯網安全研究、工控安全研究、信創安全研究、云安全研究、無線安全研究、高級威脅研究、攻防體系建設。研究成果應用于產品核心技術研究、國家重點科技項目攻關、專業安全服務等。



adlab.jpg