Microsoft Defender防病毒中的行为监视

适用于:

行为监视是 Microsoft Defender 防病毒的关键检测和保护功能。

监视进程行为,以基于应用程序、服务和文件的行为检测和分析潜在威胁。 行为监视侧重于实时观察软件的行为方式,而不是仅依赖于识别) 已知恶意软件模式的基于签名的检测 (。 下面是它所需的内容:

  1. Real-Time 威胁检测:

    • 持续观察系统内的进程、文件系统活动和交互。
    • Defender 防病毒可以识别与恶意软件或其他威胁关联的模式。 例如,它会查找对现有文件进行异常更改、修改或创建自动启动注册表 (ASEP) 键的进程,以及对文件系统或结构的其他更改。
  2. 动态方法:

  • 与基于签名的静态检测不同,行为监视会适应新的和不断演变的威胁。

  • Microsoft Defender防病毒使用预定义模式,并观察软件在执行期间的行为方式。 对于不适合任何预定义模式的恶意软件,Microsoft Defender防病毒使用异常情况检测。

  • 例如,如果某个程序 (显示可疑行为,则尝试修改关键系统文件) ,Microsoft Defender防病毒可以采取措施防止进一步的伤害,并还原一些以前的恶意软件操作。

行为监视通过专注于实时操作和行为而不是仅依赖已知签名,增强了 Defender 防病毒主动检测新出现的威胁的能力。

以下功能依赖于行为监视。

反恶意软件

  • 指示器、文件哈希、允许/块

网络保护

  • 指示器、IP 地址/URL、允许/阻止
  • Web 内容筛选,允许/阻止

注意

行为监视受篡改防护的保护。

若要暂时禁用行为监视以将其从图片中删除,首先需要启用故障排除模式,禁用篡改防护,然后禁用行为监视。

更改行为监视策略

下表显示了配置行为监视的不同方法。

管理工具 名称 链接
安全设置管理 允许行为监视 本文
Intune 允许行为监视 适用于 Intune Microsoft Defender 防病毒的 Windows 防病毒策略设置
Csp AllowBehaviorMonitoring Defender Policy CSP
Configuration Manager租户附加 启用行为监视 租户附加设备的 Microsoft Defender 防病毒中的 Windows 防病毒策略设置
组策略 启用行为监视 下载 Windows 11 2023 Update (23H2) 的 组策略 设置参考电子表格
PowerShell Set-Preference -DisableBehaviorMonitoring Set-MpPreference
WMI boolean DisableBehaviorMonitoring; MSFT_MpPreference 类

如果使用Microsoft Defender 商业版,请参阅在 Microsoft Defender 商业版 中查看或编辑下一代保护策略

使用 PowerShell 修改行为监视设置

使用以下命令修改行为监视设置:

Set-MpPreference -DisableBehaviorMonitoring <true | false>
  • True 禁用行为监视。
  • False 启用行为监视。

有关详细信息,请参阅 Set-MpPreference

从 PowerShell 查询行为监视状态

Get-MpComputerStatus | Format-Table BehaviorMonitorEnabled

如果返回 true的值为 ,则启用行为监视。

使用高级搜寻查询行为监视状态

可以使用高级搜寻 (AH) 查询行为监视的状态。

需要Microsoft Defender XDR、Microsoft Defender for Endpoint计划 2 或Microsoft Defender 商业版。

let EvalTable = DeviceTvmSecureConfigurationAssessment
| where ConfigurationId in ("scid-91")
| summarize arg_max(Timestamp,IsCompliant, IsApplicable) by DeviceId, ConfigurationId,tostring(Context)
| extend Test = case(
ConfigurationId == "scid-91" , "BehaviorMonitoring",
"N/A"),
Result = case(IsApplicable == 0,"N/A",IsCompliant == 1 , "Enabled", "Disabled")
| extend packed = pack(Test,Result)
| summarize Tests = make_bag(packed) by DeviceId
| evaluate bag_unpack(Tests);
let DefUpdate = DeviceTvmSecureConfigurationAssessment
| where ConfigurationId == "scid-2011"
// | where isnotnull(Context)
| extend Definition = parse_json(Context[0][0])
| extend LastUpdated = parse_json(Context[0][2])
| project DeviceId,Definition,LastUpdated;
let DeviceInformation = DeviceInfo
| where isnotempty(OSPlatform)
| summarize arg_max(Timestamp,*) by DeviceId, DeviceName
| project DeviceId, DeviceName, MachineGroup;
let withNames = EvalTable
| join kind = inner DeviceInformation on DeviceId
| project-away DeviceId1
| project-reorder DeviceName, MachineGroup;
withNames | join kind = fullouter DefUpdate on DeviceId
| project-away DeviceId1
| sort by BehaviorMonitoring asc

排查 CPU 使用率过高问题

与行为监视相关的检测以“行为”开头。

调查 中的 MsMpEng.exeCPU 使用率过高时,可以暂时禁用行为监视,以查看问题是否仍然存在。

可以使用性能分析器Microsoft Defender防病毒来查找导致 CPU 使用率过高的 \path\process进程和/或文件扩展名。 然后,可以将这些项添加到 上下文排除项。

有关详细信息,请参阅 Microsoft Defender 防病毒的性能分析器

如果发现行为监视导致 CPU 使用率过高,请按顺序还原以下各项,继续排查问题。 还原每个项后重新启用行为监视,以确定问题可能在哪里。

  1. 平台更新
  2. 引擎更新
  3. 安全智能更新

如果仍然遇到 CPU 使用率过高的问题,请联系 Microsoft 支持部门,并准备好客户端分析器数据。

如果行为监视未导致此问题,请使用适用于 Microsoft Defender 防病毒的性能分析器来收集日志信息。 使用 a -ca -a收集两个不同的日志。 联系 Microsoft 支持人员时,请准备好此信息。

有关详细信息,请参阅 Windows 上高级故障排除的数据收集