【網絡安全】Qt免殺樣本分析

初步研判

SHA256:9090807bfc569bc8dd42941841e296745e8eb18b208942b3c826b42b97ea67ff

我們可以看到引擎0檢出,是個免殺樣本,不過通過微步云沙箱的行為分析,已經被判為惡意

行為分析

進程行為

可以看到demo顯示調用了winver獲取了主機的基本信息,然后調起taskmgr,以其身份再次調用自己,可能是一個提權行為

文件行為

沒有文件被寫入,但是原文件運行完就沒了

注冊表行為

發現多了一個正常的文件的計劃任務,啟動權限還是SYSTEM,啟動時間每兩小時一次

文件還帶dll,一看就是白加黑

網絡行為

未檢出

詳細分析

主程序邏輯

主文件是一個pe文件

直接對這個qt樣本進行動態調試十分困難,不僅僅是因為采用了Qt框架,還有就是采用PoolParty timer模塊,利用內置計時器線程池任務執行shellcode,所以想要一步一步走到shellcode是非常困難的,后續我們使用api斷點的方式進行分析

poolparty項目地址

我們在virtualalloc下斷就可以發現程序在內存中載入了一個pe文件

這個時候查看調用堆棧就會發現被破壞了,不知道主文件的邏輯哪里調用的shellcode,但是我么可以發現shellcode段的調用還是能看到的,這個時候我們就需要回溯一下了,第一次進入shellcode是什么時候,大概率也是第一個使用virtuallalloc的位置

我們回溯一下,可以發現,第一次載入了一段shellcode,我們把它單獨拿出

直接運行shellcode會連接如下ip,不過根據X情報社區的情報,不像是惡意的c2,暫時保留

apihash的味道撲面而來

我們在主程序動調查看堆棧可以看到調用堆棧

shellcode邏輯如圖所示

第一段shellcode中創建內存對一段數據的魔改RC4解密,key為數字12345

這里出來的就是上方的dll了

后續shellcode中進行內存對齊并跳轉入口段做初始化

然后進入第二個函數

后續找到run函數

最后調用執行dll中的run函數

dll邏輯

邏輯如圖所示,獲取了主程序的名稱,如果不是winlogon就進進入if內,winlogon是用于登錄相關的操作的,如果文件名包含winlogon.exe就進入sub_18003c10,這里猜測內部應該是用于常規的權限維持,如果不包含就相當于是初始化,如果是管理員權限就進入sub_180004240不是就進入sub_180001000。

非管理員下運行

因為sub_180001000比較短,所以直接跳轉看看這個

首先是拼接出了如下路徑

C:\windows\system32\winver.exe

然后湊出了類似UUID的值,貌似是利用RPC通信去做提權操作

用RPCview可以看到是這樣一個進程

后續又調用taskmgr.exe

利用taskmgr.exe身份使用CreateProcessAsUserW創建創建子線程,猜測是用于提權的

這樣就會有一個是管理員權限的程序,這時候我們回到dll調用位置,以admin身份進入

管理員下運行

首先是賦值了兩端code,一段是當前這段shellcode,另一段是RC4未解密的dll數據

緊接著有復制了一段數據,看著有點像之前RC4解密前的dll

然后遍歷進程查看是否有winlogon.exe,去獲取他的進程號

然后把shellcode寫入進程

利用ALPC完成權限維持

這個時候我們就能判斷出該進程把shellcode和加密的dll全部寫入了winlogon.exe中,然后讓shellcode在winlogon中執行,實現行為隱藏。

這個時候我們再回到最初的位置

winlogon.exe內運行

進入后又是一段魔改RC4的解密,解密出的內容居然是一個IP?

非常可疑,這個ip曾經被用于銀狐

之后打算創建如下exe并寫入數據

C:\Program Files\Common Files\System\Overwolf.exe

貌似是個白文件,可能是白加黑把,我們繼續往下看看

然后在同目錄下創建"teamspeak_control.dll"和teamspeak_control.bin文件

然后起了一個線程執行shellcode

我們dump出來單獨看看,發現就和上面一樣的shellcode,執行dll中的run函數,這個放放

流程之后解密獲取了計劃任務的COM組件CLSID和riid并初始化

然后就是利用COM執行命令了

連接并獲取\Microsoft\Windows目錄

?Connect@?QITaskService@@TaskServiceImpl@@UEAAJUtagVARIANT@@000@Z

?GetFolder@?QITaskService@@TaskServiceImpl@@UEAAJPEAGPEAPEAUITaskFolder@@@Z

...

結果就是給白加黑創建了計劃任務

