概述

近日,奇安信威脅情報中心及奇安信網絡安全部通過日常監測發現Navicat.exe仿冒惡意安裝包樣本,通過天擎大網數據發現多個該樣本下載鏈接,該樣本下載鏈接的主頁偽造了netsarang的官網,并且后續根據惡意樣本證書溯源拓線多個仿冒運維工具,如xshell、LNMP、寶塔Linux面板等。根據奇安信天擎大網數據該惡意樣本安裝包訪問數據統計表明該樣本已存在主機被控制情況,于是我們第一時間針對該攻擊事件進行了詳細分析。

上述多個偽造運維工具是國內運營人員和網管用戶日常使用頻次較高的軟件工具,攻擊者利用該用戶群體需求,搭建偽造的官網站點,誘使下載偽造的運維工具,實現對受害主機遠程控制等竊密行為。

事件詳情

國內各行各業軟件信息化日益完善,運營人員和網管用戶日常工作會使用便捷的運維工具提升工作效率,從而使得攻擊者有機可乘。

通過奇安信天擎大網數據,我們找到了一個該安裝包的下載來源:hxxps://linhunq.com/zh/navicat/,并在該站點下載了Navicat Premium 16.exe安裝包文件。

      

樣本分析

分析惡意樣本得到攻擊流程如下:

  1. 攻擊者偽造運維工具官網誘導受害者下載捆綁后門的Navicat安裝包;
  2. 安裝包執行安裝之后,釋放植入了遠控后門的Navicat主程序;
  3. 受害者使用Navicat連接數據庫,觸發惡意代碼執行;
  4. Navicat進程從一階段C2(navicat.amdc6766.net)拉取一階段shellcode(3.log),通過線程劫持的方法將shellcode注入系統程序wabmig.exe執行;
  5. 一階段shellcode中通過運行一個DLL Loader,將CcRemote RAT shellcode(二階段shellcode)反射加載運行起來,連接二階段C2服務器(navicat02.amdc6766.net);
  6. 攻擊者通過二階段C2服務器下發控制指令。

確認惡意代碼邏輯觸發條件

樣本安裝目錄有很多文件,但是根據文件的修改日期和簽名的時間戳信息(與當前時間較為接近),初步推測惡意代碼在navicat的主程序中。

在樣本分析過程中,根據奇安信產品設備日志獲取的線索該樣本會注入到系統進程wabmig.exe,動態調試確認了需要進行數據庫的連接操作才能觸發惡意代碼執行。以此可以確定攻擊者篡改了navicat主程序,將惡意代碼放在了數據庫連接的邏輯中。

提取分析一階段shellcode

定位到后門代碼的大致位置之后,分析發現該惡意樣本是通過線程劫持的方法注入惡意代碼(navicat.amdc6766[.]net/3.log)。

動態調試時抓取過程流量包dns解析navicat.amdc6766[.]net數據包,斷點網絡請求API函數,發現下圖網絡請求函數下載navicat.amdc6766[.]net/3.log。

直接訪問遠程地址,可以直接下載shellcode文件:

動態調試確定這段代碼邏輯為:惡意樣本通過VirtualAlloc()申請內存保存InternetReadFile()請求navicat.amdc6766.net/3.log鏈接的shellcode內容,并使用WriteProcessMemory()將之前申請的內存地址作為參數將一階段shellcode寫入新創建wabmig.exe系統進程內存,根據動態調試的內存地址內容與上述下載的3.log文件內容完全一致也能佐證結論。

根據獲取到的shellcode特征,可以判斷是使用的開源工具sRDI生成的shellcode。根據項目(hxxps://github.com/monoxgas/sRDI)的描述,sRDI 允許將DLL文件轉換為位置無關的 shellcode。

找到shellcode中的MZ頭,將這部分dump出來:

提取分析二階段shellcode

分析一階段shellcode,發現了反射加載了二階段shellcode(CcRemote RAT)。

分析shellcode存在解密函數,密鑰為iloveyou,說明二階段shellcode被加密混淆。

根據上述靜態分析結果,動態調試該解密函數獲取二階段shellcode。

將上述解密的二階段shellcode dump下來并進行分析,發現了連接二階段C2(navicat02.amdc6766[.]net)的行為。

分析RAT工具

查看分析二階段C2的shellcode字符串內容,并根據其字符串在github站點搜索,定位到一個開源RAT項目,查看項目代碼與二階段C2的shellcode字符串內容大致相符。

根據項目說明,這是一個基于g0host RAT進行二次開發的項目。

攻擊者使用了該項目g0host RAT的代碼開發了惡意DLL(二階段shellcode),寫了一個DLL Loader反射加載該惡意DLL,又使用sRDI免殺項目包裝DLL Loader來生成一階段shellcode,最后篡改Navicat主程序植入一階段shellcode執行邏輯。

威脅情報關聯分析

與本次攻擊事件相關的IOCs,威脅情報信息較少,目前奇安信威脅情報中心平臺已將相關IOCs標記為惡意。C2域名是近期新注冊的,且互聯網上也未發現相似的投毒事件,是最近剛活躍的灰黑產行動。

溯源分析

安裝包下載鏈接溯源

從天擎大網數據來看,該安裝包第一次出現的時間是2023年1月,爆發高峰期在2023年3月。且存在該安裝包的目錄均為互聯網下載目錄,說明主要通過網站下載傳播。

根據惡意樣本下載站點分析,該站點偽造了netsarang的官網。

通過里面的部分鏈接(例如技術支持)可以跳轉到真正的官網,迷惑用戶:

該網站上的其他運維工具點擊下載,均會走正常的申請試用流程,只有navicat可以直接下載。而且網站有多種語言可切換,但navicat只有中文網頁可訪問,比如英文版唯獨navicat界面會顯示404。

訪問一個其他的來源,也是偽造的netsarang的官網,一樣的套路:

由于后門使用的開源RAT是中國人編寫,C2均為阿里云主機,并且navicat只有中文網頁可訪問,可以判斷本次事件是針對國內數據庫運維工具的投毒事件。

惡意樣本證書簽名溯源

一般來說,只有開發軟件的公司才會申請證書簽名,而“Zhiniao (Chengdu) Human Resources Service Co.Ltd”。該簽名對應的“知鳥(成都)人力資源服務有限公司”并無自己的軟件產品。使用該證書簽名搜索奇安信天擎大網樣本數據,發現該證書簽名涉及的軟件都是經二次打包的各種常見軟件安裝包且數量較多。

該簽名最早在2022年10月出現,在2023年2-3月出現了高峰:

后續根據本文惡意樣本Navicat安裝包證書簽名進一步發現了多個仿冒運維工具的站點。

www.navicatcn[.]net

www.biosoft[.]cc

cnxshell[.]com

www.bixwinner[.]cc

xiandazm[.]com

cnlnmp[.]com

highthost[.]cc

cqdtwxx[.]com

lightsoft[.]cc

lukesoft[.]cc