needhelp
← 返回博客

YellowKey & BitUnlocker:Windows BitLocker 绕过漏洞深度分析——看起来像后门的加密崩溃

作者 xingwangzhe
Windows
BitLocker
安全
WinRE
YellowKey
CVE

YellowKeyBitUnlocker:两个独立发现但属于同一类漏洞的研究——WinRE 的自动解锁信任边界遭到利用,从而绕过 BitLocker 全盘加密。一个由外部研究员发现,他称之为后门;另一个由微软自己的 STORM 团队发现,已修复为四个 CVE。


同一枚硬币的两面

在不到一年的时间里,两个从完全不同方向出发的团队得出了同样可怕结论:BitLocker 默认的仅 TPM 保护模式可以通过 Windows 恢复环境(WinRE)被静默绕过,任何有物理接触的人都能获得已“加密”驱动器的完整命令行权限。

维度 BitUnlocker(微软 STORM) YellowKey(Nightmare-Eclipse)
发现者 微软 STORM 团队 独立研究员 Nightmare-Eclipse
公开时间 Black Hat USA 2025 / DEF CON 33(2025年8月) GitHub 公开披露(2026年5月)
补丁状态 2025年7月补丁星期二(4个 CVE) 撰写本文时暂无补丁
攻击方式 多步骤 BCD + PBR 操纵 单一 USB,WinRE 启动时按住 CTRL
受影响版本 Windows 10/11 + Server 仅 Windows 11 + Server 2022/2025

令人不安的是:两者都不需要破解 AES,都不需要暴力破解恢复密钥。它们只是走过了一扇从未上锁的门。


BitUnlocker:微软自查漏洞

微软的 STORM 团队在 Black Hat USA 2025 和 DEF CON 33 上展示了 BitUnlocker。它揭示了 WinRE 中的四个不同攻击向量,均在 2025 年 7 月补丁星期二被修复:

CVE-2025-48804:SDI 文件注入

WinRE 的启动过程使用 Boot.sdi(系统部署镜像)文件。研究人员发现可以将恶意 Windows 镜像附加到合法的 Boot.sdi 后面。由于 WinRE 在 SDI 头部之后未正确验证 WIM,不受信任的镜像以受信任的身份启动,继承了 WinRE 对 BitLocker 卷的自动解锁权限。

CVE-2025-48800:tttracer.exe 滥用

WinRE 的“脱机扫描”计划操作用于对加密卷运行防病毒扫描。tttracer.exe(时间旅行调试器)——一个合法的微软签名二进制文件——可以被用来代理执行 cmd.exe,而不会触发 BitLocker 的重新锁定机制。命令提示符继承了 WinRE 访问加密卷的特殊权限。

CVE-2025-48003:SetupPlatform.exe 热键

SetupPlatform.exe —— 一个在 Windows 升级后仍保留在受信任应用注册表中的组件 —— 注册了一个 Shift+F10 热键,用于启动命令提示符。关键在于这不会触发 BitLocker 卷的重新锁定。能够影响 WinRE 的 ReAgent.xml 配置的攻击者可以利用此漏洞获得持续访问。

CVE-2025-48818:通过 PBR 完全解密

这是最严重的一个。通过操纵启动配置数据(BCD)存储,攻击者可以重定向 WinRE 的一键重置(PBR)流程。ResetSession.xml 文件包含一个 DecryptVolume 指令。通过在未受保护的恢复卷上放置恶意 BCD 存储,攻击者欺骗 PBR 完全解密 BitLocker 保护的操作系统卷。

四个 CVE 的 CVSS v3.1 评分均为 6.8(中危)——因为需要物理接触。但任何安全从业者都知道,“需要物理接触”在笔记本电脑从咖啡馆被偷走时是毫无安慰作用的。


YellowKey:轰动互联网的那个

2026 年 5 月,研究员 Nightmare-Eclipse 在 GitHub 上发布了 YellowKey,描述立即引爆了社区:

“这是我发现的最疯狂的东西之一,感觉就像个 后门,但谁知道呢,也许我只是疯了。”

五步利用

  1. 在 U 盘上创建 FsTx 文件夹,路径为 USB:\System Volume Information\FsTx
  2. 将 U 盘插入 BitLocker 保护的 Windows 11 电脑
  3. 按住 SHIFT 键点击 重启(启动进入 WinRE)
  4. 系统重启时,松开 SHIFT,按下并 按住 CTRL
  5. 一个命令窗口弹出,拥有对 BitLocker 加密卷的 完全无限制访问权限

