● Windows 11 HVCI(하이퍼바이저로 보호되는 코드 무결성) 모드를 활성화하면 ???? 호환 되지 않습니다
컨텐츠 정보
- 20,094 조회
- 0 추천
- 목록
본문
● Windows 11 HVCI(하이퍼바이저로 보호되는 코드 무결성) 모드를 활성화하면 ???? 호환 되지 않습니다
무엇인가 ?
******
▶ Windows 11 HVCI(하이퍼바이저로 보호되는 코드 무결성)
https://docs.microsoft.com/ko-kr/windows/security/threat-protection/device-guard/enable-virtualization-based-protection-of-code-integrity
적용 대상 Windows 10 Windows 11
이 항목에서는 Windows 10 및 Windows 11 HVCI(하이퍼바이저로 보호되는 코드 무결성)를 사용하도록 설정하는 다양한 방법에 대해 설명합니다.
디바이스 드라이버를 비롯한 일부 응용 프로그램이 HVCI와 호환되지 않을 수 있습니다.
이로 인해 디바이스 또는 소프트웨어가 오작동할 수 있으며 드물게 파란색 화면이 표시될 수 있습니다.
이러한 문제는 HVCI가 켜진 후 또는 활성화 프로세스 도중 발생할 수 있습니다. 이러한 상황이 발생할 경우 문제 해결 단계는 문제 해결을 참조하세요.
참고
모드 기반 실행 제어를 사용하기 때문에 HVCI는 Intel Kaby Lake 또는 AMD Zen 2 CPU 이상에서 더 잘 작동합니다.
MBEC가 없는 프로세서는 성능에 더 큰 영향을 주는 제한된 사용자 모드라는 이 기능의 에뮬레이션에 의존합니다.
HVCI 기능
HVCI는 CFG(Control Flow Guard) 비트맵의 수정을 보호합니다.
또한 HVCI는 Credential Guard와 같은 다른 신뢰할 수 있는 프로세스에 유효한 인증서가 있는지 확인합니다.
최신 디바이스 드라이버에는 EV(확장 유효성 검사) 인증서도 있어야 하며 HVCI를 지원해야 합니다.
Windows 10 및 Windows 11 HVCI를 켜는 방법
엔터프라이즈 전체에서 하드웨어를 지원하는 Windows 10 및 Windows 11 디바이스에서 HVCI를 사용하도록 설정하려면 다음 옵션을 사용합니다.
Windows 보안 앱
Microsoft Intune(또는 다른 MDM 공급자)
그룹 정책
Microsoft Endpoint Configuration Manager
레지스트리
Windows 보안 앱
HVCI는 Windows 보안 앱에서 메모리 무결성이라는 레이블이 지정되며 설정 > & 보안 업데이트Windows 보안Device security
> > Core 격리 세부 정보 > 메모리 무결성****을 > 통해 액세스할 수 있습니다. 자세한 내용은 KB4096339를 참조하세요.
Intune 사용하여 HVCI 사용
Intune 사용하도록 설정하려면 AppLocker CSP에서 코드 무결성 노드를 사용해야 합니다.
그룹 정책 사용하여 HVCI 사용
그룹 정책 편집기(gpedit.msc)를 사용하여 기존 GPO를 편집하거나 새 GPO를 만듭니다.
컴퓨터 구성 > 관리 템플릿****시스템 > Device Guard로 > 이동합니다.
가상화 기반 보안 켜기를 두 번 클릭합니다.
[사용]을 클릭하고 [코드 무결성의 가상화 기반 보호] 에서 [UEFI 잠금으로 사용]을 선택하여 HVCI를 원격으로 사용하지 않도록 설정하거나 UEFI 잠금 없이 [사용]을 선택합니다.
그룹 정책 사용하여 HVCI를 사용하도록 설정합니다.
확인을 클릭하여 편집기를 닫습니다.
도메인에 가입된 컴퓨터에 새 정책을 적용하려면 관리자 권한 명령 프롬프트에서 다시 시작하거나 실행 gpupdate /force 합니다.
레지스트리 키를 사용하여 코드 무결성의 가상화 기반 보호 사용
HVCI를 사용하도록 설정하도록 다음 레지스트리 키를 설정합니다. 이렇게 하면 그룹 정책에서 제공되는 것과 똑같은 구성 옵션 집합이 제공됩니다.
중요
뒤에 나오는 명령 중에 보안 부팅 및 DMA를 사용하여 보안 부팅에 대한 설정을 선택할 수 있습니다. 대부분의 경우 보안 부팅을 선택하는 것이 좋습니다.
이 옵션은 지정된 컴퓨터의 하드웨어에서 지원하는 보호와 동일한 수준으로 보안 부팅을 제공합니다.
IOMMU(입출력 메모리 관리 장치)가 포함된 컴퓨터에는 DMA를 사용하는 보안 부팅 기능이 있습니다.
IOMMU가 없는 컴퓨터에서는 단순히 보안 부팅을 사용하도록 설정합니다.
이와 반대로 DMA를 사용하여 보안 부팅을 사용하면 DMA를 지원하는 컴퓨터 즉, IOMMU가 포함된 컴퓨터에서만 보안 부팅(및 VBS 자체)이 활성화됩니다.
이 설정을 사용하면 IOMKU가 없는 모든 컴퓨터에는 VBS 또는 HVCI 보호 기능이 없지만
여전히 Windows Defender 애플리케이션 제어를 사용하도록 설정할 수 있습니다.
시스템에 있는 모든 드라이버가 코드 무결성의 가상화 기반 보호와 호환되어야 합니다.
그렇지 않으면 시스템이 실패할 수 있습니다.
사용자의 컴퓨터에서 이러한 기능을 사용하기 전에 테스트 컴퓨터 그룹에서 먼저 사용하도록 설정하는 것이 좋습니다.
Windows 10 버전 1607 이상 및 Windows 11 버전 21H2용
권장 설정(코드 무결성의 가상화 기반 보호 정책 사용, UEFI 잠금 제외):
콘솔 복사
reg add "HKLMSYSTEMCurrentControlSetControlDeviceGuard" /v "EnableVirtualizationBasedSecurity" /t REG_DWORD /d 1 /f
reg add "HKLMSYSTEMCurrentControlSetControlDeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 1 /f
reg add "HKLMSYSTEMCurrentControlSetControlDeviceGuard" /v "Locked" /t REG_DWORD /d 0 /f
reg add "HKLMSYSTEMCurrentControlSetControlDeviceGuardScenariosHypervisorEnforcedCodeIntegrity" /v "Enabled" /t REG_DWORD /d 1 /f
reg add "HKLMSYSTEMCurrentControlSetControlDeviceGuardScenariosHypervisorEnforcedCodeIntegrity" /v "Locked" /t REG_DWORD /d 0 /f
이전 권장 설정을 사용자 지정하려면 다음 설정을 사용합니다.
VBS를 사용하도록 설정하려면
콘솔 복사
reg add "HKLMSYSTEMCurrentControlSetControlDeviceGuard" /v "EnableVirtualizationBasedSecurity" /t REG_DWORD /d 1 /f
VBS를 사용하도록 설정하고 보안 부팅만 적용(값 1)하려면
콘솔 복사
reg add "HKLMSYSTEMCurrentControlSetControlDeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 1 /f
보안 부팅 및 DMA를 사용하여 VBS를 사용하도록 설정하려면(값 3)
콘솔 복사
reg add "HKLMSYSTEMCurrentControlSetControlDeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 3 /f
UEFI 잠금 없이(값 0) VBS를 사용하도록 설정하려면
콘솔 복사
reg add "HKLMSYSTEMCurrentControlSetControlDeviceGuard" /v "Locked" /t REG_DWORD /d 0 /f
UEFI 잠금을 사용하여 VBS를 사용하도록 설정하려면(값 1)
콘솔 복사
reg add "HKLMSYSTEMCurrentControlSetControlDeviceGuard" /v "Locked" /t REG_DWORD /d 1 /f
코드 무결성의 가상화 기반 보호 정책을 사용하도록 설정하려면
UEFI 잠금 없이(값 0) 코드 무결성의 가상화 기반 보호 정책을 사용하도록 설정하려면
콘솔
복사
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity" /v "Locked" /t REG_DWORD /d 0 /f
UEFI 잠금을 사용하여 코드 무결성 정책의 가상화 기반 보호를 사용하도록 설정하려면(값 1)
콘솔
복사
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity" /v "Locked" /t REG_DWORD /d 1 /f
Windows 10 버전 1511 이하의 경우
권장 설정(코드 무결성의 가상화 기반 보호 정책 사용, UEFI 잠금 제외):
콘솔
복사
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "EnableVirtualizationBasedSecurity" /t REG_DWORD /d 1 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 1 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "HypervisorEnforcedCodeIntegrity" /t REG_DWORD /d 1 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "Unlocked" /t REG_DWORD /d 1 /f
이전 권장 설정을 사용자 지정하려면 다음 설정을 사용합니다.
VBS를 사용하도록 설정하려면(UEFI에 대해 항상 잠겨 있음)
콘솔
복사
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "EnableVirtualizationBasedSecurity" /t REG_DWORD /d 1 /f
VBS를 사용하도록 설정하고 보안 부팅만 적용(값 1)하려면
콘솔
복사
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 1 /f
보안 부팅 및 DMA를 사용하여 VBS를 사용하도록 설정하려면(값 3)
콘솔
복사
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "RequirePlatformSecurityFeatures" /t REG_DWORD /d 3 /f
코드 무결성의 가상화 기반 보호 정책을 사용하도록 설정하려면(기본값, UEFI 잠금 사용)
콘솔
복사
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "HypervisorEnforcedCodeIntegrity" /t REG_DWORD /d 1 /f
UEFI 잠금 없이 코드 무결성의 가상화 기반 보호 정책을 사용하도록 설정하려면
콘솔
복사
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v "Unlocked" /t REG_DWORD /d 1 /f
활성화된 Windows Defender Device Guard 하드웨어 기반 보안 기능의 유효성을 검사합니다.
Windows 10, Windows 11 및 Windows Server 2016 관련 속성 및 기능에 대한 WMI 클래스가 있습니다. Win32_DeviceGuard. 이 클래스는 다음 명령을 사용하여 관리자 권한 Windows PowerShell 세션에서 쿼리할 수 있습니다.
PowerShell
복사
Get-CimInstance –ClassName Win32_DeviceGuard –Namespace root\Microsoft\Windows\DeviceGuard
참고
Win32_DeviceGuard WMI 클래스는 Windows 10 및 Windows 11 Enterprise 버전에서만 사용할 수 있습니다.
참고
모드 기반 실행 제어 속성은 Windows 10 버전 1803 및 Windows 11 버전 21H2부터 사용 가능한 것으로만 나열됩니다.
이 명령의 출력은 사용 가능한 하드웨어 기반 보안 기능 및 현재 사용하도록 설정된 기능의 세부 정보를 제공합니다.
AvailableSecurityProperties
이 필드는 Windows Defender Device Guard에 대한 관련 보안 속성의 상태를 열거 및 보고하는 데 도움이 됩니다.
값 설명
0. 있는 경우 관련 속성이 장치에 없습니다.
1. 있는 경우 하이퍼바이저 지원을 사용할 수 있습니다.
2. 있는 경우 보안 부팅을 사용할 수 있습니다.
3. 있는 경우 DMA 보호를 사용할 수 있습니다.
4. 있는 경우 보안 메모리 덮어쓰기를 사용할 수 있습니다.
5. 있는 경우 NX 보호를 사용할 수 있습니다.
6. 있는 경우 SMM 완화를 사용할 수 있습니다.
7. 있는 경우 모드 기반 실행 컨트롤을 사용할 수 있습니다.
8. 있는 경우 APIC 가상화를 사용할 수 있습니다.
InstanceIdentifier
특정 디바이스에 고유한 문자열입니다. 유효한 값은 WMI에 의해 결정됩니다.
RequiredSecurityProperties
이 필드는 가상화 기반 보안을 사용하도록 설정하는 데 필요한 보안 속성에 대해 설명합니다.
값 설명
0. 아무것도 필요하지 않습니다.
1. 있는 경우 하이퍼바이저 지원이 필요합니다.
2. 있는 경우 보안 부팅이 필요합니다.
3. 있는 경우 DMA 보호가 필요합니다.
4. 있는 경우 보안 메모리 덮어쓰기가 필요합니다.
5. 있는 경우 NX 보호가 필요합니다.
6. 있는 경우 SMM 완화가 필요합니다.
7. 있는 경우 모드 기반 실행 제어가 필요합니다.
SecurityServicesConfigured
이 필드는 Windows Defender Credential Guard 또는 HVCI 서비스가 구성되었는지 여부를 나타냅니다.
값 설명
0. 구성된 서비스가 없습니다.
1. 있는 경우 Windows Defender Credential Guard가 구성됩니다.
2. 있는 경우 HVCI가 구성됩니다.
3. 있는 경우 System Guard 보안 시작이 구성됩니다.
4. 있는 경우 SMM 펌웨어 측정값이 구성됩니다.
SecurityServicesRunning
이 필드는 Windows Defender Credential Guard 또는 HVCI 서비스가 실행 중인지 여부를 나타냅니다.
값 설명
0. 실행 중인 서비스가 없습니다.
1. 있는 경우 Windows Defender Credential Guard가 실행 중입니다.
2. 있는 경우 HVCI가 실행 중입니다.
3. 있는 경우 System Guard 보안 시작이 실행 중입니다.
4. 있는 경우 SMM 펌웨어 측정이 실행 중입니다.
버전
이 필드에는 이 WMI 클래스의 버전이 나열됩니다. 현재 유효한 값은 1.0뿐입니다.
VirtualizationBasedSecurityStatus
이 필드는 VBS를 사용할 수 있고 실행 중인지 여부를 나타냅니다.
값 설명
0. VBS를 사용할 수 없습니다.
1. VBS를 사용할 수 있지만 실행되고 있지 않습니다.
2. VBS를 사용할 수 있으며 실행 중입니다.
PSComputerName
이 필드에는 컴퓨터 이름이 나열됩니다. 컴퓨터 이름에 유효한 모든 값입니다.
사용할 수 있도록 활성화된 Windows Defender Device Guard 기능을 확인하는 또 다른 방법은 관리자 권한 PowerShell 세션에서 msinfo32.exe를 실행하는 것입니다. 이 프로그램을 실행하면 시스템 요약 섹션의 맨 아래에 Windows Defender Device Guard 속성이 표시됩니다.
시스템 요약의 속성을 Windows Defender Device Guard.
문제 해결
A. 디바이스 드라이버가 로드되지 않거나 런타임 시 충돌할 경우 장치 관리자를 사용하여 드라이버를 업데이트할 수 있습니다.
B. 위의 절차를 사용하여 HVCI를 설정한 후 소프트웨어 또는 디바이스 오작동이 발생하지만 Windows 로그인할 수 있는 경우 SIPolicy.p7b 파일 <OS Volume>\Windows\System32\CodeIntegrity\ 의 이름을 바꾸거나 삭제한 다음 디바이스를 다시 시작하여 HVCI를 해제할 수 있습니다.
C. 위 절차를 사용하여 HVCI를 켠 후 부팅하는 동안 심각한 오류가 발생하거나 시스템이 불안정한 경우, Windows RE(Windows 복구 환경)를 사용하여 복구할 수 있습니다. Windows RE로 부팅하려면 Windows RE 기술 참고자료를 참조하세요. Windows RE 로그인한 후 SIPolicy.p7b 파일 <OS Volume>\Windows\System32\CodeIntegrity\ 의 이름을 바꾸거나 삭제한 다음 디바이스를 다시 시작하여 HVCI를 해제할 수 있습니다.
HVCI를 끄는 방법
관리자 권한 프롬프트에서 다음 명령을 실행하여 HVCI 레지스트리 키를 해제로 설정합니다.
콘솔
복사
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity" /v "Enabled" /t REG_DWORD /d 0 /f
디바이스를 다시 시작합니다.
HVCI가 성공적으로 비활성화되었는지 확인하려면 시스템 정보를 열고 가상화 기반 보안 서비스 실행 중을 확인합니다. 지금은 표시된 값이 없어야 합니다.
가상 머신에서 HVCI 배포
HVCI는 물리적 컴퓨터와 마찬가지로 Hyper-V 가상 머신을 보호할 수 있습니다. Windows Defender 애플리케이션 제어를 사용하도록 설정하는 단계는 가상 머신 내에서 동일합니다.
WDAC는 게스트 가상 머신에서 실행되는 맬웨어로부터 보호합니다. 호스트 관리자의 추가적인 보호를 제공하지는 않습니다. 호스트에서 가상 머신에 대해 WDAC를 사용하지 않도록 설정할 수 있습니다.
PowerShell
복사
Set-VMSecurity -VMName <VMName> -VirtualizationBasedSecurityOptOut $true
Hyper-V 가상 머신에서 HVCI를 실행하기 위한 요구 사항
Hyper-V 호스트는 최소한 WindowsServer 2016 또는 Windows10 버전 1607을 실행해야 합니다.
Hyper-V 가상 컴퓨터는 2세대로서, 최소한 WindowsServer 2016 또는 Windows 10을 실행 중이어야 합니다.
HVCI 및 중첩된 가상화를 동시에 사용하도록 설정할 수 있습니다. 가상 머신에서 HyperV 역할을 사용하도록 설정하려면 먼저 Windows 중첩된 가상화 환경에서 HyperV 역할을 설치해야 합니다.
가상 파이버 채널 어댑터는 HVCI와 호환되지 않습니다. 가상 머신에 가상 파이버 채널 어댑터를 연결하기 전에 먼저 다음을 사용하여 Set-VMSecurity가상화 기반 보안을 옵트아웃해야 합니다.
통과 디스크에 대한 AllowFullSCSICommandSet 옵션은 HVCI와 호환되지 않습니다. AllowFullSCSICommandSet을 사용하여 통과 디스크를 구성하기 전에 먼저 다음을 사용하여 Set-VMSecurity가상화 기반 보안을 옵트아웃해야 합니다.
권장 콘텐츠
커널 DMA Protection(Windows) - Windows security
커널 DMA Protection은 Thunderbolt™ 3 포트에 연결된 PCI 핫 플러그 디바이스를 사용하여 드라이브 기반 DMA(직접 메모리 액세스) 공격으로부터 PC를 보호합니다.
System Guard 보안 시작 및 SMM 보호(Windows 10) - Windows security
Windows 10 디바이스의 시작 보안을 향상시키기 위해 System Guard SMM 보호(System Guard Secure Launch and System Management Mode)를 구성하는 방법을 설명합니다.
VBS(가상화 기반 보안)
VBS를 사용하도록 설정하기 위해 OEM이 수행해야 하는 사항에 대한 지침을 제공합니다.
하이퍼바이저로 보호된 코드 무결성 사용 설정
하이퍼바이저로 보호된 코드 무결성 사용 설정
관련자료
-
링크