TPM(Trusted Platform Module)是嵌入在主板中提供安全功能的芯片,用于安装在Windows中的数据加密功能Bitlocker。但是,安全公司 SCRT 报告说,可以直接入侵硬件以窃取 TPM 密钥并访问受 bitlocker 保护的设备数据。
TPM是直接内置于主板或添加到CPU中的芯片,负责确保设备操作系统和固件不被篡改,并安全地存储加密密钥。 BitLocker 是一种 Windows 数据加密功能,通常将卷主密钥存储在 TPM 中,但 SCRT 安全团队已尝试破解 TPM 以访问受保护的数据。
研究团队使用联想 ThinkPad L440 进行实验。当设备启动时,TPM 检查各种系统属性以确保启动顺序没有改变,如果成功,它会释放卷主密钥,将其发送到 CPU,解密磁盘,并开始加载操作系统。
在将此卷主密钥发送到 CPU 的过程中,TPU 正在使用将低带宽设备连接到 CPU 的总线发送信号,例如 LSP(低引脚数)总线。研究人员认为,这些总线传输的缓慢使得入侵硬件以检测音量主密钥信号并恶意组合设备本地操作成为可能。
研究团队首先通过手动寻找 TPM 芯片以暴露主板来移除 ThinkPad L440 盖板。然后我在触控板下面发现了一个标记为 P24JPVSP 的芯片,并认为这是一个使用 LCP 总线的名为 ST33TPM12LPC 的 TPM 芯片。
其中LAD0、LAD1、LAD2、LAD3、LFRAME、LCLK信号需要获取音量主键,但由于管脚间距只有0.65mm,直接焊接测量信号的探针是相当困难的。他说,还存在丢失 LCLK 信号的问题。
幸运的是,该团队能够找到覆盖着黑色胶带的 LCP 调试焊盘,这使得测量信号比将它们直接焊接到 TPM 芯片更简单。然而,LCLK信号再次没有连接到调试焊盘,因此研究团队表示他们向在线销售主板原理图的网站支付了费用以获得ThinkPad L440原理图。结果,据说他发现有一个没有连接任何东西的调试焊盘,可以通过焊接将LCLK信号发送到调试焊盘。
研究团队将 LCLK 信号焊接到调试焊盘上,并将探头焊接到相应的调试焊盘上。然后,该设备通过连接嗅探器(一种窃取 LPC 信号的设备)启动,使用 GitHub 上发布的 LPC 嗅探器接收通过 LCP 总线从 TPM 传输到 CPU 的音量主密钥信号。多次测量检测到的音量主键值存在偏差,这似乎是由于嗅探器连接不完美,但他们能够通过重复测量相对容易地估计正确值。
研究小组表示,您实际上可以使用获得的卷主密钥来绕过位锁保护并复合本地磁盘。据说结果是能够进行操纵,例如访问存储的文件、限制它们、窃取本地密码数据库或在带有恶意软件的机器上创建后门。
使用 DIY 商店中提供的工具,攻击可以在几天内执行,而不会破坏设备。研究团队认为,TPM 2.0 在技术上阻止了 TPM 嗅探,这是最新的 Windows 11 所要求的,但暴露于其他物理攻击的风险仍然存在。相关信息可以在这里找到。