Trusted Computing and DRM

作者:

1  Introduction

可信计算是计算机安全性的一个特殊分支。计算机安全性的一个分支涉及保护系统免受外部攻击。在该分支中,我们包括系统所有者针对外部攻击者使用的所有方法,例如防火墙,IDS,IPS等。在所有这些情况下,系统所有者都安装了使用自己的手段来确定远程用户是否恶意的软件。并终止攻击。 (这种方法可能非常简单,例如检测攻击的迹象,或者非常复杂,例如机器学习和检测远程用户使用模式中的异常)。
攻击的另一分支要求系统所有者保护内部用户免遭攻击。
此类攻击包括阻止用户读取彼此的数据,使用超出其分配的资源份额的资源等。在某种程度上,此处还包含防病毒/反垃圾邮件软件。该分支中包括所有密码保护和使用的管理软件。
第三分支是可信计算,涉及验证远程主机用户计算机将以某种可预测的方式运行,即针对计算机的当前所有者的保护。此类要求的最常见示例是数字媒体的分发。数字媒体以某种条件访问模式分发(出租,按次付费,出售给个人使用,等等)。获取数字媒体通常不会赋予用户无限的权利。用户通常可能不会重新分发或编辑数字媒体,甚至可能不允许在某个日期之后自己消费数字媒体。 (媒体租金,按次计费)但是,由于用户正在使用其私人计算机上的媒体。媒体提供者如何才能向自己保证恶意用户不会篡改机器,从而不会复制内容?针对计算机所有者的安全性问题是可信计算的问题区域。在与其他安全分支相对的可信计算中,“攻击者”不仅限于暴露给他的某些攻击面,还可以使用烙铁敲入总线,更换芯片和其他系统部件等。
可信计算还包括针对当前所有者(或计算机所有者,如果不是合法所有者)的其他保护工具。例如,对可能被盗的笔记本电脑和手机的敏感数据或磁盘加密解决方案的保护。
可信计算也可以在云上使用,以确保主机不检查云服务器并且服务器上运行的软件没有被盗。最新的可信计算技术涉及确保命令理智且无恶意的手段,例如在汽车和航空电子设备的计算机中。在本章中,我们将从多个来源回顾DRM和可信计算解决方案。

2  Ethics – Trusted or Treacherous computing

用户不喜欢受信任的计算。
首先,有条件访问的概念引发了众多数字版权争论。例如,如果我合法购买了内容,是否不应该允许我备份这些内容?特别是由于目前没有媒体供应商提议免费(甚至便宜)更换损坏的媒体内容!但是,如果我们允许复制媒体,那么我们如何禁止非法复制呢?是什么阻止用户重新分发副本或“备份”?我们如何区分合法使用同一内容的副本(备份)和非法副本?
次要的,因为许多受信任的计算设备要求用户主动在其计算机上安装某些东西(TPM芯片,EFI固件等)。而且,所述硬件组件根本不影响最终用户系统功能(如果任何可信计算仅限制用户)。用户为什么会愿意花钱在计算机上安装一些硬件,而这些硬件只能限制她可以做什么和不能做什么?
由于所有这些原因,Richard Stallman称其为可信任计算的叛逆计算,而众多黑客则尝试对TPM芯片和可信任平台进行攻击。
在撰写本章时,在这场技术之战中还没有明确的赢家。一方面,对于可信赖的计算解决方案而言,仍然没有庞大的安装基础,另一方面,可信赖的计算团队仍然存在,并且仍在发布新的可信赖的平台模块和规格。

3  The Trusted Processing Module by TCG

如图1所示,受信任的平台模块是一个单独的计算机芯片,已添加到计算机主板中,并经常使用LPC(低引脚数)总线连接到CPU。 TPM是一种加密协处理器,它能够执行多种加密功能以及生成和存储密钥。
TPM还可以验证系统运行的硬件和软件,并证明系统是否正常。
当远程主机向系统查询系统是否正常时,它可以使用TPM来验证其运行的软件未被篡改。 TPM支持两种验证方法:远程验证和直接匿名验证。

3.1  Remote Attestation