就这么简单。没有复杂的 payload。没有密码破解。没有恢复密钥。只需要一个 U 盘和恰到好处的按键时机。

原理

负责此行为的组件 仅存在于 WinRE 镜像中。它在配置文件(RecoverySimulation.ini)中检查一个名为 FailRelock 的标志。当该标志被设置时,WinRE 在恢复过程中解锁 BitLocker 驱动器后,根本不会重新锁定它

U 盘上的 RecoverySimulation.ini 触发了 WinRE 恢复工具的“测试模式”:

[Simulation]
Active=Yes
FailRelock=1

测试模式激活后,WinRE 的 cmd.exe 继承了解锁状态——可以像 BitLocker 不存在一样读写加密卷。

Nightmare-Eclipse 演示了此漏洞影响 Windows 11 和 Server 2022/2025,但 不影响 Windows 10,这表明存在漏洞的代码是在 Windows 11 附带的 WinRE 版本中引入的。


后门还是 Bug?证据链

YellowKey 最令人不安的是指向故意行为的 证据模式

观察 暗示
FailRelock 调试标志 存在于 WinRE 中,而不是具有相同文件名的普通 Windows 组件中 一个刻意的测试工具被发布到了生产环境
完全相同的二进制名称存在于普通 Windows 中,但 没有 绕过功能 这不是一个泛泛的调试遗留物——它是专门被放在 WinRE 中的
仅 Windows 11+ 受影响(Windows 10 不受影响) 该代码是在 Windows 11 的新 WinRE 镜像中引入的
没有任何文档、配置工具或公开引用 标准的调试/测试标志通常会在内部记录——这个似乎是故意隐藏的

The Register 引用的安全专家表示,根据现有信息“不可能验证”这是否是故意的后门。但间接证据至少足够可疑,足以要求微软给出详细解释。


YellowKey vs BitUnlocker 对比

维度 BitUnlocker YellowKey
技术复杂度 高——多步骤 BCD、PBR 和 XML 操作 低——简单 USB + 按键组合
执行时间 ~10-30 分钟 ~2 分钟
持久性 可以永久解密卷 仅会话级访问
CVE CVE-2025-48800, 48003, 48804, 48818 无 CVE 分配
补丁状态 2025年7月已修复 未修复
Windows 10 影响
后门嫌疑 否(标准漏洞披露) 是(研究员声称故意的)

两者互补:BitUnlocker 证明即使是微软自己的安全团队也发现了 WinRE 中的系统性信任问题,而 YellowKey 则表明问题可能比任何人想象的更严重——也许是有意为之。


为什么仅 TPM 远远不够

现代 Windows 设备上 BitLocker 的默认配置使用 仅 TPM 保护。TPM 验证启动完整性(PCR 寄存器),如果系统正常启动则自动释放加密密钥。这提供了 无缝的用户体验——每次启动无需输入密码。

但这同时也意味着:任何能启动设备的人都能拿到密钥。

保护模式 对 YellowKey 的抵抗 用户体验
仅 TPM 被攻破 最好(无密码)
TPM + PIN 能抵抗 好(启动时输入 PIN)
TPM + USB 密钥 能抵抗 差(需要 USB)
仅密码 能抵抗 差(每次启动输入密码)
恢复密钥 不适用 仅紧急使用

YellowKey 利用之所以成功,是因为 仅 TPM 自动解锁隐式信任 WinRE。当你添加 PIN 后,TPM 不会在没有 PIN 的情况下释放密钥——即使在 WinRE 中也是如此。这打破了攻击链。


纵深防御:缓解策略

立即执行(无需重启)

针对 YellowKey,在微软发布补丁之前:

  1. 启用 TPM + PIN 保护 — 以管理员身份运行 manage-bde -protectors -add C: -TPMAndPIN
  2. 设置 BIOS/UEFI 密码 — 阻止启动设备选择被篡改
  3. 禁用外部启动 — 配置 UEFI 仅从内部存储启动
  4. 禁用 WinRE — (不推荐用于生产环境,但作为最后手段)reagentc /disable

长期(组织策略)

