事件始末
Microsoft 突然终止了 IDRIX 的开发者账户——IDRIX 正是全球使用最广泛的开源磁盘加密工具 VeraCrypt 背后的开发组织。此次账户封禁实际上已令 VeraCrypt 失去发布新版 Windows 兼容更新的能力,原因在于现代 Windows 系统要求内核模式驱动必须携带 Microsoft 颁发的有效数字签名。
一旦失去对 Microsoft 硬件开发者计划及其代码签名基础设施的访问权限,任何面向当前 Windows 版本的新版 VeraCrypt 都将无法随附经过正确签名的驱动程序。这绝非一个无关痛痒的行政程序问题——未签名或签名不合规的驱动会被 Windows Secure Boot 及驱动签名强制执行(Driver Signature Enforcement)策略拦截,这意味着运行最新版 Windows 10 和 Windows 11 的用户,若不关闭核心安全功能,将无法安装未来的 VeraCrypt 新版本。
本次账户终止既无明确的提前警告,Microsoft 也未给出详细的公开解释,VeraCrypt 团队及其用户社区陷入一片混乱,急寻答案与应对方案。
技术深度解析
驱动签名为何至关重要
VeraCrypt 在内核层运行,对整块磁盘或分区提供透明的实时加密。为此,它必须在 Windows 上加载一个内核模式驱动。自 Windows Vista 起,Microsoft 开始强制推行驱动签名强制执行(Driver Signature Enforcement,DSE)机制;自 Windows 10 1607 版本起,所有新内核驱动必须经由 Microsoft 自身的 Hardware Dev Center 进行交叉签名,仅凭独立证书颁发机构的签名已不再满足要求。
这一政策的出台,本是为了打击历史上频繁利用未签名驱动加载漏洞的 Rootkit 与 Bootkit 恶意软件。然而其副作用也显而易见:任何需要随附内核驱动的开源安全项目,都必须与 Microsoft 合作伙伴计划维持有效的合作关系,才能正常分发软件。
VeraCrypt 所依赖的签名流程
- EV 代码签名证书:用于在向 Microsoft Hardware Dev Center(前身为 WHQL)提交驱动时验证开发者身份。
- Microsoft Hardware Dev Center 账户:用于提交驱动包以获取 Microsoft 交叉签名的门户平台。
- 交叉签名驱动二进制文件:最终交付物——一个嵌入了 Microsoft 副署签名的
.sys文件,Windows 将无障碍加载该文件。
账户一旦被终止,IDRIX 便彻底失去了第二步的访问权限。即便他们持有有效的 EV 证书,也无法获得现代 Windows 系统所要求的 Microsoft 副署签名。
现有变通方案及其局限性
用户与 VeraCrypt 团队已讨论了几种潜在的缓解措施,但无一称得上理想:
- 通过 bcdedit 禁用 DSE:执行
bcdedit /set testsigning on可允许加载未签名驱动,但同时也会禁用 Secure Boot 保护,并可能触发企业端点安全系统的告警。 - 自定义 Secure Boot 密钥:从技术层面而言,在部分硬件上可行,但远超普通用户的操作能力,且与众多 OEM 厂商的设备不兼容。
- 以新账户进行社区 Fork:社区 Fork 版本理论上可以注册新的 Microsoft 开发者账户,但这将引发信任、维护以及供应链完整性等一系列问题。
- ELAM / 认证签名路径:Microsoft 提供了一条无需完整 WHQL 测试的认证签名通道,但该路径仍需持有有效的 Hardware Dev Center 账户。
对开源安全工具生态的深远影响
此次事件暴露了 Windows 平台开源安全生态中一处结构性的脆弱性。VeraCrypt 这类依赖志愿者或极少人手维护的项目,如今必须穿越一套不透明的企业管控机制,才能发布可正常运行的软件。Microsoft 的合作伙伴计划本是为商业硬件厂商设计,并非面向规模较小的开源非营利项目,而其账户终止流程显然缺乏适用于社区项目的申诉机制。
谁应当关注此事
企业 IT 与安全团队:将 VeraCrypt 用于终端加密合规的组织——尤其是金融、医疗或政府等受监管行业——将面临更新链断裂的潜在风险。一旦 VeraCrypt 被发现存在严重漏洞,修复版本可能无法部署至标准 Windows 配置的系统上。
高级个人用户与新闻工作者:VeraCrypt 是记者、活动人士和研究人员等高风险群体保护敏感数据的首选工具。其更新节奏受阻,直接关系到用户的人身安全。
开源软件维护者:任何需要为 Windows 发布内核驱动的项目,都应将此事视为一记警钟。仅依赖单一企业账户来维系软件分发能力,本身就是一个致命的单点故障。
Microsoft 合作伙伴与开发者:账户被终止的原因缺乏透明度,且显然没有清晰的申诉流程,这一治理问题影响着所有依赖 Microsoft 签名基础设施的开发者。
本周行动建议
- 审查 VeraCrypt 部署情况:梳理环境中所有使用 VeraCrypt 的系统,记录当前版本,并评估已知漏洞对这些版本的影响程度。
- 切勿在组织范围内禁用 DSE:为绕过此问题而全面关闭驱动签名强制执行,将带来远超加密收益的巨大攻击面风险。
- 持续关注 IDRIX 的 GitHub 仓库与论坛:VeraCrypt 团队正在积极同步最新进展,请留意有关账户恢复、社区 Fork 或官方指引的公告。
- 若连续性至关重要,请评估替代方案:BitLocker(内置于 Windows Pro/Enterprise)或 Linux/macOS 上的 VeraCrypt(不受此限制影响),可作为部分使用场景下的过渡方案。
- 推动 Microsoft 政策改革:如果您拥有 Microsoft 客户代表,或参与 Windows Insider/合作伙伴计划,请积极呼吁为面临账户终止的开源项目建立公开、透明的申诉机制。
VeraCrypt 事件再次提醒我们:开源工具链的安全性,取决于其内嵌企业依赖中最薄弱的那一环。在 Microsoft 恢复账户或提供透明的解决路径之前,这款全球最受信赖的加密工具之一,将在其最大的运行平台上持续悬而未决。