VOIDMAW:一种可用于绕过内存扫描器的新技术

随着恶意软件检测技术的发展,攻击者用来逃避检测的方法也在不断改进。

VOIDMAW 是一种创新的内存扫描绕过技术,可以有效地隐藏有问题的代码,不让防病毒软件发现。

它支持多线程负载,并与所有命令和控制 (C2) 信标兼容。此外,VOIDMAW 可以运行任何非 .NET 可执行文件,使其成为攻击者手中的强大工具。

VOIDMAW 采用两个程序来实现其目标:

1. Dismantle

这是 VOIDMAW 过程的第一部分。该程序将有效载荷(例如Cobalt Strike信标或转换为 shellcode 的可执行文件(如Mimikatz))读入内存并开始记录其行为。

它记录执行的每条唯一指令及其在内存中的偏移量。这些数据稍后将用于生成头文件,这对于通过Voidmaw程序执行有效载荷至关重要。

Dismantle中的步骤如下:

PAGE_GUARD 保护:程序在保存有效载荷的内存页面上设置 PAGE_GUARD 保护。每当尝试在该页面上执行代码时,此保护都会触发异常。

向量异常处理程序 (VEH):安装 VEH 是为了处理 PAGE_GUARD 引发的异常。VEH 有两个主要职责:

STATUS_GUARD_PAGE_VIOLATION 处理:捕获已执行的指令,并将其保存在映射结构中,同时保持 PAGE_GUARD 保护。

EXCEPTION_SINGLE_STEP 处理:这会在记录每条指令后恢复 PAGE_GUARD,确保后续指令触发新的异常,从而允许连续的指令记录。

一旦记录了所有指令,就会使用INT3指令(软件断点)对其进行加密和屏蔽,以隐藏执行的代码。此过程的输出是一个头文件,其中包括:

1. 被屏蔽的原始有效载荷。

2. 用于解密指令的 XOR 加密密钥。

3. 包含加密指令及其偏移量的无序映射。

4. InitMap函数用于初始化第二个程序Voidmaw中的地图。

2.VOIDMAW

一旦有效载荷被 Dismantle 处理,它就可以被Voidmaw执行。该程序使用 Dismantle 生成的头文件动态解密并执行有效载荷,同时保持一定程度的隐蔽性,使内存扫描仪难以检测到。

执行过程如下:

InitMap函数:Voidmaw首先调用InitMap函数初始化加密指令的地图。

内存分配:创建一个内存区域,并将屏蔽的有效载荷写入该空间。

向量异常处理程序 (VEH):Voidmaw 安装了一个新的 VEH 来处理EXCEPTION_BREAKPOINT,只要程序在执行过程中遇到INT3指令就会触发该处理程序。

当 VEH 遇到INT3时,它会检查异常的偏移量并在无序映射中查找它。然后解密加密的汇编指令,在指令指针处恢复并执行。执行后,该指令再次用INT3屏蔽,每次只留下一条可见的汇编指令。

此过程对每个线程重复,使 Voidmaw 能够无缝处理多线程有效载荷。

这种技术可确保在任何给定时间内只有一条指令可见,这使得内存扫描器难以捕获整个恶意代码序列。

VOIDMAW 是一种用于逃避内存扫描的高级技术,它标志着恶意软件执行领域的新前沿。

它能够屏蔽执行的指令并处理多线程负载,使其成为绕过传统防病毒防御的绝佳工具。

由于 VOIDMAW 是开源的,可在GitHub上获取,因此其技术可供广泛的用户使用,既可用于研究,也可用于恶意目的。

VOIDMAW 代表了规避技术的重大进步。它能够绕过传统的内存扫描器,这引起了安全专业人员的担忧。

组织需要意识到这些先进的技术,并采取行为分析和异常检测等主动措施来应对这些不断演变的威胁。

https://github.com/vxCrypt0r/Voidmaw

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

网络研究观

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值