控制措施 实施方式
BitLocker 组策略 强制“启动时需要附加身份验证”→“配置 TPM 启动 PIN:要求使用 TPM 启动 PIN”
Secure Boot + DBX 确保启用 Secure Boot 并拥有最新的撤销列表(dbx
Windows Defender 系统防护 启用 System Guard Secure Launch(SMM 保护)
更新 WinRE 应用最新的 WinRE 服务堆栈更新(KB5034231 及更高版本)
BitLocker 网络解锁 对于加入域的台式机,使用网络解锁以避免仅 TPM 的陷阱

检测

由于 YellowKey 完全在 WinRE 中运行,操作系统启动之前,因此没有可靠的基于日志的检测方法。但:

  • 预启动行为监控:意外启动到 WinRE 的设备应触发调查
  • 物理接触审计:追踪曾脱离视线范围的设备
  • USB 启动日志:UEFI 固件可能会记录启动设备选择

这对 BitLocker 威胁模型意味着什么

传统 BitLocker 威胁模型:

具有物理接触的攻击者:除非拥有恢复密钥或能暴力破解 TPM + PIN,否则受到保护。

YellowKey 之后的更新威胁模型:

具有物理接触的攻击者(Windows 11+):使用 U 盘和按住一个键,~2 分钟内完全沦陷。

这是范式转变。这意味着:

  1. Windows 11 上的仅 TPM BitLocker 实际上对坚定的物理攻击者形同虚设
  2. 笔记本电脑被盗现在等于数据泄露,除非启用 TPM+PIN 或更强的保护
  3. 依赖默认 BitLocker 配置的企业部署已暴露——“打勾就忘”的时代结束了

最令人不安的是不对称性:攻击者只需要一个 U 盘和两分钟的物理接触。防御者需要推行策略变更、教育用户,并确保每台设备都启用了 TPM+PIN。


披露时间线

日期 事件
2024-2025 微软 STORM 团队研究 WinRE 攻击面
2025-07 微软在 7 月补丁星期二修复 BitUnlocker CVEs
2025-08 STORM 在 Black Hat USA 和 DEF CON 33 展示 BitUnlocker
2026-05-12 Nightmare-Eclipse 在 GitHub 发布 YellowKey
2026-05-13 The Register 与安全专家确认 YellowKey
2026-05-13 社区逆向工程确认 FailRelock 调试标志机制
2026-05-14 本文发布——微软暂无官方补丁

更大的图景:WinRE 信任失败的规律

YellowKey 不是孤立事件。放眼更广阔的图景:

漏洞 年份 组件 影响
CVE-2024-20666 2024 Secure Boot / BitLocker 安全功能绕过
CVE-2025-48800 2025 WinRE / tttracer 通过脱机扫描绕过 BitLocker
CVE-2025-48003 2025 WinRE / SetupPlatform 通过热键绕过 BitLocker
CVE-2025-48804 2025 WinRE / Boot.sdi 启动验证绕过
CVE-2025-48818 2025 WinRE / PBR 完全解密 BitLocker 卷
YellowKey 2026 WinRE / FsTx 调试标志 一键绕过 BitLocker

WinRE/WinPE 攻击面一再被证明是 BitLocker 链条中最薄弱的环节。微软隐式信任 WinRE 进行自动解锁的架构决策——没有对 WinRE 正在做什么进行密码学证明——创造了一个根本性的设计矛盾:如何既允许恢复又不允许滥用恢复?

到目前为止,每一个答案都失败了。


结论

YellowKey 和 BitUnlocker 代表了同一个根本问题:当具有物理接触的攻击者可以自己操纵恢复环境时,WinRE 对 BitLocker 卷的特权访问无法仅通过软件策略得到充分保护。

如果你在组织中负责 Windows 安全:

今天就去审计你的 BitLocker 配置。 如果未强制使用 TPM+PIN,请假设你的加密数据对任何拿着螺丝刀和 U 盘的人都是可访问的。

培训你的用户。 被盗的笔记本电脑不再仅仅是硬件损失——有了 YellowKey,如果使用仅 TPM 保护,那就是确定的数据泄露。

关注微软的回应。 如果补丁星期二过去而没有解决 YellowKey,“后门”理论将变得难以反驳。


参考链接


信息图

YellowKey BitLocker 绕过示意图

图 1:YellowKey 利用流程——插入 U 盘 → 启动到 WinRE → 按住 CTRL → 在加密卷上获得无限制 shell

分享本页