다음을 통해 공유


디바이스 제어 연습

적용 대상:

이 문서에서는 디바이스 제어의 작동 방식을 확인하는 다양한 방법을 설명합니다. 기본 설정부터 각 섹션에서는 특정 목표를 달성하기 위해 디바이스 제어를 구성하는 방법을 설명합니다.

디바이스 컨트롤의 기본 상태 살펴보기

기본적으로 디바이스 제어 는 사용하지 않도록 설정되며 추가할 수 있는 디바이스에 대한 제한은 없습니다. 엔드포인트용 Defender에 온보딩된 디바이스에 대해 기본 디바이스 제어 이벤트의 감사를 사용하도록 설정합니다. 이 작업은 디바이스 제어 보고서에서 볼 수 있습니다. 기본 제공 PnP 감사 정책 에서 필터링하면 환경의 엔드포인트에 연결된 디바이스가 표시됩니다.

엔드포인트용 Defender의 디바이스 컨트롤은 해당 속성을 기반으로 디바이스를 식별합니다. 디바이스 속성은 보고서에서 항목을 선택하여 볼 수 있습니다.

디바이스 ID, VID(공급업체 ID), 일련 번호버스 유형은 모두 디바이스를 식별하는 데 사용할 수 있습니다(다음 예제 쿼리와 같이 ()를 검색Plug and Play Device Connected actionPnPDeviceConnected하여 고급 헌팅에서 [엔드포인트용 Microsoft Defender 디바이스 제어 정책 참조](device-control-policies.mddata도 참조).


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

테스트 디바이스에서 USB 드라이브를 삽입합니다. 제한은 없습니다. 모든 유형의 액세스(읽기, 쓰기, 실행 및 인쇄)가 허용됩니다. 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 디바이스 제어 정책을 참조하세요.

3단계: 다양한 유형의 디바이스에 대해 다양한 수준의 액세스 허용

다른 디바이스에 대해 다른 동작을 만들려면 별도의 그룹에 배치합니다. 이 예제에서는 라는 Read Only USBs그룹을 사용합니다. 다음 이미지는 사용한 설정을 보여줍니다.

다양한 디바이스에 대한 다양한 액세스 수준에 대한 설정을 보여 주는 스크린샷

이 예제에서 읽기 전용 USB 그룹에는 로 식별된 단일 디바이스가 포함되어 있습니다 VID_PID. 샘플을 배포하기 전에 값을 두 번째 테스트 디바이스의 값 VID_PID 으로 변경할 수 있습니다.

정책이 배포되면 권한 있는 USB를 삽입합니다. 전체 액세스가 허용되는 것을 볼 수 있습니다. 이제 두 번째 테스트 디바이스(읽기 전용 USB)를 삽입합니다. 읽기 전용 권한으로 디바이스에 액세스할 수 있습니다. 새 파일을 만들거나 파일을 변경하려고 하면 디바이스 컨트롤이 파일을 차단하는 것을 볼 수 있습니다.

다른 USB 디바이스를 삽입하는 경우 "다른 모든 USB 거부" 정책으로 인해 차단되어야 합니다.

4단계: 특정 사용자 또는 그룹에 대한 디바이스에 대한 다양한 수준의 액세스 허용

디바이스 제어를 사용하면 조건을 사용하여 액세스를 추가로 제한할 수 있습니다. 가장 간단한 조건은 사용자 조건입니다. 디바이스 제어에서 사용자 및 그룹은 SID(보안 식별됨)로 식별됩니다.

다음 스크린샷은 예제에 사용한 설정을 보여줍니다.

특정 사용자에 대한 다양한 수준의 액세스를 허용하는 디바이스 제어 설정을 보여 주는 스크린샷

기본적으로 샘플은 의 전역 SID를 S-1-1-0사용합니다. 정책을 배포하기 전에 권한 있는 USB(쓰기 가능한 USB) User1 와 연결된 SID를 로 변경하고 읽기 전용 USB User2와 연결된 SID를 로 변경할 수 있습니다.

정책이 배포되면 사용자 1만 권한 있는 USB에 대한 쓰기 액세스 권한을 가지며 사용자 2만 ReadOnly USB에 대한 읽기 권한이 있습니다.

디바이스 컨트롤은 그룹 SID도 지원합니다. 읽기 전용 정책의 SID를 를 포함하는 그룹으로 변경합니다 User2. 정책이 다시 배포되면 사용자 2 또는 해당 그룹의 다른 사용자에 대해 규칙이 동일합니다.

참고

Microsoft Entra 저장된 그룹의 경우 SID 대신 개체 ID를 사용하여 사용자 그룹을 식별합니다.

다음 단계