您好,登錄后才能下訂單哦!
這篇文章給大家介紹基于SYLK文件傳播Orcus遠(yuǎn)控木馬樣本的示例分析,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。
近日,反病毒實(shí)驗(yàn)室發(fā)現(xiàn)一例利用符號(hào)鏈接文件(SYLK文件)傳播遠(yuǎn)控Orcus遠(yuǎn)控木馬的攻擊樣本,黑客使用SYLK文件做為初始攻擊載體,在SYLK文檔中使用DDE加載powershell進(jìn)而加載Orcus遠(yuǎn)控木馬執(zhí)行。對(duì)大多數(shù)用戶來(lái)說(shuō),SYLK文件都很陌生,SYLK文件為微軟的一種數(shù)據(jù)文件,默認(rèn)由Excel程序加載,使用SYLK文件做為初始攻擊載體在很大程度上可以躲避安全軟件的查殺,至本文發(fā)稿,該樣本仍未被騰訊電腦管家之外的各大安全廠商查殺。
黑客利用該樣本的典型的攻擊場(chǎng)景為:將免殺的SYLK惡意文檔做為附件對(duì)目標(biāo)用戶進(jìn)行釣魚(yú)攻擊,誘導(dǎo)用戶執(zhí)行進(jìn)而控制用戶的計(jì)算機(jī)系統(tǒng);利用水坑攻擊,將SYLK惡意文檔替換用戶信任站點(diǎn)的下載鏈接,等待用戶主動(dòng)下載執(zhí)行。
整個(gè)樣本的攻擊流程過(guò)程如下所示。
在這起攻擊事件中,有兩點(diǎn)值的關(guān)注:
1. 大多數(shù)的安全廠商在自己殺毒引擎中都有對(duì)doc、xls等常見(jiàn)文檔的格式解析功能,但對(duì)于不常見(jiàn)的文檔結(jié)構(gòu)類(lèi)型(如本例中的SYLK文檔結(jié)構(gòu))重視不夠,沒(méi)有實(shí)現(xiàn)對(duì)這類(lèi)文檔的解析功能模塊,因此導(dǎo)致這類(lèi)文檔中的惡意代碼無(wú)法殺毒引擎正確識(shí)別查殺。
2. 從樣本編譯時(shí)間戳來(lái)看,loader樣本于2018年3月22日完成,Orcus遠(yuǎn)控木馬樣本于2018年3月24日生成,該樣本時(shí)間較新,黑客們最近已經(jīng)嘗試出這類(lèi)的免殺手段,以后使用該手段的惡意樣本的可能會(huì)出現(xiàn)一定程度的增長(zhǎng)。
因此,本文將對(duì)該類(lèi)樣本進(jìn)行詳細(xì)分析,供安全社區(qū)共享,共同提高安全能力,保護(hù)個(gè)人、企業(yè)、機(jī)關(guān)等用戶的計(jì)算機(jī)安全。
原始樣本文件名為K*****.slk,.slk后綴名為SYLK文件后綴。符號(hào)鏈接(SYLK)是Microsoft的一種文件格式,通常用于在應(yīng)用程序(特別是電子表格)之間交換數(shù)據(jù)。SYLK文件的后綴名為.slk。該格式的文件由可顯示的ANSI字符組成,即使創(chuàng)建SYLK文件的應(yīng)用程序支持UNICODE,SYLK 文件在系統(tǒng)中也會(huì)以ANSI編碼。
使用010edit打開(kāi)文件后顯示如下:
第一行的ID;PWXL;N;E申明了文檔格式,P開(kāi)頭的行表示了不同的樣式,在安裝office的情況下,SYLK文件默認(rèn)由EXCEL程序打開(kāi)。
默認(rèn)打開(kāi)時(shí),EXCEL會(huì)彈出下面的安全提示,如果用戶此時(shí)點(diǎn)擊禁用,還可免受攻擊威脅。
當(dāng)用戶點(diǎn)擊了啟用后,OFFICE軟件會(huì)提示”遠(yuǎn)程數(shù)據(jù)不可訪問(wèn)”對(duì)話框,同時(shí)給出了只有信任該數(shù)據(jù)時(shí)再點(diǎn)擊是按鈕,防止合法應(yīng)用程序被病毒惡意利用。
再次點(diǎn)擊是按鈕后,惡意的powershell就會(huì)得以執(zhí)行,此后,再無(wú)需用戶的交互,機(jī)器就已經(jīng)被黑客完全控制。
運(yùn)行時(shí)的進(jìn)程樹(shù)如下:
觀察原始的SYLK文件,可以在153行的內(nèi)容看到惡意代碼:
153行代碼的含義為在單元格中使用公式加載DDE,使用“\..\..\..\Windows\System32\cmd.exe”加載powershell執(zhí)行。執(zhí)行的命令為:
對(duì)下載回來(lái)的Formules.exe進(jìn)行分析
Formules.exe充當(dāng)了混淆殼的功能。Formules.exe使用.NET編寫(xiě),在dnspy中顯示代碼經(jīng)過(guò)混淆,混淆的效果如下:
Formules.exe資源中保存著114張圖片,F(xiàn)ormules.exe最終會(huì)從這些圖片中解碼出PE數(shù)據(jù)。資源截圖如下:
Formules.exe將自身代碼在內(nèi)存中解碼出來(lái)后,dump出來(lái)后可以看到還原后的代碼。從還原后的代碼可以看到,在Main函數(shù)中調(diào)用Resources解碼資源后,調(diào)用Form1執(zhí)行,在Form1的初始化中直接調(diào)用Form1的close方法,在Form1的close方法中才真正的加載解碼出來(lái)的Multi.exe執(zhí)行,Multi.exe本身為一個(gè)loaderPe程序,用來(lái)加載最終的遠(yuǎn)控木馬。
上面描述的過(guò)程從代碼層面看,Main函數(shù)調(diào)用Application.Run(new Form1());
在Form1的Load方法中調(diào)用了Resources.Class9.smethod_1,而Resources.Class9.smethod_1又會(huì)調(diào)用Form1的close方法。
在Form1的close方法,使用Invoke調(diào)用解碼出來(lái)的Multi.exe(loader程序)的入口點(diǎn)執(zhí)行(此處我Invoke函數(shù)與EntryPoint函數(shù)經(jīng)過(guò)人工的重命名)。
Form1.smethod_1函數(shù)的功能就是解碼出Multi.exe,代碼截圖如下:
Multi.exe編譯時(shí)間戳為2018年03月22日,該樣本最近才開(kāi)始構(gòu)建完成。
Multi.exe的功能就是PELoader, Multi.exe通過(guò)AES解碼出加載PE所需的函數(shù)名稱(chēng)進(jìn)而得到函數(shù)地址,使用CreateProcess傳遞CREATE_SUSPENDED參數(shù)創(chuàng)建處于掛起狀態(tài)的進(jìn)程后,GetThreadContext來(lái)獲取被掛起進(jìn)程的CONTEXT,最終使用SetThreadContext來(lái)設(shè)置線程的上下文,將EIP設(shè)置成要加載的PE的入口處,ResumeThread恢復(fù)線程執(zhí)行,實(shí)現(xiàn)加載PE的功能。
Multi.exe使用AES算法解密出配置字符串:
對(duì)應(yīng)的配置信息如下表
選項(xiàng) | 值 |
---|---|
Install | TRUE |
Install.Folder | 0x0000000B |
Install.Key | Software\Microsoft\Windows\CurrentVersion\RunOnce |
Install.ValueName | pitsuvxlikk |
Install.FileName | printing.exe |
Install.StartupFolder | TRUE |
Notify | FALSE |
Options.Compress | FALSE |
Options.CheckVM | FALSE |
Options.CheckSandbox | FALSEs |
Options.DelayTime | 0x00000019 |
Options.MonitorPackage | FALSE |
Options.MonitorRegistry | FALSE |
Options.MonitorSelf | FALSE |
Options.HostIndex | 0x00000000 |
Files.Main | Orcus.exe文件的內(nèi)容 |
Files.Count | 0 |
Options.Melt | FALSE |
MeltFileName | Name of the melted file |
其中最關(guān)鍵的配置項(xiàng)為Files.Main,其表明要在內(nèi)存中加載的PE文件。
Multi.exe加載PE時(shí),獲取函數(shù)地址的代碼如下:
向傀儡進(jìn)程寫(xiě)入PE文件的代碼
此處的Files.Main指定的PE文件為Orcus遠(yuǎn)控木馬程序,將Orcus保存出來(lái)留做下面分析。
Orcus.exe文件的編譯時(shí)間戳顯示為2018年03月24日,比Multi.exe的編譯時(shí)間(2018.03.22)晚兩天。
Orcus為商業(yè)遠(yuǎn)控軟件,售價(jià)為40美元,該遠(yuǎn)控軟件自2016年就開(kāi)始出現(xiàn),此后一直持續(xù)的更新維護(hù),官方最新版本為1.9.1,除了遠(yuǎn)控木馬的基本功能外,Orcus最大的產(chǎn)品亮點(diǎn)在于,它能夠加載由用戶開(kāi)發(fā)的自定義插件和攻擊者可以在遠(yuǎn)程計(jì)算機(jī)上實(shí)時(shí)執(zhí)行C#和VB.net代碼。
Orcus目前官方的插件庫(kù)中包含5個(gè)插件,其中包含增加文件體積防止云查殺的功能插件,使用系統(tǒng)關(guān)鍵進(jìn)程保護(hù),進(jìn)程被殺后強(qiáng)制藍(lán)屏的插件等。
對(duì)于官方的Orcus遠(yuǎn)控軟件,在遠(yuǎn)控被控端運(yùn)行時(shí),會(huì)有如下的運(yùn)行風(fēng)險(xiǎn)提示,官網(wǎng)的Orcus也一在重審,軟件為遠(yuǎn)程管理類(lèi)軟件,并不是遠(yuǎn)控木馬。但在騰訊反病毒實(shí)驗(yàn)室檢測(cè)到的Orcus做為木馬使用的情況下,都不會(huì)出現(xiàn)下面的對(duì)話框。
遠(yuǎn)控軟件的遠(yuǎn)程進(jìn)程管理、文件管理、注冊(cè)表管理、服務(wù)管理、網(wǎng)絡(luò)連接管理等基本功能代碼截圖如下:
常規(guī)的遠(yuǎn)控木馬功能不再贅述,本文將結(jié)合作者理解對(duì)該遠(yuǎn)控軟件比較特色的功能簡(jiǎn)單介紹。
惡作劇功能
軟件集成了惡作劇功能,可以在受害機(jī)器上播放蚊子聲音,龍卷風(fēng)聲音,鬼叫聲等。
世界地圖功能
軟件集成了世界地圖功能,可以在地圖上顯示各受害者所在的地理位置。
同時(shí),統(tǒng)計(jì)功能也以圖表的形式給出指定時(shí)間內(nèi)的上線情況統(tǒng)計(jì)。
遠(yuǎn)程源代碼直接執(zhí)行功能
軟件具有遠(yuǎn)程源代碼直接執(zhí)行的功能,目前支持支持Visual C#、VB NET、 Batch腳本的直接執(zhí)行。如下圖,將直接在受害機(jī)器上執(zhí)行選中的C#代碼。
動(dòng)態(tài)調(diào)試得到遠(yuǎn)控木馬的上線地址為:d***r.com:9**0。調(diào)試截圖如下:
DDE技術(shù)從開(kāi)始提出,騰訊反病毒實(shí)驗(yàn)室就一直持續(xù)跟進(jìn),先后在freebuf發(fā)布《利用DDE釣魚(yú)文檔傳播勒索病毒事件分析》,《Office DDEAUTO技術(shù)分析報(bào)告》,《無(wú)需開(kāi)啟宏即可滲透:在Office文檔中利用DDE執(zhí)行命令》等多篇文章對(duì)該類(lèi)技術(shù)進(jìn)行分析,此次的攻擊樣本同樣使用DDE技術(shù),但卻與以往的利用方式存在少許差異:以往的DDE技術(shù)利用在.doc文檔和.xls文檔中,而此次的DDE技術(shù)利用在.slk文檔中。而正是這一簡(jiǎn)單的改變就導(dǎo)致了諸多殺軟的集體失聲。
對(duì)于上文中提到的攻擊樣本,給出下面的安全建議:
一. 提高用戶網(wǎng)絡(luò)安全意識(shí),對(duì)上面的樣本,如果用戶能夠在兩次確認(rèn)的過(guò)程中,及時(shí)的選擇不允許執(zhí)行,即可以阻斷攻擊過(guò)程。,不隨意打開(kāi)陌生人發(fā)送的文件可以最快的阻斷攻擊。
二. 建議用戶盡快排查自身網(wǎng)絡(luò)內(nèi)是否有可疑C&C地址的訪問(wèn),一旦發(fā)現(xiàn)有終端主機(jī)對(duì)上述遠(yuǎn)控C&C地址發(fā)起請(qǐng)求連接則極有可能已經(jīng)淪陷。
三. 建議用戶安裝騰訊電腦管家等終端安全產(chǎn)品。保持終端安全產(chǎn)品的及時(shí)更新從而達(dá)到有效防護(hù)。
四. 可以在企業(yè)邊界部署御界高級(jí)威脅檢測(cè)系統(tǒng),御界高級(jí)威脅檢測(cè)系統(tǒng)已經(jīng)能夠?qū)υ撏{進(jìn)行阻斷與報(bào)警。
關(guān)于基于SYLK文件傳播Orcus遠(yuǎn)控木馬樣本的示例分析就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。