可信平台模块 (TPM) 2.0 规范受到两个缓冲区溢出漏洞的影响,这些漏洞可能允许攻击者访问或覆盖敏感数据,例如加密密钥。
TPM 是一种基于硬件的技术,可为操作系统提供防篡改安全加密功能。
它可用于存储加密密钥、密码和其他关键数据,这使得其实施中的任何漏洞都值得关注。
虽然某些 Windows 安全功能需要 TPM,例如测量启动、设备加密、Windows Defender System Guard (DRTM)、设备健康证明,但其他更常用的功能不需要 TPM。
但是,当可信平台模块可用时,Windows 安全功能在保护敏感信息和加密数据方面获得增强的安全性。
由于需要启动安全措施并确保 Windows Hello 人脸识别提供可靠的身份验证,微软将 TPM 2.0 规范作为运行 Windows 11 的要求时,TPM 2.0 规范获得了普及和争议 。
Linux 也支持 TPM,但没有要求在操作系统中使用该模块。
但是,有可用的 Linux 工具 允许应用程序和用户保护 TPM 中的数据。
TPM 2.0 中的新漏洞是由 Quarkslab 的研究人员 Francisco Falcon 和 Ivan Arce 发现的,他们表示这些漏洞可能会影响数十亿台设备。
这些漏洞被跟踪为 CVE-2023-1017(越界读取)和 CVE-2023-1018(越界写入)。
这两个缺陷都源于规范如何处理某些 TPM 命令的参数,允许经过身份验证的本地攻击者通过发送恶意制作的命令在 TPM 内执行代码来利用它们。
根据 TPM 规范的开发者可信计算组 (TCG) 的安全公告 ,这可能会导致信息泄露或权限升级。
可信计算组解释说,缓冲区溢出问题涉及在传递给 ExecuteCommand() 入口点的缓冲区结束后读取或写入 2 个字节。
其影响取决于供应商在该内存位置上实施了什么,即它是未使用的内存还是包含实时数据。
CERT 协调中心发布了有关这些漏洞的警报,并且几个月来一直在通知供应商,试图在绘制影响图的同时提高认识。
不幸的是,只有少数实体确认他们受到了影响。
有权访问 TPM 命令接口的攻击者可以向模块发送恶意制作的命令并触发这些漏洞。
这允许对敏感数据进行只读访问或覆盖仅对 TPM 可用的通常受保护的数据(例如,加密密钥)。
受影响的供应商的解决方案是转向规范的固定版本,其中包括以下内容之一:
TMP 2.0 v1.59 勘误表 1.4 或更高版本
TMP 2.0 v1.38 勘误表 1.13 或更高版本
TMP 2.0 v1.16 勘误表 1.6 或更高版本
联想是迄今为止唯一就这两个TPM 漏洞发布安全公告的主要 OEM ,警告 CVE-2023-1017 会影响 其 在 Nuvoton TPM 2.0 芯片上运行的部分系统。
https://support.lenovo.com/us/en/product_security/LEN-118374
虽然这些缺陷需要对设备进行经过身份验证的本地访问,但请务必记住,在设备上运行的恶意软件会满足该条件。
TPM 是一个高度安全的空间,理论上甚至应该屏蔽设备上运行的恶意软件,因此不应忽视或低估这些漏洞的实际重要性。
建议用户将对其设备的物理访问限制为受信任的用户,仅使用来自信誉良好的供应商的签名应用程序,并在固件更新可用于其设备后立即应用。