最后刪除自己

至此,關于Qt部分的邏輯就結束了

白加黑分析

經過簡單diff,發現他把dll中所有的導出函數內容都設置為了同一個,所以只要隨便調用一個就會觸發黑行為。。

但是直接在函數下斷點無法定位到,我們發現在運行代碼后文件被刪除了,所以我們可以對文件刪除也就是DeleteFileW進行下斷,然后回溯找源頭

好像有點似曾相識,和我們之前調用dll一樣

我們像之前一樣在virtualAlloc位置下斷,發現堆棧上的并非是導出函數,而是dllentry中創建的線程,不過這都不重要

把同目錄下的同名bin文件讀取進來了

然后又是解密shellcode并執行dll中的邏輯了,這里就不過多贅述了

至此,邏輯基本成型

邏輯概述

主程序(Qt)利用poolparty timer創建并調用shellcode,shellcode調用dll run函數,run函數給dll提權重新加載,提權后把shellcode注入winlogon.exe,在winlogon.exe中生成白加黑文件并為其創建計劃任務(每兩小時執行一次),白加黑文件重復前面所有,不過在run時就不需要提權了,因為計劃任務是以SYSTEM身份運行的

C2

18.166.104.207

在x情報社區中查詢c2可以找到很多同源的樣本,而且非常新鮮

木馬的類型也被檢出,能夠幫助我們在初步研判時建立起一個基本框架

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/83343.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/83343.shtml
英文地址,請注明出處:http://en.pswp.cn/web/83343.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

window 顯示驅動開發-如何查詢視頻處理功能(六)

D3DDDICAPS_FILTERPROPERTYRANGE請求類型 UMD 返回指向 DXVADDI_VALUERANGE 結構的指針,該結構包含傳遞D3DDDICAPS_FILTERPROPERTYRANGE請求類型時特定視頻流上特定篩選器設置允許的值范圍。 Direct3D 運行時在D3DDDIARG_GETCAPS的 pInfo 成員指向的變量中為特定視…

Oracle線上故障問題解決

----重啟電腦找不到sid Listener refused the connection with the following error: ORA-12505, TNS:listener does not currently know of SID given in connect descriptor Could not open connection sqlplus "/as sysdba" SQL> shutdown immediate 數據庫…

語音信號處理三十——高效多相抽取器(Polyphase+Noble)

文章目錄 前言一、Polyphase 多項分解1.定義2.拆分公式3.推導過程1)按模 M M M拆分求和項2)提取因子 4.總結 二、Noble恒等式1. 定義2.Noble恒等式表達方式1)抽取系統的 Noble 恒等式2)插值系統的 Noble 恒等式 2.Nodble恒等式推導…

廣告推薦系統中模型訓練中模型的結構信息、Dense數據、Sparse數據

