研究人员提出一种新方法,并开发出概念验证工具 "EDR-Freeze"。该工具证明,攻击者可借助微软 Windows 错误报告(WER)系统,从用户模式中规避安全解决方案的检测。
这种技术无需依赖漏洞驱动程序,就能让端点检测与响应(EDR)工具等安全代理陷入 " 休眠 " 状态。
安全研究员 TwoSevenOneThree(别名 Zero Salarium)发现,通过将 WER 框架与 MiniDumpWriteDump API 结合,可以无限期地暂停 EDR 和杀毒软件进程的活动。
目前已有的 EDR 禁用方法多基于 " 自带漏洞驱动程序(BYOVD)" 技术:攻击者获取合法但存在漏洞的内核驱动程序,通过利用漏洞提升权限。而 BYOVD 攻击存在明显缺陷,例如需将驱动程序植入目标系统、绕过执行防护机制,还要清除可能暴露攻击行为的内核级痕迹。
相比之下,EDR-Freeze 被描述为 " 更隐蔽 " 的方法:无需内核驱动程序,完全在用户态运行,且仅依赖 Windows 系统默认自带的合法组件。
EDR-Freeze 的工作原理
WerFaultSecure 是 Windows 错误报告系统的组件,以 " 受保护进程轻量模式(PPL)" 权限运行,其设计用途是收集敏感系统进程的崩溃转储文件,用于调试和诊断分析。
MiniDumpWriteDump 是 DbgHelp 库中的一款 API,功能是生成进程内存与状态的快照(即 " 小型转储文件 ")。在生成快照的过程中,它会先暂停目标进程的所有线程,待操作完成后再恢复线程运行。
EDR-Freeze 的核心逻辑,是借助 WerFaultSecure 触发 MiniDumpWriteDump ——在生成转储文件时,MiniDumpWriteDump 会暂时暂停目标进程的所有线程;而攻击者会在此时暂停 WerFaultSecure 进程本身,导致转储工具无法恢复目标进程,最终使杀毒软件进程陷入 " 停滞 " 状态。
该研究员将这种攻击定义为 " 竞态条件攻击 ",并指出可通过四个步骤复现:
1. 以 PPL 权限启动 WerFaultSecure 进程;
2. 向 WerFaultSecure 传递参数,使其对目标进程 ID(PID)调用 MiniDumpWriteDump;
3. 持续检测目标进程,直至其被转储操作暂停;
4. 立即以 " 进程暂停 / 恢复(PROCESS_SUSPEND_RESUME)" 权限打开 WerFaultSecure,调用 NtSuspendProcess 函数冻结转储工具。
研究员还发布了一款可自动执行上述操作的工具,并在 Windows 11 24H2 系统上进行测试,成功冻结了 Windows Defender(微软杀毒软件)进程。
设置参数(左)和暂停 Windows Defender(右)
值得注意的是,这种新型攻击利用的是 MiniDumpWriteDump 与 WerFaultSecure 的 " 预期功能 " ——二者的正常逻辑被串联后形成攻击链,因此这更偏向于 Windows 的设计缺陷,而非传统意义上的漏洞。
防御建议与后续展望
针对 EDR-Freeze 的防御并非无计可施,关键在于监控 WER 是否指向 " 敏感进程标识符 ",如本地安全机构子系统 LSASS 或安全工具的 PID。为此,安全研究员开发了一款工具,可建立 WerFaultSecure 与微软 Defender Endpoint 进程的映射关系,辅助检测异常。
此外,微软也可采取措施强化这些 Windows 组件的安全性,防止被滥用,例如:拦截可疑调用、仅允许对特定 PID 执行操作,或限制参数的可配置范围。
登录后才可以发布评论哦
打开小程序可以发布评论哦