TCG(TPM规范v1.1)提出的证明解决方案需要可信的第三方,即隐私证书颁发机构(privacy CA)。每个TPM都有一个称为“认可密钥(EK)”的RSA密钥对,嵌入在TPM内(用户无法访问–至少不容易。)为了证明自己,TPM生成了一个新的RSA密钥对(Attestation身份密钥或AIK)。
远程证明是典型的可信第三方过程。假设爱丽丝想证明鲍勃,而鲍勃想要被爱丽丝识别,但又不想彼此透露自己的私人识别码,建议使用远程证明。它需要一个双方都可以信任的受信方。
Bob通过使用EK向受信任的第三方签名公共AIK来证明自己。然后,受信任的第三方使用Bob的公开EK来验证Bob。当然,如果CA同时使用同一密钥接收到太多请求,则CA可能并且应该将TPM列入黑名单。爱丽丝以后可以与鲍勃(Bob)的CA一起进行验证。

3.2 Direct Anonymous Attestation

直接匿名证明(以下称为DAA)协议仅在版本1.2中添加到TPM标准。 DAA基于三个实体和两个步骤。实体是TPM平台,DAA发行者和DAA验证者。发行方负责在Join步骤中验证TPM平台并向该平台颁发DAA凭据。平台在“签名”步骤中将DAA凭据与验证程序一起使用。验证者可以在不尝试破坏平台隐私的情况下验证凭据(零知识证明[5,6])。该协议还支持黑名单功能,以便验证者可以从已被破坏的TPM中识别证明。 DAA允许不同级别的隐私。使用DAA Interactions始终是匿名的,但是用户/验证者可以协商验证者是否能够(与同一用户但不能与特定用户)链接事务。验证事务将允许在会话上保存持久性数据,并可以进行概要分析和跟踪多个登录名。

4 Intel TXT instructions

英特尔TXT技术为CPU指令集定义了唯一的扩展,以允许可信执行[2]。 使用英特尔TXT,人们可以检验当前正在运行的硬件,操作系统和软件,并确保稳定的(相对于被篡改的)系统状态。 英特尔TXT使用TPM进行测量和加密功能,以证明第三者的身份,并确保当前正在运行的系统软件或操作系统确实值得信赖且不受篡改。
TPM上的PCR寄存器包含各种系统阶段和代码的测量值和SHA-1哈希值,通过检查和验证这些测量值,可以信任该系统来启动未篡改的软件。

5 AMD/ARM Trustzone

AMD / ARM Trustzone是可信计算的ARM / AMD实现。 它大致对应于英特尔TXT。 AMD和ARM都使用Trustzone实现。 Trustzone允许例如使用AMD / ARM SVM加载已签名的安全操作系统。

6 Other architectures for “Trusted computing”

这些体系结构提供了防止数据复制的方法,从而在各种系统上引入了信任。 在本章中,我们主要集中于视频内容交付。 第3章介绍了用于防止游戏机上的自制软件和盗版软件的不同系统(这是可信计算的另一种形式)。

6.1 HDMI and HDCP and its predecessors

视频行业一直对混合目标感兴趣:
1.它寻找将高质量视频传递到用户家中的方法。 通过电影院不再出现的视频(视频/ DVD租赁)产生新的收入来源。
2.它搜索了一些方法,以防止用户通过制作非法副本获得对所租借视频设备的永久访问权。
在某种程度上,这场战斗是失败的开始,因为用户总是可以将标准相机指向屏幕,然后仅使用相机进行录制(或者使用较早的,已经损坏的技术来创建低质量的副本)。 但是,业界对防止用户制作高质量副本(例如HDMI情况下的数字质量副本)感兴趣。
这种方法导致了几种技术,其目的是规避用户创建非法副本的能力

6.2 Macrovision

旧的VHS视频设备具有macrovision设备,该设备通过将两个视频设备相互连接来阻止直接创建VHS媒体副本。
Macrovision设备以一种用户不易察觉的方式修改了输出流,但阻止VHS设备通过菊花链设备创建VHS盒式磁带副本。

6.3 CSS and DeCSS and improvements

CSS或内容加扰系统是在所有主要DVD上使用的加密系统。
CSS是40位加密系统。
CSS的使用被认为不可能将视频内容直接从DVD复制到视频。这样做是因为加密密钥被保存在不可读的位置(数据DVD播放器)。
CSS还允许DVD区域,Macrovision等使用。
DVD CSS在与DeCSS软件一起被引入大约三年后,于1999年被打破。一个固有的错误被用来将密钥从40位减少到只有16位,大多数玩家能够用蛮力在不到1分钟的时间内破解这种加密。
直到今天,两位DeCSS作者仍然不为人知。第三名是挪威少年:乔恩·莱希·约翰森(Jon Lech Johansen)。约翰森先生受到审判,并被挪威法院宣布无罪。检方提出上诉,约翰森先生第二次无罪释放。
当DVD被蓝光取代并且HD-DVD被CSS替换为AACS(高级访问内​​容系统,由于泄漏的密钥而损坏)。

