一、问题背景:Secure Boot + KEK CA 2023
最近不少用户在检查Windows虚拟机的安全启动Secure Boot配置 时,会发现一个异常现象:
在虚拟机的 Secure Boot → Key Exchange Key(KEK)列表中,
只存在 “Microsoft Corporation KEK CA 2011”,
却 缺少 “Microsoft Corporation KEK CA 2023” 证书。
一般来说,这个问题在以下场景中尤其容易被发现:
- 准备应对 微软 Secure Boot 证书轮换(2023 → 2026)
- ESXi 7.x / 8.x 上运行的 Windows Server 2019 / 2022
- 启用了 UEFI + Secure Boot 的 Windows VM
- 做 合规检查 / 安全基线 / 证书审计 时
其实除了虚拟机,实体机服务器装Windows系统,也会出现这个问题。一般来说,服务器解决这个问题,只需要升级最新的BIOS即可。那VM里面出现这个问题,应该怎么解决了?
二、根本原因分析
根据 Broadcom / VMware 官方 KB(KB 421593),其实问题并不在 Windows,也不在当前 ESXi 版本本身,而是在一个很多人忽略的文件:
👉 VM 的 NVRAM 文件
核心原因总结一句话:
虚拟机的
.nvram文件是在旧版本 ESXi 上创建的,
即使后续升级了 ESXi,该 NVRAM 中的 Secure Boot 证书也不会自动更新。
具体来说:
- VM 最初创建于:
- ESXi 7.0 / 7.0 U1 / 7.0 U2
- 或 ESXi 8.0 早期版本(< 8.0.2)
- 当时 Secure Boot 默认只包含:
- KEK CA 2011
- 后续:
- 升级了 ESXi
- 但 VM 的 NVRAM 文件被完整保留
- 结果:
- Secure Boot 的 KEK 列表依然停留在旧证书集
📌 ESXi 升级 ≠ VM Secure Boot 证书自动升级
三、解决方案(官方 + 实战验证)
✅ 推荐解决步骤(安全、有效)
Step 1:关闭虚拟机
Step 2:升级虚拟机硬件版本
- 在vCenter vSphere Client中,对着那些Windows虚拟机点右键,升级VM兼容性:
- Right-click the VM > Compatibility > Upgrade VM Compatibility.
- 升到当前你的ESXi所支持的最新虚拟机硬件版本VM Hardware Version
Step 3:重命名或删除旧的 .nvram 文件
- 进入 Datastore
- 找到对应 VM 目录
- 将:
xxx.nvram重命名为:xxx.nvram.bak
⚠️ 不建议直接删除,保留备份更稳妥。
Step 4:启动虚拟机
- ESXi 会自动:
- 重新生成新的 NVRAM 文件
- 注入 最新 Secure Boot 证书集
- 此时再检查 KEK:
- ✅ Microsoft Corporation KEK CA 2023 会出现
四、这个问题不处理会怎样?
短期来看:
- Windows 还能正常启动
- Secure Boot 功能表面正常
中长期风险:
- 微软逐步淘汰 2011 证书
- 后续 DB / DBX 更新依赖新 KEK
- 可能导致:
- Secure Boot 更新失败
- 安全审计不通过
- 未来兼容性问题
官方KB链接:https://knowledge.broadcom.com/external/article/421593/missing-microsoft-corporation-kek-ca-202.html