下面結合廣告推薦系統常見的深度學習模型(比如 Wide & Deep、DeepFM、Two-Tower 等),介紹一下“模型的結構信息”、Dense 數據和 Sparse 數據在訓練過程中的角色及處理方式。 模型結構信息 輸入層(Input Layer) ? Sparse 輸入:各類離散高維特征(用戶 ID、廣告 ID、…

安全生產管理是什么?安全生產管理主要管什么?

安全生產管理是什么?安全生產管理主要管什么? 不管是制造業、建筑業,還是倉儲、物流、化工等等,一聊到“安全事故”,大家腦子里最先冒出來的兩個詞,肯定就是: 人的不安全行為物的不安全狀態 …

SecureRandom.getInstanceStrong() 與虛擬機的愛恨情仇

問題描述 使用Ruoyi-cloud 二開,將服務部署到虛擬機上后,準備登錄,發現驗證碼一致加載不出來,接口請求超時! 解決步驟 telnet 虛擬機ipport 發現可以通.curl 接口,發現一致不返回,超時了./code 接口超時&am…

DEM 地形分析與水文建模:基于 ArcGIS 的流域特征提取

技術點目錄 一、 GIS理論及ArcGIS認識二、ArcGIS數據管理與轉換三、ArcGIS地圖制作與發布四、ArcGIS數據制備與編輯五、ArcGIS矢量空間分析及應用六、ArcGIS柵格空間分析及應用七、ArcGIS空間插值及應用八、DEM數據與GIS三維分析九、ArcGIS高級建模及應用十、綜合講解了解更多 …

芯伯樂XBLW GT712選型及應用設計指南

前言 在電子工程領域,精準的電流測量對于眾多電路設計與系統監控至關重要。芯伯樂推出的XBLW GT712電流傳感器以其獨特的優勢,成為工程師在諸多應用中的首選工具。本文將深入剖析XBLW GT712的工作原理、性能特點以及應用要點,為工程師提供詳…

MySQL查看連接情況

說明:本文介紹如何查看MySQL會話連接情況,方便排查MySQL占用CPU過高或其他問題。 連接數據庫 首先,使用命令行連接到MySQL數據庫 mysql -u[用戶名] -p[密碼] -h[主機IP] -P[端口號]如果MySQL就在本機上,那么如下即可 mysql -u…

圖文教程——Deepseek最強平替工具免費申請教程——國內edu郵箱可用

親測有效!只需 4 步即可免費體驗最新最強的 AI 助手! 最強AI助手 This account isn’t eligible for Google AI Pro plan Google AI Pro plan isn’t available in some countries or for people under a certain age. 問題終極解決方案: ht…

java轉PHP開發需要幾步?

PHP基礎入門指南(面向Java開發者) 作為Java開發者,你已經掌握了面向對象編程、變量類型和控制結構等核心概念,這將大大加速你學習PHP的過程。下面我將從語法差異和PHP特性兩個方面,幫助你快速上手PHP開發。 語法差異…

一種使用 PowerToys 的鍵盤管理器工具重新映射按鍵實現在 Windows 上快捷輸入字符的方式

文章目錄 一、問題背景二、安裝 PowerToys三、配置快捷鍵 一、問題背景 在之前的一篇文章中介紹了使用 Java 程序實現快捷鍵輸入字符的方式(https://blog.csdn.net/TeleostNaCl/article/details/148158298),其原理是利用 后臺常駐的 Java 應…

Python環境搭建競賽技術

Python環境搭建競賽技術文章大綱 競賽背景與意義 Python環境搭建競賽旨在考察參賽者對Python開發環境的熟悉程度,包括工具選擇、配置優化和問題解決能力。此類競賽常見于編程教學、企業內訓或技術社區活動,強調實踐性和效率。 競賽核心考察點 環境隔…

Python爬蟲實戰:研究MarkupSafe庫相關技術

1. 引言 在當今信息爆炸的時代,Web 數據爬取與分析已成為獲取有價值信息的重要手段。Python 憑借其豐富的庫生態(如 requests、BeautifulSoup),成為 Web 爬蟲開發的首選語言。然而,爬取的外部數據往往存在安全隱患,特別是當這些數據被用于動態生成 HTML 頁面時,可能導致…

Java-43 深入淺出 Nginx - 基本配置方式 nginx.conf Events塊 HTTP塊 反向代理 負載均衡

點一下關注吧!!!非常感謝!!持續更新!!! 🚀 AI篇持續更新中!(長期更新) 目前2025年06月05日更新到: AI煉丹日志-28 - Aud…

適配器模式深度解析:Java設計模式實戰指南與接口兼容性解決方案

適配器模式深度解析:Java設計模式實戰指南與接口兼容性解決方案 🌟 嗨,我是IRpickstars! 🌌 總有一行代碼,能點亮萬千星辰。 🔍 在技術的宇宙中,我愿做永不停歇的探索者。 ? 用代碼…

類復制.省略 class.copy.elision

class類 復制/移動省略class.copy.elision 類復制省略 (copy elision) 當滿足特定條件時,即使所選對象的構造函數和/或析構函數有副作用,實現也被允許省略從相同類型(忽略 cv 限定符)的源對象創建類對象。 在這種情況下&#…

goreplay

1.github地址 https://github.com/buger/goreplay 2.簡單介紹 GoReplay 是一個開源的網絡監控工具,可以記錄用戶的實時流量并將其用于鏡像、負載測試、監控和詳細分析。 3.出現背景 隨著應用程序的增長,測試它所需的工作量也會呈指數級增長。GoRepl…

TensorZero:開源 LLM 應用優化與可觀測性平臺

TensorZero 是一個開源的 LLM(大語言模型)應用全鏈路優化平臺,聚焦于“數據—評估—優化—實驗”自動化閉環,極大提升 LLM 產品的可觀測性、可優化性和可擴展性。無論你是 GPT 應用開發者,還是需要管理和提升 LLM 服務…

postgreSql數據遷移到openGauss的方案

從postgresql 導出sql 腳本 工具-備份 選擇格式為Plain 得到腳本用vscode 打開并編輯 首先使用查找替換功能 語法適配修改?: 替換不支持的參數如lock_timeout為lockwait_timeout 移除row_security等openGauss不支持的配置 檢查并修改物化視圖的刷新語法 …