Windows 11 关闭基于虚拟化的安全性(VBS)

🍋 Windows 11 关闭基于虚拟化的安全性(VBS)

语雀文档《🍋 Windows VBS Disable》

🍐 下载汇总
dgreadiness_v3.6.zip 】【powershell】(来源 微软官方 Device Guard and Credential Guard hardware readiness tool

tool.zip 】【BAT 脚本】(来源 华为笔记本关闭内存完整性和VBS后如何重新开启

HyperV-off.zip】【EXE】(来源 雷电模拟器官网 Hyper-V 关闭教程

Windows11轻松设置1.12正式版【20251207】.7z

🍐 问题描述

Scenario 1:VMware Workstation Pro 安装提示如下。

Scenario 2:打开虚拟机时直接提示启动失败。

Scenario 3:运行普通虚拟机提示如下,侧通道缓解问题。

Scenario 4:运行带嵌套虚拟化的虚拟机如下(除提示侧通道环境问题外还提示硬件虚拟化未开启)。

🍐 问题分析(VBS 影响)

CPU 硬件虚拟化支持(新设备默认开启 CPU 硬件虚拟化支持)

较旧设备可能默认未开启 CPU 虚拟化支持,需要在 BIOS 中手动启用 CPU 虚拟化支持,此时运行带硬件虚拟化的虚拟机时不会提示"此平台不支持虚拟化的 Intel VT-v/EPT"等 CPU 硬件虚拟化支持问题。而较新设备会在默认启用 DMA 时自动启用 CPU 虚拟化支持,并且新设备默认启用 CPU 虚拟化支持,在运行带硬件虚拟化的虚拟机时不会提示"此平台不支持虚拟化的 Intel VT-v/EPT"。

VMware Workstation Pro 需在 BIOS 开启 CPU 硬件虚拟化支持,开启 CPU 硬件虚拟化支持后,Windows 系统会自动开启基于虚拟化的安全性(VBS,Virtualization-based Security),而 VMware Workstation Pro 使用的虚拟化技术和 Windows 系统基于虚拟化的安全性技术冲突。

基于虚拟化的安全性(VBS)技术可以保护虚拟机和系统安全,但会降低电脑性能,也会让一些依赖硬件虚拟化程序与之冲突。

查看:Win + R 运行 >msinfo32 可查看当前系统是否启用基于虚拟化的安全性(VBS)。

基于虚拟化的安全功能(VBS)使用硬件虚拟化和 Windows 虚拟机监控程序来创建独立的虚拟环境,该环境将成为假定内核遭到入侵的 OS 的信任根。 Windows 使用这种独立环境来托管许多安全解决方案,为它们提供了显著增强的保护,以防止操作系统中的漏洞,并防止利用恶意攻击试图破坏保护。 VBS 强制实施限制,以保护重要的系统和操作系统资源,或保护安全资产(如经过身份验证的用户凭据)。

其中一个安全解决方案是内存完整性,它通过在 VBS 的隔离虚拟环境中运行内核模式代码完整性来保护和强化 Windows。 内核模式代码完整性是指 Windows 进程,它在启动所有内核模式驱动程序和二进制文件之前对其进行检查,并防止未签名或不受信任的驱动程序或系统文件加载到系统内存中。 内存完整性还限制可用于入侵系统的内核内存分配,确保在安全运行时环境中传递代码完整性检查后,内核内存页才会成为可执行文件,并且可执行文件页本身永远不会可写。 这样,即使存在允许恶意软件试图修改内存的缓冲区溢出等漏洞,也无法修改可执行代码页,并且修改后的内存也无法执行。

参考文档:基于虚拟化的安全(VBS)

Device Guard/Credential Guard 默认启用,也会拉起基于虚拟化的安全性(VBS)。

Windows 11 22H2、Windows Server 2025 开始,默认启用了 Device Guard/Credential Guard
对应的 Intel 12 代及以上 CPU,若硬件支持,则会自动启动此功能,并且将 基于虚拟化的安全性 启动。

参考文档:默认启用 Credential Guard配置 Credential Guard

分析(VBS 影响)

Windows 10 系统(关闭方法简单)。若已经在 BIOS 中开启 CPU 硬件虚拟化支持,在 Windows 10 系统中基于虚拟化的安全性(VBS)会在启用 Hyper-V 情况下默认启用,不带嵌套虚拟化功能的虚拟机启动会由产生典型 Hyper-V 冲突引起的侧通道缓解问题,不会提示不支持 Intel VT-v/EPT。此时可使用管理员身份运行命令bcdedit /set hypervisorlaunchtype off用以关闭 Hyper-V 的 Hypervisor,然后重启系统后,基于虚拟化的安全性(VBS)会被关闭。

正常 Windows 10 上的解决方案,可运行如下命令,并确保无任何 Hyper-V 相关功能,此时可直接关闭基于虚拟化的安全性(VBS)。

bcdedit /set hypervisorlaunchtype off

Windows 11 系统(关闭方法复杂)。一般安装 Windows 11 系统的硬件都比较新,默认 CPU 硬件虚拟化就已经开启,如若未开启,可手动进入 BIOS 确认并开启 CPU 硬件虚拟化支持。但在 Windows 11 系统上,即使开启 CPU 硬件虚拟化支持,也可能因为基于虚拟化的安全性(VBS)导致出现不支持 Intel VT-v/EPT 等异常,此时需要强制关闭基于虚拟化的安全性(VBS)。而在 Windows 11 系统上,根据不同的硬件设备,不同的 Windows 11 系统版本,能够真正关闭基于虚拟化的安全性(VBS)方法不一,并且在 Windows 11 系统上 Device Guard/Credential Guard 更会自动拉起基于虚拟化的安全性(VBS),故而要关闭 VBS,还要关闭 Device Guard/Credential Guard。对此,网上有很多解决方案,但是似乎根据不同的 Windows 11 版本或者不同厂商硬件,禁用方法会不完全相同。甚至有可能实施解决方案后,当时重启系统后基于虚拟化的安全性关闭成功,但是再次重启系统,又会再次运行基于虚拟化的安全性,而只要基于虚拟化的安全性处于运行状态,就会导致 VMware 虚拟机运行异常。本文中将列举多种禁用方法,可以都尝试下。

确认当前系统是否已经启用基于虚拟化的安全性(VBS)

若查看到 基于虚拟化的安全性 是“正在运行”或“已启用未运行”,都属于未关闭状态。

运行 msinfo32.exe 或者直接 Win + S 搜索“系统信息”,查看“基于虚拟化的安全性 ”(下图为禁用成功状态)

🍐 解决方案

网上解决方案很多,汇总解决方案可参考【Win11最新关闭VBS的几种方法(基于虚拟化的安全性)

Windows 11 中 Device Guard/Credential Guard 默认启用,会拉起基于虚拟化的安全性(VBS)功能,故而 Windows 11 还需要禁用Device Guard/Credential Guard才能完整关闭 基于虚拟化的安全性。

网上方法很多,可以自行搜索,但是实测在 Windows 11 24H2 都不是单方案可以解决的类型,需要结合使用。

以下为此处解决方案,大致过程为组合常规禁用、注册表配置、组策略配置、关闭内存完整性、关闭 defender、运行工具脚本。

重要:关闭基于虚拟化的安全性,会连带禁用依赖此特性的操作系统其他功能。

1.Windows Hello:Windows Hello(PIN、面部/指纹识别)会受到影响。此时如果登录的是微软账户,并且无法退出微软账户,再次进入系统使用微软账户的密码进行登录(也可尝试新建管理员账号作为备用或者尝试删除 Windows Hello 功能,改用本地账户密码登录),如果未登录微软账户,但是有使用 Windows Hello,建议先删除 Windows Hello 的指纹、人脸和 PIN,改用本地账户密码进行登录。

2.Windows 沙盒功能:系统隔离测试环境。

3.Hyper-V:Hyper-V 虚拟机监控平台及其相关功能无法使用。

4.WSL2:在 WSL2 中为使得 Linux 系统支持原生内核,会使用到 Hyper-V 启动原生 Linux 系统内核。

🥝 方法 1:禁用 Hyper-V 虚拟机监视器

右击开始菜单,打开终端管理员,然后输入以下命令,点击回车。

关闭:bcdedit /set hypervisorlaunchtype off

恢复: bcdedit /set hypervisorlaunchtype auto

🥝 方法 2:雷电模拟器

安装雷电模拟器,官网:https://www.ldmnq.com

安装雷电模拟器时,会提示开启了虚拟服务,然后点击重启电脑,雷电模拟器会自动帮您关闭掉VBS。

🥝 方法 3:关闭内存完整性并同步设置组策略禁用 Device Guard

Windows 安全中心,手动将内核隔离中的内存完整性关闭,使用下列工具可以直接关闭,建议关闭内存完整、WDAC、启用基于虚拟化的安全性。

手动关闭“内存完整性”。在任务栏中找到打开“Windows安全中心”—设备安全性—内核隔离—关闭“内存完整性”开关。

工具关闭“内存完整性”(下述工具仅其中之一,但不保证能百分百关闭成功,尤其是基于虚拟化的安全性这一项。)

【NEW】Windows11轻松设置1.12正式版【20251207】.7z

组策略设置:计算机配置 -> 管理模板 -> 系统 -> Device Guard -> 打开基于虚拟化的安全(设置为禁用)

最后重启操作系统。

🥝 方法 4:修改注册表禁用 Device Guard

修改注册表有系统稳定性风险,建议操作前备份资料。

注册表:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard

EnableVirtualizationBasedSecurity 值为 0

HypervisorEnforcedCodeIntegrity 值为 0

如果上述注册表值经过前面的步骤还是没有,则手动创建键值,最终结果如下。

此处由于最终都是需要重启操作系统,可以在配置完注册表、组策略,最后一次性重启操作系统。

🥝 方法 5【推荐】:工具方式关闭基于虚拟化的安全性(VBS)

关闭Device Guard/Credential Guard在 Windows 11 系统中,由于 Device Guard 会自动拉起基于虚拟化的安全性(VBS),故而关闭 Device Guard 是必须做的,微软官方和一些电脑 OEM 厂商也提供了一些工具来关闭 Device Guard 以实现关闭基于虚拟化的安全性(VBS)。

强调:关闭基于虚拟化的安全性,会连带禁用依赖此特性的操作系统其他功能。

1.Windows Hello:Windows Hello(PIN、面部/指纹识别)会受到影响。此时如果登录的是微软账户,并且无法退出微软账户,再次进入系统使用微软账户的密码进行登录(也可尝试新建管理员账号作为备用或者尝试删除 Windows Hello 功能,改用本地账户密码登录),如果未登录微软账户,但是有使用 Windows Hello,建议先删除 Windows Hello 的指纹、人脸和 PIN,改用本地账户密码进行登录。

2.Windows 沙盒功能:系统隔离测试环境。

3.Hyper-V:Hyper-V 虚拟机监控平台及其相关功能无法使用。

4.WSL2:在 WSL2 中为使得 Linux 系统支持原生内核,会使用到 Hyper-V 启动原生 Linux 系统内核。

运行脚本前提:

1.无论是 BAT、Powershell 脚本还是 EXE 执行程序,此处必须以管理员身份执行。

2.如果是 Powershell 脚本,必须设置允许本地脚本执行策略。set-ExecutionPolicy RemoteSigned

网上流传的工具如下。部分工具可能与厂商硬件有一定适配,不一定确保百分百成功,但均可尝试一下。

工具汇总下载:

dgreadiness_v3.6.zip 】【powershell】(来源 微软官方 Device Guard and Credential Guard hardware readiness tool

tool.zip 】【BAT 脚本】(来源 华为笔记本关闭内存完整性和VBS后如何重新开启

HyperV-off.zip】【EXE】(来源 雷电模拟器官网 Hyper-V 关闭教程

1.【dgreadiness_v3.6.zip 】【powershell】(来源 微软官方 Device Guard and Credential Guard hardware readiness tool

以管理员身份运行 powershell,然后依次输入下列命令
Set-ExecutionPolicy RemoteSigned

cd 解压后的文件夹,右键复制文件地址,粘贴

.\DG_Readiness_Tool_v3.6.ps1 -Disable

运行完后,需要重启操作系统,重启过程中会有提示,按 F3,再任意键,再 F3,再任意键(可以直接按 4 次 F3)。

2.【tool.zip 】【BAT 脚本】(来源 华为笔记本关闭内存完整性和VBS后如何重新开启

以管理员身份直接运行 tools.bat 即可,运行完成脚本后会提示需要重启操作系统,在操作系统重启过程中会有提示(大致如下图所示),按 F3,再任意键,再 F3,再任意键(可以直接按 4 次 F3)。

3.【HyperV-off.zip】【EXE】(来源 雷电模拟器官网 Hyper-V 关闭教程

🍐 其他说明

🥝 Bitlocker 问题

部分电脑重启系统后出现资源管理器中磁盘驱动器显示黄色感叹号,如下图(网图)。此时 Windows 设置中,以及 Bitlocker 管理器也无法手动禁用 Bitlocker(没有点击关闭的菜单)。

原因:系统中有 Bitlocker,但是暂未激活,Windows 11 默认会启用 Bitlocker,即使此前已经手动关闭 Bitlocker 加密,但是实际经过上述操作后重启系统还是会出现黄色感叹号,可能上述过程中改了很多关键安全性配置,故而出现此种情况。

解决:运行如下命令解密。

manage-bde -off c: 解密 C 盘的示例,其他盘自行替换

manage-bde -status 查看状态

拓展:锁定和解锁 bitlocker。

manage-bde.exe -lock F

manage-bde.exe -unlock F: -pw

🥝 可能需要的 BIOS 设置

正常而言,BIOS 中启用硬件虚拟化,并关闭安全启动,部分新硬件有内存完整性的 BIOS 设置,直接关闭。

一般情况下,BIOS 中硬件虚拟化,DMA、安全启动 同时开启并不影响此项禁用。

此处我的 ThinkPad T14p Gen3 是只关闭了 BIOS 中的内存保护,安全启动和 DMA 均开启的。

posted @ 2021-07-28 20:57  mpleased  阅读(6225)  评论(0)    收藏  举报