作者:K&Nan@知道創宇404高級威脅情報團隊
英文版:http://www.bjnorthway.com/3033/

1. 攻擊活動綜述

近期知道創宇404 高級威脅情報團隊的研究報告《韓美大規模聯合軍演挑釁升級?朝方 APT 組織近期攻擊活動分析》中分享了APT37 & Konni組織近期針對韓方的攻擊活動,其中Konni組織所使用的新技戰術、程序(TTP)更偏向于針對韓方的慣用TTP,我們在狩獵過程也發現Konni在針對非韓方地區所使用的TTP有所調整。

眾所周知,朝方APT組織早已將數字貨幣行業作為攻擊目標,但是朝方針對加密貨幣/金融相關行業的攻擊往往由Lazarus組織操作,本次的攻擊活動也是較為少見的發現朝方除Lazarus組織外還有其余組織針對加密貨幣行業進行攻擊活動。

同時我們發現本次攻擊活動中Konni使用近期Group-IB披露的WinRAR漏洞(CVE-2023-38831),這也是首次發現有APT組織利用此漏洞進行攻擊,相關分析描述見下文。

本次所捕獲Konni組織的攻擊目標與以往存在極大區別,根據誘導名稱來看,攻擊目標指向數字貨幣行業,推測有可能是Konni組織開辟新攻擊方向,本次捕獲到的樣本名稱為“wallet_Screenshot_2023_09_06_Qbao_Network.zip”,名稱中所提及的Qbao Network介紹如下:

“QbaoNetwork是一款智能加密錢包。旨在打造區塊鏈生態平臺,打造區塊鏈世界的入口。集跨鏈數字貨幣錢包、支付結算、代幣兌換、社交網絡、新聞行情、DAPP Store等多功能于一體。QbaoNetwork服務全球數字貨幣用戶,為用戶提供跨鏈、去中心化、安全、易用的數字資產平臺。QbaoNetwork是一款滿足人們在數字貨幣支付結算、數字資產管理、數字資產交易、在線消費、身份認證、新聞、社交等方面需求的一站式應用。為全球用戶提供數字經濟和數字生活的入口。” --來源crunchbase.com

Qbao Network公司介紹

Qbao Network公司介紹

2. 攻擊鏈

攻擊執行鏈條

3. 捕獲樣本分析

本次捕獲到的樣本名為wallet_Screenshot_2023_09_06_Qbao_Network.rar,該樣本利用最新披露的Winrar漏洞(CVE-2023-38831)執行惡意載荷,當壓縮文件中的html文件被受害者點擊后,精心構造的同名目錄下的同名惡意載荷將被執行起來:

關于CVE-2023-38831漏洞的簡要分析描述

當受害者嘗試打開存檔文件中的Screenshot_2023_09_06_Qbao_Network.html"時,Winrar會比較存檔中的所有文件以查找與"Screenshot_2023_09_06_Qbao_Network.html"同名的文件/目錄,根據Winrar的處理情況來看,如果存在與"Screenshot_2023_09_06_Qbao_Network.html"同名的目錄Winrar則會繼續檢查"Screenshot_2023_09_06_Qbao_Network.html /"目錄下的文件。

如果"Screenshot_2023_09_06_Qbao_Network.html/" 目錄下同樣存在文件名為"Screenshot_2023_09_06_Qbao_Network.html "的文件則將"Screenshot_2023_09_06_Qbao_Network.html/" 目錄下"Screenshot_2023_09_06_Qbao_Network.html"文件放入提取列表中。

在實際構造過程中由于Winrar存在一個文件名預處理操作,用于檢查文件名并刪除一些 Windows 不接受的特殊字符。 “Screenshot_2023_09_06_Qbao_Network.html .exe”文件名中“html”與“.exe”中間存在特意構造的空格,在進行路徑分割時文件名解析為“Screenshot_2023_09_06_Qbao_Network.html”,因此把"Screenshot_2023_09_06_Qbao_Network.html .exe"文件放入提取列表中。最終導致壓縮包中的Screenshot_2023_09_06_Qbao_Network.html .exe運行:

Screenshot_2023_09_06_Qbao_Network.html .exe運行后首先會創建線程,線程中利用GetSystemWow64DirectoryW檢測當前系統是否為64位系統,若是則將1拼接到/info.php?user_id=8596&type=后,若不是則拼接0.

從e9f0dkd.c1[.]biz服務端下載后續載荷:

下載載荷后,將硬編碼的字符串解base64后寫入%temp%\temp.bat并運行。

解碼后的字符串

temp.bat開始運行下載的載荷check.bat:

下載載荷分析:

從服務端下載的數據被存儲為%temp%[random].tmp,并解壓縮。壓縮文件目錄結構如下:

各文件功能分析如下

check.bat

  • 判斷是否存在遠程連接session,存在則直接運行trap.bat。

  • 若不存在則判斷當前系統是否為Win10,若是,設置Num等于4,反之等于1,這兩個參數代表了后續采用不同的UAC繞過方式。

  • 判斷是否在64位系統下,若是則執行wpnprv64.dll,否則執行wpnprv32.dll。

  • 痕跡刪除。

wpnprv64.dll(wpnprv32.dll代碼邏輯一致):

“IIIIIIII”導出函數中包含主要惡意代碼,根據傳入的參數選擇不同的Bypass UAC方式:

若傳入的參數1為1時,則利用白名單程序wusa.exe + 模擬token登錄的方式運行trap.bat:

當傳入的參數1為4時,則利用AppInfo RPC以及PPID欺騙技術進行Bypass UAC,最終運行trap.bat:

trap.bat:

  • 根據當前的路徑是否為系統目錄判斷是否需要文件復制。

  • 判斷當前系統是否為64位系統,是則將rdssvc4.png復制到system32目錄下命名為rdssvc.dll,否則將rdssvc2.png復制到system32目錄下命名為rdssvc.dll,兩者都會將rdssvc.dat復制到system32目錄下。

  • 創建名為“Remote Database Service Update”的服務,服務指向的服務程序為前面復制而成的rdssvc.dll。

  • 啟動服務,rdssvc.dll被執行起來。

  • 刪除痕跡。

rdssvc.dll(Konni RAT,以x64程序為例):

在rdssvc.dll的ServiceMain導出函數中,首先會解密API:

創建HKCU\Console注冊表項,并將65001寫入CodePage中:

讀取HKCU\Console\MaxElapsed下的值作為連接測試的等待時間:

讀取rdssvc.dat文件,并從中解密出C2地址:

執行“cmd /c systeminfo”和“cmd /c tasklist”,并將數據保存到%temp%目錄下:

將獲取的數據使用makecab進行打包:

將數據aes加密后上傳到服務端,服務端返回“success!”則表示上傳成功:

從C2獲取數據:

獲取的數據使用“#”分割,分割的數據解base64后再進行aes解密:

最終根據返回數據中的指令可以實現如下功能:

指令 參數1 參數2 功能
/stext 以SYSTEM權限運行程序
/user 以USER權限運行程序
/user /stext或> 以USER權限運行程序,并保存結果
cmd pull /f 將文件復制到temp目錄,然后上傳
cmd pull 文件上傳
cmd > 遠程shell,結果保存到temp目錄
cmd 遠程shell
cmd chmod 保存指定文件
cmd put 文件移動

4. IOC

  • 1536e9bf086982c072c2cba7d42b0a62

  • e9f0dkd.c1[.]biz

  • ske9dhn.c1[.]biz


Paper 本文由 Seebug Paper 發布,如需轉載請注明來源。本文地址:http://www.bjnorthway.com/3032/