设备控制演练
适用于:
本文介绍查看设备控制工作原理的不同方法。 从默认设置开始,每个部分介绍如何配置设备控制以实现某些目标。
了解设备控制的默认状态
默认情况下, 设备控制 处于禁用状态,并且没有限制可以添加哪些设备。 对载入到 Defender for Endpoint 的设备启用了基本设备控制事件的审核。 可以在 设备控制报告中看到此活动。 对内置 PnP 审核策略 进行筛选会显示连接到环境中的终结点的设备。
Defender for Endpoint 中的设备控制基于设备的属性标识设备。 通过选择报表中的条目可查看设备属性。
设备 ID、供应商 ID (VID) 、序列号和总线类型都可用于标识设备 (请参阅 [Microsoft Defender for Endpoint 中的设备控制策略] (device-control-policies.mddata 也可通过搜索 Plug and Play Device Connected action
(PnPDeviceConnected
) 在高级搜寻中使用,如以下示例查询所示:
DeviceEvents
| where ActionType == "PnpDeviceConnected"
| extend parsed=parse_json(AdditionalFields)
| extend MediaClass = tostring(parsed.ClassName)
| extend MediaDeviceId = tostring(parsed.DeviceId)
| extend MediaDescription = tostring(parsed.DeviceDescription)
| extend MediaSerialNumber = tostring(parsed.SerialNumber)
| project Timestamp, DeviceId, DeviceName, AccountName, AccountDomain, MediaClass, MediaDeviceId, MediaDescription, MediaSerialNumber, parsed
| order by Timestamp desc
设备控制 (启用/禁用、默认强制和上次策略更新) 的状态通过 Get-MpComputerStatus 在设备上可用,如以下代码片段所示:
DeviceControlDefaultEnforcement :
DeviceControlPoliciesLastUpdated : 1/3/2024 12:51:56 PM
DeviceControlState : Disabled
将设备控制状态更改为在测试设备上启用*。 确保通过检查 Get-MpComputerStatus 来应用策略,如以下代码片段所示:
DeviceControlDefaultEnforcement : DefaultAllow
DeviceControlPoliciesLastUpdated : 1/4/2024 10:27:06 AM
DeviceControlState : Enabled
在测试设备中,插入 U 盘。 没有限制:允许所有类型的访问 (读取、写入、执行和打印) 。 将创建一条记录来显示 USB 设备已连接。 可以使用以下示例高级搜寻查询来查看它:
DeviceEvents
| where ActionType == "PnpDeviceConnected"
| extend parsed=parse_json(AdditionalFields)
| extend MediaClass = tostring(parsed.ClassName)
| extend MediaDeviceId = tostring(parsed.DeviceId)
| extend MediaDescription = tostring(parsed.DeviceDescription)
| extend MediaSerialNumber = tostring(parsed.SerialNumber)
| where MediaClass == "USB"
| project Timestamp, DeviceId, DeviceName, AccountName, AccountDomain, MediaClass, MediaDeviceId, MediaDescription, MediaSerialNumber, parsed
| order by Timestamp desc
此示例查询按 MediaClass
筛选事件。 可以更改默认行为以拒绝所有设备,或从设备控制中排除设备系列。 将默认行为更改为拒绝,然后将设备控制设置为仅应用于可移动存储。
对于Intune,请使用自定义配置文件设置设备控件设置,如下所示:
- 设置为
./Vendor/MSFT/Defender/Configuration/DeviceControlEnabled
1
- 设置为
./Vendor/MSFT/Defender/Configuration/DefaultEnforcement
2
- 设置为
./Vendor/MSFT/Defender/Configuration/SecuredDevicesConfiguration
RemovableMediaDevices
将策略部署到测试设备。 使用 Get-MpComputerStatus 确认默认强制设置为“拒绝”,如以下代码片段所示:
DeviceControlDefaultEnforcement : DefaultDeny
DeviceControlPoliciesLastUpdated : 1/4/2024 10:27:06 AM
DeviceControlState : Enabled
在测试计算机中删除 USB 设备,然后重新插入。 尝试打开驱动器。 驱动器不可访问,并显示一条消息,指示访问被拒绝。
注意
此处提供了示例、说明和示例。
步骤 1:拒绝所有可移动媒体
为了自定义行为,设备控制使用组和规则组合的策略。 首先部署拒绝所有可移动存储设备访问的策略,并通过向门户和用户发送通知来审核事件。 下图汇总了这些设置:
为了控制访问,设备被组织成组。 此策略使用名为 的 All removable media devices
组。 将此策略部署到测试设备后,重新插入 USB。 此时会显示一条通知,指示设备访问受到限制。
该事件还会在 15 分钟内在高级搜寻中显示。 可以使用以下示例查询查看结果:
DeviceEvents
| where ActionType == "RemovableStoragePolicyTriggered"
| extend parsed=parse_json(AdditionalFields)
| extend RemovableStorageAccess = tostring(parsed.RemovableStorageAccess)
| extend RemovableStoragePolicyVerdict = tostring(parsed.RemovableStoragePolicyVerdict)
| extend MediaBusType = tostring(parsed.BusType)
| extend MediaClassGuid = tostring(parsed.ClassGuid)
| extend MediaClassName = tostring(parsed.ClassName)
| extend MediaDeviceId = tostring(parsed.DeviceId)
| extend MediaInstanceId = tostring(parsed.DeviceInstanceId)
| extend MediaName = tostring(parsed.MediaName)
| extend RemovableStoragePolicy = tostring(parsed.RemovableStoragePolicy)
| extend MediaProductId = tostring(parsed.ProductId)
| extend MediaVendorId = tostring(parsed.VendorId)
| extend MediaSerialNumber = tostring(parsed.SerialNumber)
|project Timestamp, DeviceId, DeviceName, InitiatingProcessAccountName, ActionType, RemovableStorageAccess, RemovableStoragePolicyVerdict, MediaBusType, MediaClassGuid, MediaClassName, MediaDeviceId, MediaInstanceId, MediaName, RemovableStoragePolicy, MediaProductId, MediaVendorId, MediaSerialNumber, FolderPath, FileSize
| order by Timestamp desc
注意
使用高级搜寻功能,每天最多可查看每台设备 300 个事件。
选择事件以查看有关策略和设备的信息。
步骤 2:允许对授权的 USB 设备进行访问
若要授予对一组已授权 USB 设备的访问权限,请设置一个组来标识这些设备。 我们调用组 Authorized USBs
,并使用下图中描述的设置:
在我们的示例中,授权的 USB 组包含由其 InstancePathId
标识的单个设备。 在部署示例之前,可以将测试设备的 值更改为 InstancePathId
。 有关如何查找正确值的详细信息,请参阅使用 Windows 设备管理器确定设备属性和使用报告和高级搜寻来确定设备的属性。
请注意,授权的 USB 组已从“全部拒绝”策略中排除。 这可确保针对其他策略评估这些设备。 策略不会按顺序进行评估,因此,如果单独评估,则每个策略都应正确。 部署策略后,重新插入批准的 USB 设备。 你应该会看到对设备具有完全访问权限。 插入另一个 USB,并确认该设备的访问被阻止。
设备控制有很多方法可以根据属性对设备进行分组。 有关详细信息,请参阅 Microsoft Defender for Endpoint 中的设备控制策略。
步骤 3:允许对不同类型的设备进行不同级别的访问
若要为不同的设备创建不同的行为,请将它们放入单独的组中。 在我们的示例中,我们使用名为 的 Read Only USBs
组。 下图显示了我们使用的设置:
在我们的示例中,只读 USB 组包含由其 VID_PID
标识的单个设备。 在部署示例之前,可以将 的值 VID_PID
更改为第二个测试设备的值。
部署策略后,插入授权的 USB。 应会看到允许完全访问。 现在, (只读 USB) 插入第二个测试设备。 可以使用只读权限访问设备。 尝试创建新文件或更改文件,应会看到设备控件阻止它。
如果插入任何其他 USB 设备,则应由于“拒绝所有其他 USB”策略而被阻止。
步骤 4:允许特定用户或组对设备进行不同级别的访问
设备控制允许使用条件进一步限制访问。 最简单的条件是用户条件。 在设备控制中,用户和组通过其安全标识 (SID) 进行标识。
以下屏幕截图显示了用于示例的设置:
默认情况下,该示例使用 的 S-1-1-0
全局 SID。 在部署策略之前,可以将与授权 USB 关联的 SID (可写 USB) 更改为 User1
,并将与只读 USB 关联的 SID 更改为 User2
。
部署策略后,只有用户 1 具有对已授权 USB 的写入访问权限,只有用户 2 具有对 ReadOnly USB 的读取访问权限。
设备控制还支持组 SID。 将只读策略中的 SID 更改为包含 的 User2
组。 重新部署策略后,用户 2 或该组中的任何其他用户的规则都相同。
注意
对于存储在 Microsoft Entra 中的组,请使用对象 ID 而不是 SID 来标识用户组。