2026 年 4 月初,安全社区曝光了一个极具威胁性的 Windows 本地提权(Local Privilege Escalation,LPE)漏洞。该漏洞被命名为 BlueHammer,由安全研究员 Chaotic Eclipse(又名 Nightmare Eclipse)公开发布,目标直指 Microsoft Defender 的签名更新机制。漏洞利用代码已在 GitHub 公开,暂无 CVE 编号和官方补丁。安全研究团队 Cyderes 的 Howler Cell 验证确认,该漏洞可在完全补丁更新的 Windows 10 和 Windows 11 系统上,从普通用户会话在不足一分钟内获得 NT AUTHORITY\SYSTEM 权限。

漏洞概述与攻击前提

BlueHammer 并不是传统的内存破坏或内核漏洞,它利用的是 Windows 系统正常组件之间的交互逻辑缺陷。更准确地说,攻击者将五个完全合法的 Windows 功能串联起来,形成一条攻击链,这些组件包括:Microsoft Defender 签名更新流程、卷影复制服务(Volume Shadow Copy Service,VSS)、云文件同步 API(Cloud Files API)、机会性锁(Opportunistic Locks,OPLOCK)以及 Defender 的内部 RPC 接口。

理解攻击前提至关重要:该漏洞属于本地提权漏洞,攻击者需要首先获得目标机器的低权限会话。这意味着它并非可以直接从互联网发起攻击,而是作为后渗透(post-exploitation)环节的一部分发挥作用。然而,一旦攻击者通过钓鱼、初始恶意软件或窃取的低权限凭证获得立足点,BlueHammer 即可将有限的用户权限提升至系统最高权限,从而完成对整台机器的控制。

一个关键的操作前提是:漏洞触发需要系统处于 Defender 签名更新待执行状态。也就是说,目标机器上必须存在一个 pending 状态的 Defender 定义更新,攻击才能顺利展开。这一条件并非严格限制,因为 Windows Defender 默认每天会自动检查并下载更新,在大多数企业终端上这一条件很容易满足。

攻击链深度拆解

理解 BlueHammer 的攻击链是构建有效检测和缓解措施的基础。整个利用过程可以分解为以下几个关键步骤:

第一步:触发 VSS 创建。 当 Microsoft Defender 执行病毒定义签名更新时,更新流程会调用卷影复制服务创建一个临时的卷影快照(Volume Shadow Copy)。这一步骤本身是正常行为,Windows 借此确保在更新过程中能够回滚到一致状态。问题在于,这个卷影快照中包含了通常被操作系统锁定的注册表 hive 文件,包括 SAM(存储本地账户密码哈希)、SYSTEM(存储启动密钥和加密材料)以及 SECURITY(存储安全策略和凭据信息)。正常情况下,这些文件在运行中的系统上无法被普通进程直接读取,但通过 VSS 快照可以绕过这一限制。

第二步:注册恶意 Cloud Files Provider。 BlueHammer 核心技巧在于将自己注册为一个 Cloud Files 同步根(Sync Root),这与 OneDrive、Dropbox 或 Google Drive 使用的机制完全相同。攻击代码中硬编码的 provider 名称为 "IHATEMICROSOFT",这是一个明确的信息传递。注册完成后,当 Defender 在更新过程中访问特定文件路径时,系统会向这个恶意的同步根发送回调通知。

第三步:OPLOCK 阻塞与窗口打开。 当 Defender 尝试访问被监控的文件时,BlueHammer 获得回调机会并立即对该文件放置机会性锁(OPLOCK)。OPLOCK 是 Windows 文件系统的一种资源锁定机制,当一个进程对文件请求 OPLOCK 时,系统会暂停对该文件的进一步操作,等待请求者完成处理。对于 Defender 而言,这意味着更新流程被暂时冻结。而此时,前面创建的 VSS 快照仍然处于挂载状态,一个短暂但关键的利用窗口由此打开。

第四步:凭据提取与权限提升。 借助 VSS 快照的可读状态,攻击者可以直接读取 SAM、SYSTEM 和 SECURITY 注册表 hive。SYSTEM hive 中包含的启动密钥(boot key)用于解密 SAM hive 中存储的 NTLM 密码哈希。BlueHammer 使用这些信息完成以下操作:首先解密本地管理员账户的密码哈希;随后修改该账户的密码为一个已知值(漏洞代码中硬编码为 $PWNed666!!!WDFAIL);使用修改后的密码通过本地交互式登录获取管理员会话;复制管理员的安全令牌并将其提升至 SYSTEM 级别;创建一个临时的 Windows 服务并通过该服务启动一个以 SYSTEM 权限运行的命令提示符。

第五步:痕迹清理。 完成提权后,攻击者会将本地管理员账户的密码恢复到原始哈希值。整个攻击过程在普通用户的会话中运行,从开始到获得 SYSTEM shell 总耗时不足一分钟,且不会产生崩溃、错误弹窗或任何可见的异常行为。本地账户的密码看起来完全没有改变,这使得事后取证变得极具挑战性。

检测工程方案

既然官方补丁尚待发布,组织当前必须依赖检测和缓解策略来降低风险。以下是基于攻击链各阶段构建的检测规则:

VSS 枚举监控。 攻击链的起点涉及 VSS 快照的创建和访问。安全团队应当监控来自非特权进程的 NtQueryDirectoryObject 调用,特别是针对 HarddiskVolumeShadowCopy 对象的查询。除备份软件和系统维护工具外,任何常规用户进程发起此类操作都应触发告警。Windows 事件日志中 Event ID 703(卷影复制服务操作)也应当纳入监控范围,关注非计划内的快照创建事件。

Cloud Files Sync Root 注册监控。 BlueHammer 需要调用 CfRegisterSyncRoot API 来注册恶意的同步根。安全检测应当告警任何非 OneDrive、Dropbox、Box 或企业授权的云同步工具发起的 Sync Root 注册请求。ETW(Event Tracing for Windows)通道 Microsoft-Windows-CFMP 可以提供此调用的遥测数据。

服务创建与令牌操作监控。 提权阶段涉及使用 CreateService API 创建临时服务以启动 SYSTEM 进程。EDR 规则应当对低权限进程创建 Windows 服务(尤其是以 SYSTEM 权限运行的服务)发出高危告警。同时,应当监控 DuplicateTokenExImpersonateLoggedOnUser 等令牌操作,特别是当这些操作的目标是 SYSTEM 级别令牌时。

本地账户密码变更监控。 攻击过程中会触发两次本地账户密码变更:先修改再恢复。Windows 安全事件 ID 4723(尝试更改密码)和 4724(尝试重置密码)在短时间内对同一账户连续发生时,几乎可以确定是恶意行为。结合进程上下文,如果发起这些事件的进程不是域控制器同步或已知的特权管理工具,应立即触发调查。

Defender 更新目录重解析点监控。 攻击链利用目录重解析点(reparse point)和符号链接来引导 Defender 的文件操作路径。应当监控 Defender 更新相关目录(通常位于 %ProgramData%\Microsoft\Windows Defender\Definition Updates)中是否存在异常的符号链接或挂载点。

以下是一个可用于 Splunk 或类似 SIEM 平台的检测查询示例,用于识别可疑的 VSS 操作:

index=windows sourcetype=Security EventCode=703 
| where Source="VSS" AND like(Message, "%Shadow Copy%") 
| where TimeGenerated > ago(1h) 
| where NOT (User IN ("NT AUTHORITY\\SYSTEM", "NT AUTHORITY\\NETWORK SERVICE"))
| stats count by User, Computer, Message

缓解与 hardening 策略

在等待微软官方补丁期间,组织应当实施多层缓解措施以降低攻击成功率和潜在影响。

最小权限原则。 BlueHammer 需要本地用户会话才能运行,因此应当严格限制终端上的本地管理员账户数量。企业环境应优先使用域账户而非本地账户,并通过组策略限制标准用户创建新账户或修改账户类型的权限。对于必须保留本地管理员权限的场景,应使用特权访问管理(PAM)解决方案实现即时(just-in-time)提升。

限制 VSS 访问。 尽管完全禁用卷影复制会影响备份功能,但可以通过 ACL(访问控制列表)限制非管理员进程对 VSS 服务的访问。具体而言,应当确保标准用户无法直接调用 CreateVssBackup 和相关 API。企业备份软件应当运行在专用的服务账户下,并通过 AppLocker 或 Windows Defender Application Control(WDAC)策略限制其他进程调用 VSS 相关接口。

网络分段与终端隔离。 将终端按敏感程度进行网络分段,限制高价值资产与普通终端之间的横向通信。BlueHammer 作为本地提权漏洞,需要攻击者已经获得初始 foothold,网络分段可以有效阻止攻击者在获得单台终端权限后在网络中横向移动。

增强日志采集。 确保终端全面采集 Windows 安全事件、PowerShell 脚本块日志(Event ID 4104)、Windows Defender 状态变更日志以及 ETW 跟踪数据。完整的日志是检测和事后取证的基础。建议将日志实时推送至集中式 SIEM 或使用 Microsoft Sentinel 进行分析。

临时检测签名。 微软已经为原始 BlueHammer 二进制文件添加了检测签名(识别为 Exploit:Win32/DfndrPEBluHmr.BB),但该签名仅针对特定的编译样本。攻击者只需对源代码进行微小修改(例如改变变量名、添加无用代码)即可绕过静态检测。因此,组织不应依赖此签名作为唯一的防护手段,而应将其作为纵深防御的一层。

结论

BlueHammer 代表了一种新型的攻击范式:将防御工具本身转化为攻击路径的一部分。Microsoft Defender 作为 Windows 内置的安全组件,其更新流程被攻击者滥用为提权通道,这再次证明安全工具并不能因为其设计用途而自动获得信任。当攻击技术完全依赖于正常系统组件的组合而非漏洞利用或恶意代码时,传统的基于签名的防护措施将面临极大挑战。

对于安全团队而言,当前的优先事项应当包括:部署上述检测规则以获得对攻击活动的可见性,实施最小权限策略以缩小攻击面,以及持续监控微软官方安全公告以获取补丁信息。在补丁发布后,应当将其列为核心优先级进行部署,因为公开的漏洞利用代码会迅速被勒索软件组织和其他恶意行为者纳入其工具集。根据以往类似 LPE 漏洞的演化路径,从公开到大规模滥用通常只需要数天到数周时间。


参考资料