导语:微软的Windows恢复环境里有个调试标志叫”FailRelock”——字面意思”锁定失败”。设为1,解锁后的BitLocker永不重锁。攻击者用一个U盘加一个配置文件,就能让所有加密形同虚设。这是5年内的第5次。

事件回顾
安全研究员@weezerOSINT在分析Windows 11恢复环境(WinRE)时,发现了一个”惊天大秘密”:
微软在WinRE里留了一个完整的调试测试框架。
其中有一个标志位,叫 FailRelock。
FailRelock = 1 时,解锁后的BitLocker永远不会重新锁定。
这不是漏洞,这是微软自己留的后门,被研究员武器化了。
攻击步骤:一张图看懂
普通人:┌─────────────────────────────────────┐│ 1. U盘启动到WinRE ││ 2. 创建RecoverySimulation.ini ││ 3. Active=Yes, FailRelock=1 ││ 4. WinRE解锁BitLocker ││ 5. 弹出cmd.exe,拥有完全访问权 ││ 6. 你的"加密"驱动器:已公开 │└─────────────────────────────────────┘微软工程师:┌─────────────────────────────────────┐│ "测试完了,代码先不删了" ││ "反正用户也不会发现" ││ "flag名字就叫FailRelock吧" ││ "毕竟我们是微软" │└─────────────────────────────────────┘
全程只需要一个U盘 + 改一个配置文件。
不需要昂贵设备,不需要零日漏洞,不需要GPU破解。
就是这么大巧若拙。
一个单词的笑话:FailRelock
FailRelock = “锁定失败”
程序员的命名真是诚实:
建议下一个flag取名叫”NoSecurity”(无安全),或者直接叫”Oops”(哎呀)。
微软的BitLocker翻车史
| 年份 | 漏洞名称 | 类型 |
|---|---|---|
| 2022 | CVE-2022-41099 | BitLocker绕过 |
| 2023 | CVE-2023-21563 | BitLocker绕过 |
| 2024 | CVE-2024-20666 | BitLocker绕过 |
| 2024 | BitUnlocker | BitLocker绕过 |
| 2026 | YellowKey (FailRelock) | BitLocker绕过 |
5年5个。
微软的BitLocker已经不是”锁”了,是”装饰品”。
每次出漏洞,微软都打个补丁。但从来不重构这个糟糕的设计——把WinRE当成”受信任”的恢复环境,里面还藏着调试开关。
修修补补,5年5洞。下一洞还会远吗?
技术原因分析
BitLocker的信任模型:
正常启动:TPM验证 → 解锁 → 系统启动恢复启动:WinRE环境 → 解锁 → 弹cmd
问题在于:BitLocker信任WinRE,认为WinRE是”安全”的。
但微软在WinRE里藏了个开关,可以让加密形同虚设。
这就好比:
你家防盗门很安全,但门的备用钥匙藏在门框上方的钉子后面,还贴了张条:”测试用,不要动。”
缓解措施
| 措施 | 效果 |
|---|---|
| 启用Secure Boot | 防止从U盘启动 |
| TPM 2.0 + PIN | 物理攻击也难破解 |
| 禁止从USB启动 | 在BIOS里禁用 |
| 定期更新系统 | 期待微软哪天修好 |
物理攻击的情况下,防御手段有限。但至少不要让攻击者轻易碰到你的机器。
微软的代码质量反思
“They left an entire debug testing framework in production.” “他们在生产环境里留了一套完整的调试测试框架。”
这是工程师的大忌:
- 测试代码上线前要删除
- 调试开关不能留在生产环境
- FailRelock这种flag应该叫XXX_TEST_MODE_ONLY_DELETE_BEFORE_SHIP
但微软没删。
可能是忘了,可能是赶工期,可能是”反正也没人发现”。
结果:5年后被发现了,还被公开了。
彩蛋
研究员预告了下一个漏洞:GreenPlasma——Windows CTFMON任意段创建提权漏洞。
微软的安全团队:求放过。
seo优化_前端开发_渗透技术