6.4 HDMI and HDCP

HDMI或高清媒体接口是一种高质量的媒体接口,可以将高质量的媒体传输到监视器和屏幕。 HDMI提出了创建精确或接近精确的视频内容高质量副本的问题。
为了避免复制内容,HDCP将加密在HDMI两个端点之间传播的内容,并且仅将内容提供给具有受信任密钥的设备。 如果这些密钥被盗,以后可以将其撤销。
到2010年,HDCP的主密钥已经泄露,使所有吊销列表都变得无用。
吊销密钥可能使用了太多次,并且提供了足够的数据,因此更容易破坏密钥。

7 Other uses for trusted computing

攻击者在最终用户设备上获得完全甚至部分控制后,可以对用户进行几次攻击。 例如,攻击者在获得用户笔记本电脑的控制权之后(例如,通过窃取它)可能会对用户硬盘驱动器的内容产生兴趣
这样的可信计算内容保护方法涉及保护(加密)存储的使用,前提是密钥存储在TPM上。

7.1 Microsoft Bitlocker and similar products

Microsoft Bitlocker是一种全磁盘加密解决方案,可以在计算机(尤其是笔记本电脑)上使用,以确保即使计算机/笔记本电脑被盗,打contents者也无法读取磁盘内容。 完整的磁盘已加密,解密磁盘内容的密钥不可读,并保存在TPM上。

7.2 Protection on Mobile phone data

手机中包含私人数据,如果手机丢失或被盗,这些私人数据可能会被泄露。
各种来源已经产生了许多技术,从使用TPM和在设备上加密到更具有生物特征的方法。
例如,苹果使用iPhone设备上的指纹读取设备来解锁被盗手机。
其他技术包括杀死代码,该代码用于擦除设备并防止其再次连接到网络。

8 Attacks on trusted computing

8.1 Reset Attacks on the TPM chip

TPM通常连接到LPC(低引脚数)总线。 遗留物减慢了几乎所有PC上都存在的总线。 对此的攻击已经存在了十多年。 最早发生在此总线上的攻击之一发生在第一个XBox上。[9] 通过连接并窃听LPC错误,一些黑客已经能够拦截并重置TPM [8]。

8.2 Attacks on the implementation of TPM

Chris Tarnovsky在2010年[3]和2012年晚些时候[4]展示了英飞凌和意法半导体对TPM芯片的物理攻击。 Tarnovsky通过消除TPM芯片的散热外壳部分并攻击(即连接外部设备)芯片本身来攻击TPM。
Tarnovsky证明ST和Infineon芯片是由过去的老式处理器芯片制成的。 他证明了通过对芯片本身进行物理攻击,他可以暴露和修改TPM芯片本身上的内容。
Tarnovsky的方法需要专门的实验室,化学药品和设备,而这可能并非每个黑客都可以触及。 因此这绝对不是专业攻击者和黑客所能及的。

8.3 Other attacks on trusted computing

英特尔CPU的功能之一是SMM或软件维护模式。 SMM用于允许更新CPU代码(微码)。 SMM代码的执行权限要比Intel平台上的用户,内核或管理程序代码更高。 因此,SMM被认为在权限环-2上运行(如果环3是用户空间代码,环0是内核代码,环-1是管理程序)
Rafal Wojtczuk和Joanna Rutkowska已证明使用SMM打破了TXT限制[1]。 这些攻击可能是英特尔取消对SGX扩展程序的支持的主要原因。
这些攻击之所以可能,是因为TXT保护会阻止第3环(用户空间),0(内核)和-1(管理程序)的执行和每个任务,但是TXT内存防御仍然容易受到使用SMM权限级别对Ring -2的攻击 不需要任何特殊权限,即使在TPM证明操作系统之后也可以使用。

9 Beyond Trust – SGX

SGX或Software Guard Extension是Intel的一项创新技术,将在未来的芯片中实现。 SGX为英特尔平台上的可信计算问题提供了一种解决方案[2]。 SGX技术允许为其中包含进程内存的每个进程创建执行容器。 这种方法类似于Qubes操作系统开发所采用的在应用程序之间使用管理程序代码创建分隔的方法,因此不同的应用程序在不同的虚拟OS上运行[6]以及可信计算软件(例如TrulyProtect),该软件将虚拟机管理程序层的秘密保密 [7]。 在撰写本章时,市面上的任何Intel CPU均不提供SGX(因此,没有针对SGX的已知攻击)。

猜你喜欢

转载自blog.csdn.net/qq_35771020/article/details/102605437
今日推荐