查看: 10206|回复: 11
收起左侧

[讨论] 硬件分离式TPM(Discrete TPM)和固件TPM(Firmware TPM)各自的安全特性

[复制链接]
AlphaRabbit
头像被屏蔽
发表于 2023-4-9 16:12:08 | 显示全部楼层 |阅读模式
本帖最后由 AlphaRabbit 于 2023-4-11 13:38 编辑

如题。

有些人认为硬件分离式TPM(Discrete TPM,dTPM)比固件(Firmware TPM,fTPM)TPM的安全性要好,其实,两者都有不同的安全特性。






固件TPM是基于Intel ME/AMD PSP/ARM Trustzone之类的CPU硬件隔区(也叫“硬件飞地”),外加UEFI(俗称BIOS,下文一律称为UEFI)固件提供支持所形成的TPM安全芯片。

固件TPM的优势在于:更新加密算法(比如从RSA迁移到ECC,比如增加SHA-256哈希支持)只需要简单的升级软件(UEFI固件),也因为这个特性,固件TPM在面对安全漏洞时有自己的独特优势(只需要简单的给软件打补丁即可完成修补)

此外,由于固件TPM并没有独特且暴露的总线,意味着破坏主板在上面安装硬件窃听器来读取TPM和CPU的通信内容(一种取证手段,通过收集TPM和CPU交流时的电信号进行反推,从而提取TPM中的密钥)是不可能的。

但固件TPM的弱点是:它不是专门的(经过强化的)硬件,其物理安全性不如硬件分离式TPM(比如物理破坏TPM从中取得密钥这种攻击方法,固件TPM是顶不住的)
此外,一旦UEFI固件受到攻击,那固件TPM就无法保证其安全性了。

硬件分离式TPM是专门的一块(经过安全强化)的芯片,它使用LPC总线和CPU、内存进行交流,它有自己的内存和CPU以及操作系统(固件),也就是它自己就是一个SoC(System on a Chip,片上系统)

硬件分离式TPM优势在于:它是经过强化的专门硬件,可以抵抗直接对其进行的破坏式取证攻击(民用TPM芯片最低也要满足FIPS-140-3 Level 2安全级别)。

此外,由于它有自己的操作系统(固件)、CPU和内存,因此即使UEFI固件遭到破坏,也不会妥协硬件分离式TPM芯片的安全性。

硬件分离式TPM的弱点在于:它使用暴露在主板上的LPC总线和CPU进行交流,因此攻击者可以破坏LPC总线并在上面安装硬件窃听器,从而提取出保存在TPM里的数据(这个情况在TPM 2.0规范里有改善,此规范叫做通讯加密,即:TPM先跟CPU进行身份验证和协商密钥,然后两者再开始通讯。但是,微软的Bitlocker没有调用此规范,后文我会简单发表我的看法)。

此外,硬件分离式TPM很难升级——例如你要给它加入新的加密算法支持,你就得重新设计整个硬件(意味着无法通过软件升级进行功能更新)、甚至是某些安全漏洞也需要重新设计硬件才可以完成修补。






至于为什么微软Bitlocker没有调用TPM 2.0的硬件通信加密规范,有一个不是很阴谋论的解释:

硬件分离式TPM出现在TPM 1.2时代,当时是Windows 7发布的时候。TPM 1.2规范没有规定也不允许所谓的固件TPM,也没有硬件通信加密规范。

到了TPM 2.0时代,大量厂商为了节省成本和方便后续升级,大规模的使用固件TPM。而固件TPM是没有暴露总线的,因此针对硬件分离式TPM的攻击不会起作用。在这种情况下,微软确实没必要加入TPM安全通信的支持。

评分

参与人数 2人气 +4 收起 理由
zhczf + 1 根据版规,加1分以示鼓励
隔山打空气 + 3

查看全部评分

easy1234
发表于 2023-4-9 17:37:06 | 显示全部楼层
这种东西对于99%的用户毫无用途,只是徒增数据修复的难度,它只适用于宁可丢了也不让别人看的文件。问题在于有多少人想看你的东西呢?为了你好,最冠冕堂皇的理由
AlphaRabbit
头像被屏蔽
 楼主| 发表于 2023-4-10 02:54:05 | 显示全部楼层
本帖最后由 AlphaRabbit 于 2023-4-10 02:56 编辑
easy1234 发表于 2023-4-9 17:37
这种东西对于99%的用户毫无用途,只是徒增数据修复的难度,它只适用于宁可丢了也不让别人看的文件。问题在 ...

那我接下来说的话会有点粗鄙:既然你话都说成“99%的人都不需要”了,那麻烦让那99%的人把衣服脱了给我看看。
metaverse
发表于 2023-4-10 10:55:15 | 显示全部楼层
easy1234 发表于 2023-4-9 17:37
这种东西对于99%的用户毫无用途,只是徒增数据修复的难度,它只适用于宁可丢了也不让别人看的文件。问题在 ...

大概就是:你可以不用,但不能没有,对有需要的人来说非常重要。
easy1234
发表于 2023-4-10 18:23:43 | 显示全部楼层
metaverse 发表于 2023-4-10 10:55
大概就是:你可以不用,但不能没有,对有需要的人来说非常重要。

主要是副作用太大,配合bitlocker天王老子也打不开
zhang_0519
发表于 2023-4-11 08:16:03 来自手机 | 显示全部楼层
感谢科普!
AlphaRabbit
头像被屏蔽
 楼主| 发表于 2023-4-11 13:31:29 | 显示全部楼层
本帖最后由 AlphaRabbit 于 2023-4-11 13:32 编辑
easy1234 发表于 2023-4-10 18:23
主要是副作用太大,配合bitlocker天王老子也打不开

所以请不要“你不用”就脑补“99%的人都不用”。

我还需要TPM和硬件验证的可信启动(Trusted Boot)呢,我也没说全世界的人都应该有吧。
牛仔小伙
发表于 2023-4-11 16:26:08 | 显示全部楼层
装Win11的时候都BypassTPMCheck
easy1234
发表于 2023-4-11 16:33:39 | 显示全部楼层
AlphaRabbit 发表于 2023-4-11 13:31
所以请不要“你不用”就脑补“99%的人都不用”。

我还需要TPM和硬件验证的可信启动(Trusted Boot)呢 ...

相信我,总有你后悔的一天,~tpm坏掉或者微软被墙,天王老子也打不开
AlphaRabbit
头像被屏蔽
 楼主| 发表于 2023-4-11 20:30:16 | 显示全部楼层
easy1234 发表于 2023-4-11 16:33
相信我,总有你后悔的一天,~tpm坏掉或者微软被墙,天王老子也打不开
你只是在暴露自己的无知罢了。

说这话时你还是回去看看你的手机吧,你的手机(iOS和Android)早就默认应用全盘加密好多年了。

哦,因为我知道你根本不会用什么PinePhone之类的,所以我认为我限制的刚刚好。
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-12-22 09:58 , Processed in 0.135595 second(s), 17 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表