漏洞利用保护对操作系统和单个应用采取缓解措施,帮助保护 Windows 设备免受利用漏洞的恶意软件侵害。 安全管理员可以通过使用 Microsoft Intune、移动设备管理(MDM)、Microsoft Configuration Manager、组策略、PowerShell 或 Windows 安全中心 应用应用来配置系统级和应用级的缓解措施。
Windows 默认在 Windows 10 和 Windows 11 中启用了多项漏洞保护缓解措施。 你可以启用或禁用每项缓解措施,或者使用其默认值。 部分缓解措施还支持 审计模式,允许你在不影响设备正常使用的情况下评估兼容性。
你可以 把漏洞保护缓解设置导出为XML文件 ,并部署到其他设备。
重要
导出地址过滤(EAF)和导入地址过滤(IAF)已被弃用,且不兼容 .NET Framework 2.0 或 3.5 应用程序。
先决条件
在部署漏洞保护之前,请准备以下监控和测试功能:
- 应用程序崩溃(事件ID 1000或事件ID 1001)和卡顿(事件ID 1002)的监控。
- 完整的用户模式转储 收集。
- 一组使用 Control Flow Guard(CFG)编译的应用清单。 要验证二进制是否包含CFG数据,请使用
dumpbin /headers /loadconfig。 - 一个用于在广泛部署前测试利用保护变更的设备组。
警告
未经测试部署漏洞保护缓解措施可能导致应用兼容性问题,影响用户生产力。
安全部署做法
安全部署措施(SDP)帮助您管理应用兼容性和用户生产力问题的风险。 先用一小组Windows设备,测试你计划保护的应用的缓解措施。 禁用受影响应用的不兼容缓解措施,然后重复测试。
验证策略后,将其部署到包括 IT 管理员、安全管理员和帮助台人员在内的用户验收测试(UAT)组。 根据各组结果分阶段扩展部署。
使用 Microsoft Intune 启用攻击保护
Microsoft Intune 是用于配置 Defender for Endpoint 功能并将其分发到设备的推荐工具。 但是,Intune 是一个单独的产品,不属于 Endpoint Defender,它不包括在所有订阅中。 若要使用 Intune,需要一个包含它的订阅,也可以单独将其作为独立订阅或附加产品购买。 如果没有 Intune,可以使用本文中的其他任何方法。 有关详细信息,请参阅 Microsoft Intune 许可。
要在 Microsoft Intune 中配置漏洞利用防护,请使用终端安全中的攻击面缩减策略。 详细说明请参见 “创建终端安全策略 ”或 “修改现有策略 ”(链接可在Intune文档中打开新标签页)。
创建政策时,请使用以下具体设置:
-
策略类型:在https://intune.microsoft.com/#view/Microsoft_Intune_Workflows/SecurityManagementMenu/~/overview的终结点安全 | 概述页面上,转到管理>攻击面缩减,然后选择
创建策略。 - 平台:选择 “Windows”。
- 配置文件:选择 漏洞利用防护。
创建或修改策略时,请在 配置设置 标签页中使用以下具体设置:
- 在Exploit Guard部分的漏洞利用防护设置中:将开关切换为
已配置。 - 在弹出的框旁边,选择
“打开文件 ”,然后找到并选择你的漏洞保护XML文件。
有关创建 exploit Protection XML 文件的详细信息,请参阅 导入、导出和部署 exploit Protection 配置。
有关Microsoft Intune中攻击面减少策略的详细信息,请参阅 Intune 中终结点安全性的攻击面减少策略。
通过使用MDM解决方案实现漏洞保护
策略配置服务提供商(CSP)使组织能够通过使用任何MDM解决方案(而不仅仅是Microsoft Intune)在Windows设备上配置策略。 有关详细信息,请参阅 策略 CSP。
使用以下设置,通过 ExploitProtectionSettings CSP 配置漏洞利用防护:
OMA-URI 路径: ./Device/Vendor/MSFT/Policy/Config/ExploitGuard/ExploitProtectionSettings
数据类型:字符串
价值:您的漏洞保护XML文件内容。
系统级设置需要设备重启。 应用层级设置不需要重启。 有关创建XML文件的信息,请参见 导入、导出和部署利用保护配置。
使用 Microsoft Configuration Manager 启用攻击保护
在 Microsoft Configuration Manager 中,在 Windows Defender Exploit Guard 策略中配置漏洞保护。 有关说明,请参见 “创建并部署 Exploit Guard 策略”。
创建政策时,请使用以下具体设置:
- 漏洞保护组件:选择 漏洞保护。
- 漏洞利用防护 XML:选择 浏览,然后选择包含系统级和应用级缓解措施设置的 XML 文件。
警告
在设备间传输利用保护的XML文件时,请保持安全。 导入后删除文件,或存放在安全位置。
使用组策略启用攻击保护
要通过组策略配置漏洞保护,请按照以下步骤操作:
在域环境中,在您的组策略管理计算机上打开 组策略管理控制台(GPMC )。
在 GPMC 控制台树中,展开包含你想编辑的组策略对象(GPO)的森林和域中的 组策略对象 。
右键单击 GPO,然后选择“ 编辑”。
在组策略管理编辑器中,选择计算机配置>管理模板>Windows 组件>Microsoft Defender Exploit GuardExploit Protection>。
Note
Windows 10 2004 版(2020 年 5 月)之前的组策略路径可能使用 Windows Defender Exploit Guard 而非 Microsoft Defender Exploit Guard。 这两个名称指的是同一策略位置。
在 “漏洞利用防护”详细信息窗格中,使用以下方法之一打开 “使用一组常见的漏洞利用防护设置” 设置:
- 双击该设置项。
- 右键单击该设置,然后选择“ 编辑”。
- 选择设置,然后选择 “操作>编辑”。
在打开的设置窗口中,配置以下选项:
- 选择启用。
- 在 选项 部分输入本地路径、通用命名规范(UNC)路径或 利用保护XML文件的URL。
完成后,选择“ 确定”。
提示
还可以使用本地组策略编辑器 gpedit.msc () 在单个设备上本地配置组策略。 导航到相同路径:计算机配置>管理模板>Windows 组件>Microsoft Defender Exploit Guard>漏洞利用防护。
使用PowerShell配置漏洞保护
使用 Get-ProcessMitigation 和 Set-ProcessMitigation 这两个指令小工具来审查和配置漏洞保护缓解措施。 这些 cmdlet 需要在提升权限的 PowerShell 会话中运行,即通过选择 以管理员身份运行 打开的 PowerShell 窗口。
有关配置单个缓解措施的指导,请参见 配置与审计利用保护缓解措施。
流程缓解措施:
要查看注册表中存储的特定可执行名的缓解策略,请使用以下语法:
Get-ProcessMitigation -Name <ProcessPathAndFilename.exe>例如:
Get-ProcessMitigation -Name testing.exe添加 RunningProcesses 参数以获取可执行文件运行实例的当前设置。 未配置的缓解措施状态值
NOTSET为 ,这意味着 Windows 应用系统级值。要配置特定流程的缓解措施,请使用以下语法:
Set-ProcessMitigation -Name <ProcessPathAndFilename.exe> [-Remove] <-Enable | -Disable> Mitigation1,Mitigation2,...MitigationN本示例为指定进程启用带有 ATL Thunk 仿真的数据执行保护(DEP),并阻止其创建子进程:
Set-ProcessMitigation -Name c:\apps\lob\tests\testing.exe -Enable DEP,EmulateAtlThunks,DisallowChildProcessCreation要禁用指定的应用相同的缓解措施,请用
-Disable代替-Enable。此示例移除了应用特定的DEP覆盖,并恢复了系统级值:
Set-Processmitigation -Name c:\apps\lob\tests\testing.exe -Remove -Disable DEP
系统级缓解措施:
要查看系统层面配置的过程缓解措施,请使用以下语法:
Get-ProcessMitigation -System状态值
NOTSET意味着 Windows 应用了缓解措施的默认值。你可以在 Windows 安全中心 应用中查看每个系统级缓解措施的默认值。
要在系统层面启用或禁用缓解措施,请使用以下语法:
Set-Processmitigation -System [-Remove] <-Enable | -Disable> Mitigation1,Mitigation2,...MitigationN以下示例使DEP能够实现系统层面的应用:
Set-Processmitigation -System -Enable DEP要停用缓解措施,请用
-Disable代替-Enable。此示例移除了系统级的DEP覆盖,并恢复了默认值:
Set-ProcessMitigation -System -Remove -Disable DEP
使用 Windows 安全中心 应用启用攻击保护
你可以在单个设备上使用Windows 安全中心应用来配置漏洞保护缓解措施。
使用以下步骤在 Windows 安全中心 应用中配置攻击保护缓解措施:
- 在设备上的Windows安全应用中,进入应用和浏览器控制。
- 在 应用和浏览器控制 窗格中的 漏洞利用防护 部分,选择 漏洞利用防护设置。
- 打开的 漏洞保护 面板有两个标签页:
程序设置 标签:选择你想应用缓解措施的应用。
- 如果要配置的应用已列出,请选择它,然后选择“编辑”。
- 如果应用未被列出,请在标签页顶部选择
添加程序进行自定义 ,然后选择你想添加该应用的方式: - 选择 “按程序名称添加 ”,以便将缓解措施应用到任何带有该名称的运行进程上。 指定文件名和文件扩展名(
test.exe)或文件的完整路径(c:\test\test.exe),以限制缓解措施仅限于该特定文件。 完成后,选择“添加”。 - 选择 选择精确文件路径 以查找并选择该文件。
- 选择 “按程序名称添加 ”,以便将缓解措施应用到任何带有该名称的运行进程上。 指定文件名和文件扩展名(
程序 设置: <应用> 窗口打开,显示可应用的缓解措施。 选择 覆盖系统设置,然后配置可用于缓解的各个设置。 如果缓解措施支持审计模式,选择 仅 审计以评估缓解措施而非强制执行。
完成后,选择应用。 如果需要重启进程或应用,或者需要重启 Windows,你将收到通知。
对所有你想配置的应用和缓解措施重复应用层级配置。
系统设置 选项卡:找到你想配置的缓解措施,然后指定以下设置之一。 未为某项缓解措施配置应用专用覆盖设置的应用将使用相应的系统级设置。
- 默认开启:对于未设置应用特定覆盖项的应用,此缓解措施会启用。
- 默认关闭:对于未设置应用专用替代设置的应用,将禁用此缓解措施。
- 使用默认值(开 |关闭):缓解措施要么启用,要么禁用,取决于 Windows 设置的默认配置。 每个缓解措施的使用默认标签后都会指定默认值 开 或 关。
对所有你想配置的缓解措施重复系统层面的配置。 完成后,选择应用。
对于每项缓解措施,只有在选中 覆盖系统设置 时,程序设置 选项卡中的配置才会优先生效。 如果未选择覆盖系统设置,应用会在系统设置标签页中使用该配置。如果系统层级配置为使用默认(开 |关闭),则应用括号内显示的 Windows 默认设置。
自定义攻击保护通知
有关在规则被触发且应用或文件被阻止时如何自定义通知的详细信息,请参阅 Windows 安全。
删除攻击保护缓解措施
若要重置(撤消或删除)攻击保护缓解措施,请参阅 重置或删除攻击保护缓解措施。