移动 PC 的数据加密工具包 - 安全分析

 

本指南的目标读者

本指南旨在针对负责策略和技术决策的安全专家或针对数百甚至数千台客户端计算机(尤其是便携式计算机)的建议。 此技术和相关威胁通常不适用于家庭用户或家庭网络。 如果您具有以下责任,则应阅读本指南:

决定或推荐安全策略和技术。

实施服务器或客户端安全策略。

评估安全技术。

将安全策略与其他计算机管理策略或技术相结合。

本指南中包含的信息均为高级详细信息,并非作为安全、加密、文件系统或其他基础的安全和系统管理问题的初级读本。

章节内容

该部分提供本指南各章节的概述。

第 1 章: 风险讨论介绍了可由 BitLocker 和 EFS 解决的安全威胁。 其中还讨论了在其余安全分析中使用的方案,以便为讨论风险和优点提供一个更具体的框架。

第 2 章: BitLocker 驱动器加密重点介绍 Windows Vista 中引入的 BitLocker 驱动器加密技术。 它讨论了如何使用 BitLocker 帮助缓解第 1 章中描述的特定安全威胁,其中还包括在组织中开发强大的 BitLocker 实施时可用作起点的配置示例。

第 3 章: 加密文件系统描述了 EFS 如何运作以及如何利用它来帮助缓解您环境中的特定威胁。

第 4 章: BitLocker 和 EFS向您介绍了怎样结合 BitLocker 和 EFS 以便比单独使用每种技术更有效地缓解威胁。

第 5 章: 选择正确的解决方案提供了相关讨论和工具以帮助安全专家为其特殊的组织选择正确的功能和配置项目组合。

样式约定

本指南使用下表中描述的样式约定:

元素 含义

粗体

表示完全按显示键入的字符,包括命令、交换机和文件名。 用户界面元素也以粗体显示。

斜体字

书籍和其他大量出版物的标题以斜体显示。

<斜体>

占位符设置为斜体带尖括号 – <文件名> – 表示变量。

Monospace 字体

演示代码和脚本示例。

注意

提醒读者阅读补充信息。

重要事项

提醒读者阅读必要的补充信息。

更多信息

除了本《安全分析》,移动 PC 的数据加密工具包还包括其他有用的文档和工具:

《规划和实施指南》描述如何规划并实施 BitLocker 和 EFS 以保护您的移动 PC。

Microsoft Encrypting File System Assistant 工具 (EFS Assistant) 可帮助您在运行 Windows XP 和 Windows Vista 的计算机上查找和加密敏感文件的过程实现自动化。

EFS Assistant 管理员指南解释管理员如何在加入域的计算机上部署和管理 EFS Assistant,以在各业务部门或整个企业中提供持续保护。

其中提供了许多重要资源,以帮助决策者获取更广泛的信息或更深入地了解 Microsoft Windows 网络中的安全问题。 Microsoft TechNet 上的安全指南页是一个很好的起点。

有关满足域管理的安全要求的具体建议可在保护 Windows Server Active Directory 安装的最佳做法指南中找到。

支持和反馈

“解决方案加速器 – 安全和相容性 (SASC)”小组欢迎您提供有关此解决方案加速器和其他解决方案加速器的想法。 请将意见和反馈发送到 secwish@microsoft.com。我们期待收到您的来信。

解决方案加速器为横向产品集成提供说明性指导并使其实现自动化。 它们提供了成熟的工具和内容,使您可以自信地规划、构建、部署和操作信息技术。 要查看为数众多的解决方案加速器以及详细信息,请访问 Microsoft TechNet 上的解决方案加速器页面。

鸣谢

解决方案加速器 - 安全和相容性小组 (SA-SC) 在此对移动 PC 的数据加密工具包安全分析制作小组表示衷心感谢。 以下列出的人员或直接负责编写、开发和测试此解决方案,或对此解决方案的编写、开发和测试提供了极大帮助。

开发负责人

Mike Smith-Lonergan - Microsoft

David Mowers - Securitay, Inc.

项目经理

Bill Canning - Microsoft

内容制作人员

Paul Flynn - 3Sharp, LLC

Tommy Phillips - Butternut Software

Paul Robichaux - 3Sharp, LLC

编辑

Steve Wacker - Wadeware LLC

审校

Vijay Bharadwaj - Microsoft

Tom Daemen - Microsoft

Mike Danseglio - Microsoft

Kurt Dillard - Microsoft

Jeff Hatfield - Wireless Ink Inc.

Erik Holt - Microsoft

Russell Humphries - Microsoft

David Kennedy - Microsoft

Douglas MacIver - Microsoft

Josh Phillips

Greg Petersen - Avanade Inc.

Ben Wilson - ASG Group

产品经理

Alain Meeus - Microsoft

Jim Stuart - Microsoft

发布经理

Karina Larson - Microsoft

测试人员

Gaurav Singh Bora - Microsoft

Sumit Ajitkumar Parikh - Infosys Technologies Ltd.

Swaminathan Viswanathan - Infosys Technologies Ltd.

Swapna Rangachari Jagannathan - Infosys Technologies Ltd.

Neethu Thomas - Infosys Technologies Ltd.

 

第 1 章: 风险讨论

发布日期: 2007年04月04日

与所有数据一样,敏感数据具有一个复杂的生命周期,在执行其业务功能时它通常会到处移动。 必须在敏感数据的整个使用周期中保护好数据,但在数据生命周期的不同阶段需要应用许多技术和流程。

数据生命周期示例

图 1.1. 数据生命周期示例

本指南重点介绍通过使用 Microsoft 技术可以达到的安全级别,以便在将数据复制到移动 PC(如膝上型计算机)或在移动 PC 上创建数据时能够保护好数据。

针对以下情况的数据保护讨论不在本指南的范围之内,除非这些数据在本地缓存:

数据在内部或外部网络中传输时。

数据出现在 Web(瘦客户端)应用程序中时。

数据加密后在应用程序内部使用时。

本页内容

数据安全风险数据安全风险
数据保护的加密概念数据保护的加密概念
了解数据风险了解数据风险
数据保护方法数据保护方法
更多信息更多信息

数据安全风险

本指南中介绍的两种技术(加密文件系统 (EFS) 和 Microsoft® BitLocker™ 驱动器加密 (BitLocker))是两种互不相同而又互为补充的数据加密方法示例。 EFS 是一种根据用户来保护文件和文件夹中数据的加密机制。 BitLocker 则是一种根据计算机来对系统卷上的所有扇区(包括操作系统、应用程序和数据文件)进行加密的全卷加密机制。 BitLocker 提供启动前完整性检查和加密,但不提供用户身份验证。 EFS 可对 BitLocker 保护进行补充,它可以对正在运行的计算机施加限制,只有经过适当身份验证的用户才能访问加密文件。

由于 EFS 和 BitLocker 的方法和实施有着根本不同,因此它们各有其优点和弱点,并且在面对同一攻击情形时提供不同级别的安全性。 本指南将详细地介绍这些情形,并检验两种加密技术之间如何起到互补作用。

了解数据类型

机密数据有着不同的类型,而这些数据可能受到破坏的方式和原因也存在许多不同的情形。 本指南将讨论在以下数据类型环境中实施的不同加密技术。

个人可识别信息 (PII)。 关于组织的客户或员工的私人信息,包括社会安全号、信用卡号、健康状况信息,等等。 此类数据受到一条或多条政府或行业规定的保护,如健康保险流通与责任法案 (HIPAA)、欧洲数据保护指令和加利福尼亚法案 SB1386。丢失此类数据通常会对组织造成直接和长期的经济影响,即使无法证实从某台计算机读取了该数据。

知识产权 (IP)。 组织视为机密或敏感的数据,如市场营销计划、新产品专利前研究、软件算法、潜在新客户名单等。 如果此类数据丢失并被心怀不轨的人发现,或者这些数据存在于已被人故意窃取的设备中,则可能导致公司失去竞争优势或产生其他负面影响。 要记住的重要一点是,使用 IP 数据通常存在财务隐患,因此用于缓解风险的成本因财务隐患风险而显得必要。 但是,此类计算并不总是有用。 公开窘境也是一个诱发因素,因此,对 CEO 的计算机上的数据进行加密以避免对公司形象造成负面印象或许是一个不错的主意。

攻击者情形: 内部人员和外部人员

讨论到攻击和缓解技术时,对于威胁是来自心怀不轨的内部人员还是外部攻击者,通常会加以区别。 心怀不轨的内部人员具有外部人员通常不具有的能力。 以下列出了部分区别:

内部人员能够使用自己的帐户合法地登录到计算机。

合法用户正在使用计算机时,内部人员能够通过网络在较长一段时间内访问该计算机。 此类机会会增加发现可利用弱点的可能性。

内部人员更有可能发起多轮攻击。

内部人员更有可能通过社会工程攻击成功获取用户的密码(或部分密码)。

为了比较不同数据加密方法的优点和弱点,有必要对适用于一般加密和具体到 EFS 和 BitLocker 的一些加密概念进行讨论。

数据保护的加密概念

可以通过多种方式来实施加密。 例如,可以执行分层加密,或在内置于独特算法的复杂模式下执行加密。 加密密钥的使用经常会从密钥长度的角度来讨论,但是,如何计算、存储和使用这些密钥通常要重要得多。 技术产品文档中很少详细讨论密钥的存储和保护,但是这些问题对于了解加密技术中通常最薄弱环节至关重要。

  注意:

本指南的此部分并不是有关加密技术的常规初级读本。 如果您对诸如对称和非对称加密等基本原理没有一个基本的了解,您应该参阅文章网络和信息安全的加密技术

最佳加密算法的设计和实施使得攻击者只能用一种方法来破坏加密,那就是从大量可能的密钥空间(密钥可能具有的数值范围)中正确猜中所使用的特定密钥。 此类攻击称为强力攻击。

对称密钥算法通常具有介于 40 到 512 位之间的密钥空间,这意味着密钥的可能值数量便是所使用位数可以表示的最大数值。 尽管当前可用的用计算机可以相当轻易地将具有 40 位密钥空间的每个可能值用作加密密钥以尝试解密数据,然而 40 位所允许的最大数值为 1,099,511,627,775 (240 -1),这无疑是一个非常庞大的数字。 而每向密钥空间增加一位,可能的密钥数量就会翻倍,因此,41 位密钥空间就可以提供 2,199,023,255,552 个可能密钥。 增加密钥空间能迅速促使可能密钥数量增加到某种程度,即使用当前硬件和已知攻击技术无法实施有效的强行攻击。

不过,很少加密技术能提供如此强大的安全性。 许多加密实施具有以下一个或多个弱点:

加密算法存在漏洞。 有时在进行细查之后(或是在攻击成功之后),我们会发现加密算术从根本上存在漏洞。 有时是在算法已发布多年并已广泛使用的情况下才发现此类漏洞。

算法实施不正确。 算法由开发人员实施,他们有时会引入降低算法有效性的错误。

密钥信息量低。 例如密钥空间为 128 位,并不意味着生成 128 位数值是真正意义上的随机过程,也不意味着利用了整个密钥空间。

密钥可以被轻易发现。 密钥必须存储在某个位置。 如果发现了该位置且可检索到密钥,加密数据就会泄露。

如果加密技术受制于此类弱点,那么费心地进行加密又有何用处? 实际上,有两个因素可帮助减少出现这些弱点。 其中一个因素是 Microsoft 在验证和校验其加密实施的有效性方面投以重资。 此过程从选择能够提供抵御某些攻击类型的固有抵抗力、成熟易懂的算法入手,并坚持 Microsoft 的一贯承诺,保证加密算法实施通过认证,符合联邦信息处理标准 (FIPS) 140 评估标准,并提供符合通用标准认证的操作系统。 有关通用标准认证的详细信息,请参阅 Microsoft TechNet 上的 Windows 平台通用标准认证页面。 此外,高信度计算安全开发生命周期 (SDL) 过程已集成到 Microsoft 开发过程,以确保将安全性作为产品开发的核心组成部分纳入其中。

另一个因素是可以使加密技术对攻击具有足够的抵抗力,以便为受保护的数据提供适当的安全级别。 换句话说,不用担心大型政府是否会运用其所有资源成功破解用于保护您的客户数据库的加密技术。 您需要的只是一个加密解决方案,它能够防止资源或知识非常有限的未经授权人员趁机会轻易发现数据。 满足加密需求的另一种方法是确保对您决定要加密的任何数据的真正价值进行评估,然后将其与破解加密的估计成本进行比较。 例如,如果您的客户数据库对于竞争对手来说价值为十万美元,而破解加密技术的估计成本为一百万美元,那么所用的加密级别很可能已经足够。

  注意:

有关确保加密实施方法安全的详细信息,请参阅特殊出版物 800-12 – 计算机安全介绍: NIST 手册第 19 章(由美国国家标准技术协会 (NIST) 出版)。

要评估加密方法的相对优点,您需要全面地检查加密实施的具体细节。 下图显示了加密和解密数据时发生的典型事件链。

数据加密和解密

图 1.2. 数据加密和解密

在评估加密技术时,了解以下因素至关重要:

算法选择。 加密实施的安全性取决于实施质量和所实施的算法两个方面。 因此,大多数商业技术实施的是一套相对小型的算法,这些算法成熟且经过严格测试,被认为能够抵御各种类型的攻击。 这些算法的示例包括 3DES(三重数据加密标准)、AES(高级加密标准)和 Blowfish,以上这些全部是对称算法,同时还包括 RSA (Rivest-Shamir-Adelman) 和 ECC(椭圆曲线密码学),这些则是公钥算法。

密钥生成。 加密技术经常使用多个密钥。 其中某些密钥由硬件或软件生成,某些由人员提供,而另一些则是从已生成的密钥、人员提供的密钥或这两种密钥的组合派生出来的。 所生成密钥的强度取决于是否可以在环境因素已知的情况下预测密钥值。 换言之,密钥必须具备足够的随机性和长度才有效。

密钥派生。 许多加密实施的某些密钥是从其他密钥派生出来的,如用户提供的密码。 如何派生每个密钥对于实施的总体安全性至关重要。 有一点很重要,即密钥不能通过派生而变得更加强大。 可以根据 56 位 DES(数据加密标准)创建 256 位 AES 密钥,但是该密钥的结果强度并不大于 56 位 DES 密钥(它可能是从某个更弱的密钥派生而来)的强度。

密钥存储。 每种加密技术都必须存储和使用密钥材料。 因此,如何存储该密钥材料对于实施的安全性至关重要。 人们通常使用能够针对攻击提供强大抵抗力的防篡改硬件模块对宝贵资产(如根证书颁发机构签名密钥)进行保护。 许多组织选择部署智能卡,因为智能卡提供的密钥存储安全性比基于软件的解决方案要强,其另一个优点就是即使用户是出于无意也无法恢复和泄漏智能卡的密钥材料。 同时也必须考虑用户行为等实际问题,例如,用户是否能正确地保护密钥材料和密码。 能够确保用户更容易正确操作的加密技术远比没有这种优点的加密技术更安全、更成功。

密钥缓存。 从计算角度来讲,加密操作通常都很复杂。 为了改善性能,加密技术通常会依赖优化措施,这涉及到缓存密钥或加密操作的中间产品。 此类数据项目极其敏感,如果加密技术不能恰当地保护这些数据,数据则有可能泄露给攻击者。 例如,如果没有正确地实施和保护缓存,则将加密密钥缓存在内存中的技术可能允许攻击者从系统内存或页面文件发现此密钥。

最薄弱的环节。 加密实施的整体安全性应以最薄弱环节的安全性为基础。 因此,了解任何加密技术的最薄弱环节是评估加密实施的最重要方面。 在许多环境中,用户就是最薄弱的环节,因此,务必通过适当的用户教育和培训,对保护移动 PC 数据所采取的技术措施加以补充。

可用性与安全性。事实上,没有任何加密解决方案堪称完美。 所有此类解决方案都可以进行强行攻击 — 问题在于成功发动此类攻击要花费多少时间。 有效的加密实施效果往往与所采用加密技术的强度相当。 但是,加密强度往往不是最重要的因素。 诸如用户交互等其他因素同样非常重要。 安全措施几乎可以一直增加到连用户都难以访问自己的数据的地步,但是应该对难度级别进行仔细分析,以确定是否值得组织付出该成本。 您不愿实施那种使用起来过于复杂而致使用户决定改用铅笔和纸张的解决方案吧!

攻击难度

并非所有针对加密解决方案的攻击都是相同的。 如前所述,聪明的攻击者通常会攻击最薄弱的环节。 要估算加密解决方案的安全级别,您可以列出对所实施的加密技术可能发动的攻击,然后根据难度评定攻击等级。

低难度攻击是指无需使用任何资源就能读取有用数据的攻击。 换言之,此类攻击类型可以用这种情形来描述 - 攻击者只需掀开便携式计算机的机盖,然后便可开始读取。 攻击难度通常与特定解决方案的环境和其他因素有关。

了解数据风险

加密解决方案的目的在于对所有重要数据进行加密,从而使任何攻击者—无论是偶然还是有意,新手还是专家—都无法以纯文本形式访问数据。 然而,通过运用大量资源找出特定加密技术的未知漏洞,或者只需用户出错,就可以破坏加密解决方案。 各种加密技术有着独特的风险特征,这取决于其设计和实施决策及其使用方式。 在接下来的小节中会列出一些潜在风险,本指南稍后的情形描述中会引用这些风险。 请记住,不是列出的所有风险都适用于每个组织。 在确定哪些风险意义重大且需要采取恰当的措施之后,您应该考虑缓解那些适用于您的组织风险。

处于休眠模式的计算机

大多数便携式计算机都具有一种称为“休眠”的功能,该功能允许用户关闭计算机,这样,计算机就不会消耗任何电源,但重新启动后又能恢复到休眠之前的状态。 但是,让计算机处于不受保护的休眠模式意味着攻击者可以无限制地访问计算机上的所有信息。 与睡眠模式一样,您可以将计算机配置为从休眠模式中恢复时提示输入用户凭据。 有关如何启用此设置的详细信息可在待机或休眠期间用密码保护您的计算机中找到,这是 Windows XP Professional 联机产品文档的一部分。

  要点:

Microsoft 强烈建议您要求用户使用凭证来解锁从休眠模式恢复的计算机。

处于睡眠(待机)模式的计算机

可能有的便携式计算机会被配置为从睡眠模式中恢复时,系统不提示用户提供密码或智能卡,这意味着该计算机实际上处于打开状态,且任何人都可以使用它。 如果计算机从睡眠模式恢复时不要求用户提供登录信息,则那些将计算机配置为使用睡眠模式的用户面临的风险最大。 有关如何启用此设置的详细信息可在待机或休眠期间用密码保护您的计算机中找到,这是 Windows XP Professional 联机产品文档的一部分。

  要点:

Microsoft 强烈建议您要求用户使用凭证来解锁从睡眠模式恢复的计算机。

处于已登录状态且桌面未锁定的计算机

如果授权用户已登录计算机,却让该计算机留在公共场所,那么几乎没有加密技术能起作用。 某些攻击者甚至能成功攻击已锁定桌面的计算机。 攻击者只需带走计算机,将其拿到私人场所,便可开始从中读取或复制数据。 一些加密技术会提供一些选择,要求每次访问文件时提供外部密钥,但是这对可用性的影响太大,以至于很少组织会选择使用此类带限制性的解决方案。 一种更常见的缓解方法是使用外部密钥或令牌(如智能卡),其缓存功能允许计算机保留密钥的加密副本以提高可用性。

发现本机/域密码

如果攻击者获取了用户凭据,那么他可能会采取以下两种方法之一来访问加密数据,具体取决于加密实施: 这些凭据可能会被用于直接解密材料,也可能被用于通过攻击由操作系统缓存或存储的凭据来成功访问密钥材料。

在任何安全系统中,加密技术的最薄弱环节通常是用户的密码,因为用户选定的密码通常比常见加密算法所用的最弱密钥还要弱得多。 避免使用假冒加密产品: 骗术常见问题解答的作者称,即使 20 个字符的英语短语也只有 40 位的随机性,而不是您所期望的 20x8=160 位。 根据这位作者的观点,8 个字符密码的随机性比 40 位的随机性要少得多。 然而,即使是这种情况,也比用户将其密码写在一张纸上并将其贴在便携式计算机上要让人放心得多,后一种做法将有效地破坏基于用户密码的任何加密解决方案!

  注意:

通过社会工程或其他非技术攻击方法发现用户密码的攻击不在本指南的讨论范围之内。 密码发现攻击主要被视为涉及对加密数据进行的强行攻击或对凭据存储数据进行的其他技术攻击。

内部人员可以读取加密数据

此风险与前面讨论的风险不同,因为此处假定攻击者是个心怀不轨的内部人员而非外部人员。 此风险提醒人们注意这种情况:某些加密技术(特别是如下一节中介绍的按计算机加密)允许成功登录到计算机的任何用户访问加密数据。 用户帐户可以是计算机的本地帐户或网络用户帐户(例如,Active Directory® 目录服务中的帐户),它可以是本地登录或通过网络登录。

通过脱机攻击发现密钥

在此类攻击中,攻击者会将具有加密数据的磁盘安装到其他(或已修改的)操作系统。 攻击者会根据详细的实施信息尝试隔离用于加密数据的密钥,并尝试对用于密钥的存储机制发动强行攻击。 此类攻击所需的工作量最少,攻击者将尝试隔离并攻击存储机制中最薄弱的环节。 即使是对中等强度的密钥发起强行攻击也是十分困难的,并且必须使用大量的计算资源。 如果加密解决方案实施情况足够良好,那么攻击者只能选择使用强行攻击,这很可能就达到了组织的数据安全目标。

对操作系统进行脱机攻击

此类攻击尝试在操作系统未运行时修改或更改系统文件或设置,以达到更轻易访问加密数据的目的。 此类攻击就技术而言难度很大,并要求对操作系统有深入的了解。 在全卷加密技术环境中,一种可能的攻击情况是,攻击者可以更改磁盘上的某些加密数据,以期通过更改操作系统可执行文件中的单个注册表值或硬编码值来降低计算机安全性。

对操作系统进行联机攻击

此类攻击尝试在操作系统运行时破坏其保护机制。 示例包括特权升级攻击或尝试远程执行代码。 如果攻击者可以成功完成此类攻击,则他们可以通过在计算机上运行任意代码来恢复加密数据。

计算机上的纯文本数据

存在纯文本机密数据是任何加密解决方案都必须缓解的基本风险。 几乎所有加密解决方案都可以缓解此风险,除非攻击者不费吹灰之力就可以破坏这些解决方案所使用的加密算法。 本指南中讨论的两种 Microsoft 加密技术都使用行业公认的加密算法,因此,对于每个经过分析的方面来说,此风险一般都被认为是可以得到缓解的。 但在某些情况下,加密技术可能不适用于包含机密数据的特定文件。 本指南其余部分中的许多风险讨论均描述了此类情况。

通过休眠文件泄漏纯文本数据

休眠文件的概念与系统页面文件的概念相似,不同的是对于前者,计算机会获取所有物理内存的快照并将此数据写入磁盘中的休眠文件。 如果在系统获取快照时物理内存中存在任何敏感数据,则该数据将作为部分休眠文件被写入磁盘。 与攻击页面文件一样,对休眠文件的攻击通常是脱机进行的。

通过系统页面文件泄漏纯文本数据

现代操作系统为应用程序提供了大量虚拟内存,其方法是将内存中不在使用的数据转换为存储在硬盘驱动器中的页面文件。 然而此功能却会制造风险,因为计算机上运行的应用程序可能会从磁盘中加载加密数据、在内存中将其解密以供使用,然后再将其作为未加密数据以页面文件的形式写入硬盘驱动器。 某些操作系统会在关机操作时删除页面文件,但是有些已知方法可以防止删除页面文件(包括导致操作系统崩溃)。 另外,取消删除页面文件并搜索其内容可能比较繁琐。 针对页面文件的攻击几乎总是包括从目标计算机中删除硬盘驱动器并将其安装在另一台计算机上,或在目标计算机上启动另一操作系统。 这些攻击称为脱机攻击

  注意:

诸如密钥等敏感材料可能会通过其他操作系统或应用程序缓存机制(包括写入磁盘的临时文件)泄漏。 “移动 PC 的数据加密工具包”所介绍的措施着重缓解通过系统页面文件进行数据泄漏的风险,但可能也能缓解通过其他特定于应用程序的缓存机制进行泄漏的风险。

平台攻击

某些攻击将特定平台的硬件或软件功能作为攻击目标。 例如,一些攻击利用 IEEE 1394 (FireWire) 接口提供的直接内存访问 (DMA) 功能在不通知操作系统的情况下读取或写入系统内存。 其他攻击包括可能由活动 PCI 设备执行的基于 DMA 的内存访问以及利用 PCI 和 RAM 总线桥接芯片中的功能或漏洞发动的攻击。 以往实施这些攻击的成本非常高,但随着所需技术和设备越来越普及,成本也在不断降低。

必要的身份验证因素留在计算机上

此风险适用于可使用外部设备(例如智能卡或 USB 设备)存储加密密钥的加密技术。 没有意识到安全风险的用户可能会粗心大意地让设备保持连接计算机或将设备与计算机存放在相同位置。 由于这是一种常见情形,因此大多数组织不会让加密解决方案依赖于单个物理元素。 (此风险也适用于将 PIN 或通行短语记在纸上的用户,但此类行为主要应通过用户教育加以引导,因此在本指南中不做说明。)

用户错误

用户不会始终了解有关所使用技术的所有知识,也不会像 IT 管理员那样关注各种策略。 此风险适用于那些没有执行应有操作的用户,这可能是因为他们不知道如何启动加密、忘记对特殊文件进行加密或没有注意数据安全策略。

数据保护方法

数据保护技术的设计和实施涉及到一些选择,在部署技术后这些选择会影响技术的安全性、可用性和操作管理。 以下列表将对各种技术进行讨论,虽然该列表并不全面,但是它有助于您了解本指南中提供的材料。 这些数据保护技术包括:

基于软件的加密

基于硬件的加密

启动前(预操作系统)加密

启动后(操作系统)加密

应用程序级加密

文件/文件夹级加密

全卷加密

按用户加密

按计算机加密

基于软件的加密

基于软件的加密是适用于大多数数据保护技术和产品的标准方法。 基于硬件的加密这一备用技术要求专用加密硬件,因此一直以来都不常用于个人计算机。 通过基于软件的加密,加密操作可在计算机的 CPU 中执行。 当计算机处于关闭、休眠或睡眠状态时,加密密钥通常以加密形式存储在磁盘中。 通常应选择将初始密钥(例如可用于解密所存储密钥材料的 USB 设备)与计算机分开存储。 计算机运行时,加密密钥通常存储在内存中。

基于软件的加密的优势包括:

能够更新和修正实施。 基于软件的加密技术可随时更新,以便修复实施缺陷、增加新功能或利用新算法。

没有特殊的硬件要求。 由于此类加密不要求任何特殊硬件,因此这种依赖软件加密的技术通常可应用于组织中的所有计算机。

基于软件加密的弱点和问题包括:

软件弱点。 如果实施仅依赖软件的加密技术,该软件可能会因攻击者企图破坏其预期安全操作模式而受到攻击。 典型攻击会更改操作系统的二进制文件,其方法是阻止加密、以某种方式操控密钥或严重削弱加密操作。

密钥发现。 如果计算机上存储有任何加密密钥,则攻击可能会发现密钥值。 因此务必要了解如何保护密钥。 如果用于解密密钥的另一个唯一的密钥材料存储在相同计算机上,可以设想,耐心而专业的攻击者可能会发现该密钥。

基于硬件的加密

某些加密机制利用特殊加密硬件来将加密操作与主 CPU 分离开来,以便为密钥存储提供更高的安全性。 此类硬件通常包括用于安全地存储一个或多个加密密钥的方法,还可能包括在硬件中执行加密操作的功能,这样,其他硬件或软件组件就绝对无法获取该密钥。

基于硬件的加密的优势包括:

防止加密密钥受到软件和操作系统漏洞的影响。 基于硬件的加密通常可确保密钥对的私钥部分能与由操作系统控制的内存分离开来。

加密操作免受软件和操作系统漏洞的影响。 基于硬件的加密独立于主机操作系统,并且不会暴露给外部软件漏洞。

基于硬件加密的弱点和问题包括:

可用性有限。 加密硬件不能始终可用。 例如,BitLocker 使用的 TPM 模块不可改为用于旧式计算机,也不可广泛用于新型计算机。

难以更新。 如果在基于硬件加密的系统中发现漏洞,通常必须更换该系统。 如果制造商要为硬件添加新功能或对新算法的支持,情况也是如此。

启动前(预操作系统)加密

可以将 BIOS 级固件添加至计算机,使写入硬盘卷的所有数据均处于加密状态,而从磁盘中读取的所有数据都处于解密状态。 此操作对于操作系统来说是透明的,因此可应用于操作系统文件。

如果 TPM 等加密硬件可用,则它可用于提高启动前加密和解密的安全性。 集成了 TPM 的计算机还可以创建既加密且与某些平台度量(例如主启动记录 (MBR) 代码、NTFS 启动扇区、NTFS 启动块和 NTFS 启动管理器)关联的密钥。 此类密钥只在那些平台度量所具备的值与创建该密钥时所具备的值相同的情况下才能被解密。 此过程称为将密钥密封到 TPM,而解密过程则称为开启

TPM 也可密封和开启在 TPM 外部生成的数据。 此功能的实际效果在于解开密钥的能力可以取决于平台的某些特性是否已改变(一般针对通过尝试破解加密等安全措施的恶意篡改行为)。

由于操作系统文件已应用加密技术,因此必须在操作系统启动序列之前提供解密这些文件的密钥。 密钥可能因解决方案不同而不同,并且可能是由个人识别码 (PIN) 或存储在硬件设备(如 USB 令牌或智能卡)中的密钥派生而来。

启动前加密的优点包括:

防止操作系统文件受到脱机攻击。 所有系统文件和配置文件均受到全卷加密解决方案的保护。 即使攻击者可以将受保护的卷安装到其他操作系统(脱机攻击),但是除了使操作系统无法运行外,他们将一筹莫展。

加强对操作系统文件的保护。 具有可兼容 BIOS 升级版的 TPM v1.2 等加密硬件能够验证最早启动组件的完整性。

启动前加密的弱点和问题包括:

数据恢复策略是强制的。 BIOS、TPM 或密钥存储机制的任何故障都将导致计算机上的所有数据无法读取。 硬件故障通常比软件故障更难以诊断、治理和修复。 如果必须将硬件返回给制造商或到外地分厂修复,则所花的时间可能更长。 必须开发出有效而可靠的密钥备份和恢复策略,并经常对其进行测试。

软件更新难度可能更大。 由于操作系统和其他文件已经过加密并已对签名进行验证,因此更新这些文件可能需要特殊过程。 此类要求会导致使用启动前加密技术的计算机需要额外的运作开销。

启动后(操作系统)加密

启动后加密可由操作系统或计算机上运行的任何应用程序执行。 EFS 是启动后加密技术的一个示例。 它内置于 Windows 操作系统中,因此不能用于对操作系统本身进行加密。 但是,它可以有效地保护用户及应用程序数据。

启动后加密的优点包括:

加密失败不会导致计算机无法使用。 即使加密技术失败,计算机也仍然可以使用。 因此,无需使用另一台计算机也可以恢复加密数据。

启动后加密的弱点和问题包括:

对操作系统文件和配置无任何保护措施。 如果在将包含机密数据的硬盘安装到其他计算机或将移动计算机启动至其他操作系统的情况下访问该硬盘,则攻击者可能对原始操作系统进行更改以允许破坏加密数据。

数据恢复策略是强制的。 操作系统或应用程序软件的任何故障都可能导致受保护的数据无法读取。 必须开发出有效而可靠的密钥备份和恢复策略,并经常对其进行测试。

应用程序级加密

加密也可以在 BIOS 或操作系统级别之外实施,它可以在应用程序级别执行。 目前许多应用程序都会提供一些用于加密数据的功能,其中包括 WinZip、Microsoft Office 和 Intuit Quicken。

应用程序级加密的优点包括:

平台独立性。 如果应用程序在不同操作系统中运行,则由应用程序加密的数据通常可以从一个平台移至另一平台,并且仍可使用正确密钥进行解密。

加密时移动数据。 如果数据在操作系统级别加密,则它通常是在执行文件系统操作(如复制和移动)时被解密。 如果目标文件夹或系统被配置为加密,则可能会使用完全不同的密钥集对数据进行加密。 应用程序级加密通常允许用户将数据以原始加密形式转移至另一位置。

应用程序级加密的弱点和问题包括:

应用程序依赖性。 从一种应用程序格式或从容器中转移到另一种格式或容器的数据通常无法保持加密。 例如,用户可以从已加密的 WinZip 存档中提取文件,但所提取的文件将被解密。 如果用户没有在完成操作时删除该文件,则数据可能会受到威胁。

文件/文件夹级加密

文件和文件夹级加密是用于保护特定文件和文件夹及其所包含数据的一种方法。 通过此类解决方案可只对特别配置为加密的那些文件进行保护。 计算机上的所有其他数据均不会加密。 文件/文件夹级加密的典型方法是为每个文件或文件夹创建唯一的加密密钥。 此方法的另一个优点在于,它还可以实施本章稍后将探讨的按用户加密。

实施得当的文件/文件夹级加密的优点包括:

性能比全卷加密更出色。 计算机性能应不会受到太大影响。 不过,对系统性能造成某些影响是不可避免的。 文件/文件夹加密可减小加密对整体性能的影响,因为额外开销仅适用于需要加密以满足组织数据安全策略的那些文件。

有选择的加密。 此类解决方案的精确控制允许用户仅对敏感数据进行加密,并允许管理员强制或阻止对特定文件夹、文件或数据类型进行加密。

支持多个用户。 文件所有者可在保持文件加密的同时允许其他用户读取或修改文件。 此功能允许已加密文件可在各用户之间安全共享。

文件/文件夹级加密的弱点在于:

机密数据可能会通过由操作系统或应用程序生成的文件泄漏。 通常,操作系统会将内存中所包含的应用程序数据写入磁盘上的文件中。 此应用程序数据可能包含机密数据。 在 Windows 操作系统中,这些文件包括系统页面文件和休眠文件。 操作系统可能还会生成包含机密数据的日志文件或其他普通文件类型。

机密数据可能通过应用程序级数据缓存泄漏。 应用程序可能会实施其自身的缓存或记录机制(如临时文件),而机密数据可能因此泄漏。 由 Microsoft Word 创建的恢复文件是一个很好的示例。 此弱点可在一定程度上得以缓解,其方法是将应用程序配置为始终在特定目录中创建临时文件,然后将加密解决方案配置为加密该文件夹中的所有文件。

文件可能被意外复制到某个未加密文件或文件夹。 由于只对特定文件和文件夹进行加密,因此用户可能无意间将某个文件的内容复制到尚未配置为加密的文件夹中的其他文件。

全卷加密

全卷加密通过缓解文件/文件夹级加密的常见问题来实施文件/文件夹级加密。 如果要保护的卷包含操作系统文件,则使用全卷加密方法要求进行启动前加密。 如果组织选择配置不包含操作系统文件的全卷加密解决方案,则应考虑启动前加密的弱点和优点。

全卷加密的下列主要优点大多是针对前面所述的文件/文件夹级加密弱点的缓解措施。

操作系统临时文件加密。 由于已对全卷进行加密,因此写入该卷的任何文件都将自动加密,其中包括系统页面文件和休眠文件。

应用程序临时文件加密。 应用程序创建的任何临时文件都被写入已加密的卷,因此这些文件将自动加密。

用户创建的所有文件均自动加密。 如果用户将某个文件复制到卷上的其他文件夹,则该文件仍将自动加密。 有了全卷加密,用户就更难错误地破坏加密解决方案。

全卷加密的弱点和问题包括:

降低性能。 受保护的卷上的每个块均须解密才能读取,如果要将其写回磁盘,则需对其进行再次加密。 此功能适用于操作系统的可执行文件和配置文件、应用程序可执行文件和配置文件以及所有数据文件。 尽管现代加密技术相对高效,但是使用全卷加密还是会导致系统性能下降 5% - 15%。

针对内部人员攻击提供有限保护。 全卷加密提供针对各种脱机攻击的保护措施,但是针对心怀不轨的内部人员发动的攻击,它一般只能提供有限保护,这类人员通常具有(或可以获取)通过合法帐户登录到目标计算机的能力。

按用户加密

可通过以下方法来实施加密:多个用户能够使用其各自的唯一密钥(可能是存储在 USB 或类似设备上的密码或密钥)对加密和解密计算机上的数据文件所需的密钥进行解密。 如果将此方法与单独密钥控制的文件/文件夹级加密结合使用,则能够按文件对各个用户的提供访问权。

按用户加密的优点包括:

对可以读取加密数据的用户进行精确控制。 除非得到文件所有者的特别授权,否则计算机的其他用户无法读取加密数据。 此功能提供某种级别的访问控制并确保数据机密性。

能够仅对敏感数据进行有选择的加密。 通过正确实施按用户加密系统,您可以准确选择要保护的文件和文件夹。

能够为多个用户加密文件。 正确实施按用户加密系统可允许文件所有者为多个用户加密单个文件,从而能够在保持良好安全性的同时进行共享。 此外,通过允许授权恢复代理解密受保护文件,此功能可用来实施数据恢复。

按用户加密的弱点和问题包括:

安全性仅相当于最弱的密钥/凭据。 如果使用此方法,则必须使用多个密钥(一个密钥对应每个唯一用户)对每个加密/解密密钥进行加密。 寻找特别薄弱的密钥(本地登录、网络登录或非登录密码所派生的密钥材料尤其薄弱)的攻击者可能会单独攻击每个已加密的密钥。

按计算机加密

某些数据加密实施不允许各具不同密钥或密码的用户对解密计算机数据所需的主密钥进行解密。 在此类实施中,只有一个密钥可用于访问计算机(包括所有加密的数据)。

按计算机加密的优点包括:

密钥派生顺序更简单。 如果只有一个密钥可用于启动密钥派生过程,则整个机制的复杂程度将大大降低。 降低复杂性可以(但并不是始终能够)增强安全性。

按计算机加密的弱点和问题包括:

不能针对恶意内部人员提供保护。 策略允许登录到受保护计算机的任何用户都可以访问计算机上以未加密形式存在的任何文件。

 

第 2 章: BitLocker 驱动器加密

发布日期: 2007年04月04日

Microsoft® BitLocker™ 驱动器加密是 Windows Vista™ 操作系统企业版和最终版中不可或缺的一项新安全功能,它能为您的计算机提供非常可观的脱机数据和操作系统保护。

BitLocker 是一种全卷加密技术,如果运行 Windows Vista 的计算机在所安装操作系统脱机时受损,则该技术可确保存储在此计算机上的数据不会暴露。 它是针对具有兼容的受信任的平台模块 (TPM) 微型芯片和 BIOS 的系统而设计的。 如果存在这些组件,则 BitLocker 将使用它们来增强对数据的保护,并帮助确保早期启动组件的完整性。 此功能通过加密整个卷来帮助防止数据被盗或未经授权查看。

TPM 通常安装在计算机主板上,并且使用硬件总线与其余的计算机通信。 包含 TPM 的计算机可以创建密钥并对其进行加密,使其只能通过 TPM 解密。 这一过程(通常称为打包绑定密钥)有助于防止密钥泄露。 每个 TPM 都有一个主打包密钥,称为存储根密钥 (SRK),它存储在 TPM 本身内。 TPM 中创建的密钥对的隐私部分决不会暴露给任何其他组件、软件、过程或个人。

BitLocker 可提供两种主要功能:

它可以通过加密操作系统卷的内容来提供逐机加密。 删除卷的攻击者将无法读取该卷,除非他们也获取了密钥,而这又需要攻击原始计算机上的恢复基础结构或 TPM。

它可以通过加密受保护卷的整个内容(包括 Windows Vista 使用的文件、启动扇区和原先分配给正在使用的文件的闲置空间)来提供全卷加密。 这样即可防止攻击者通过分析磁盘的任何部分来恢复有用信息,而不用恢复密钥。

恢复机制旨在针对遇到需要恢复的合法情况的授权用户。 例如,如果由于必要的升级、包含 TPM 的主板被替换,或者由于包含操作系统卷的硬盘驱动器被移至其他计算机而导致 TPM 验证失败,则系统将进入恢复模式,用户必须使用存储在 USB 设备上或 Active Directory® 目录服务中的恢复密钥以重新获取对卷的访问权限。

所有 BitLocker 情形的恢复流程都相同。 如果恢复密钥在物理上已与计算机分开(因此没有随计算机丢失),而且该攻击不是域管理员这类人员发起的内部攻击,则攻击恢复密钥的难度将非常之大。

BitLocker 验证了对受保护操作系统卷的访问权限后,BitLocker 文件系统筛选器驱动程序将在对受保护卷写入和读取数据时使用全卷加密密钥 (FVEK) 对磁盘扇区进行透明的加密和解密。 当计算机处于休眠状态时,加密的休眠文件将保存到受保护卷中。 挂起的访问身份验证,该已保存文件将在计算机从休眠恢复时解密。

BitLocker 支持多个不同选项,具体取决于计算设备的硬件功能和所需的安全级别。 这些选项包括:

使用 TPM 的 BitLocker

使用通用串行总线 (USB) 设备的 BitLocker

使用 TPM 和个人识别码 (PIN) 的 BitLocker

使用 TPM 和 USB 的 BitLocker

本页内容
BitLocker 选项: 使用 TPM 的 BitLockerBitLocker 选项: 使用 TPM 的 BitLocker
BitLocker 选项: 使用 USB 设备的 BitLockerBitLocker 选项: 使用 USB 设备的 BitLocker
BitLocker 选项: 使用 TPM 和 PIN 的 BitLockerBitLocker 选项: 使用 TPM 和 PIN 的 BitLocker
BitLocker 选项: 使用 TPM 和 USB 设备的 BitLockerBitLocker 选项: 使用 TPM 和 USB 设备的 BitLocker
BitLocker 风险分析摘要BitLocker 风险分析摘要
更多信息更多信息

BitLocker 选项: 使用 TPM 的 BitLocker

使用 TPM 的 BitLocker 要求计算机安装了 TPM 1.2 版硬件。 此选项对用户是透明的,因为启动过程不会以任何方式更改,而且不需要其他密码或硬件。

仅 TPM 身份验证模式将为需要基准级别数据保护的组织提供最透明的用户体验,以满足安全策略要求。 仅 TPM 模式最易于部署、管理和使用。 另外,仅 TPM 模式可能更适用于无人参与或必须在无人参与时重新启动的计算机。

但是,仅 TPM 模式提供的数据保护最少。 虽然此模式可防止某些修改早期启动组件的攻击,但保护级别会受硬件或早期启动组件中的潜在缺陷的影响。 BitLocker 的多重身份验证模式可缓解许多此类攻击。

如果您组织中的某些部分存在有关移动计算机的极为敏感的数据,请考虑对这些计算机采用以多重身份验证部署 BitLocker 这一最佳做法。 要求用户输入 PIN 或插入 USB 启动密钥显著增加了对敏感数据进行攻击的难度。

下图显示了此选项中解密过程的逻辑流程。

使用 TPM 的 BitLocker 驱动器解密

图 2.1. 使用 TPM 的 BitLocker 解密过程

图解顺序的步骤如下:

1.

BIOS 启动并初始化 TPM。 受信任/受测量的组件与 TPM 交互,以将组件测量数据存储在 TPM 平台配置注册表 (PCR) 中。

2.

如果 PCR 值与期望值相匹配,则 TPM 将使用存储根密钥 (SRK) 对卷主密钥 (VMK) 进行解密。

3.

从卷中读取加密 FVEK,并使用解密 VMK 对其进行解密。

4.

访问磁盘扇区时,使用 FVEK 进行解密。

5.

为应用程序和过程提供纯文本数据。

保证 VMK 的安全是保护磁盘卷上的数据的一种间接方法。 增加 VMK 可使系统在信任链上游的密钥丢失或受损的情况下轻易地重新生成密钥,因为解密和重新加密整个磁盘卷的费用很昂贵。

如上一过程所述,如果 BitLocker 检测到对主启动记录 (MBR) 代码、NTFS 启动扇区、NTFS 启动块、启动管理器和其他重要组件进行了更改,则其将禁止对卷进行解密或加载操作系统。

已缓解的风险: 使用 TPM 的 BitLocker

使用 TPM 的 BitLocker 选项可减缓以下数据风险:

通过脱机攻击进行密钥发现。 VMK 使用 SRK(保存在 TPM 硬件内的一种密钥)进行加密。 然后 VMK 又用于加密 FVEK。 要对加密卷上的数据进行解密,攻击者需要发起一次强力攻击以确定 FVEK 的值。

  注意:

默认情况下,BitLocker 使用高级加密标准 AES-128 算法外加 128 位强度的 Elephant 扩散器。 (有关扩散器在向 BitLocker 添加安全性过程中的作用的详细信息,请参阅 BitLocker 驱动器加密 AES-CBC + Elephant 扩散器白皮书。) 您可以选择将 BitLocker 配置为使用 AES-256 以及 256 位版本的 Elephant、普通 AES-128 或普通 AES-256。有关如何选择 BitLocker 加密强度的详细信息,请参阅 Windows Vista 文档。

对操作系统进行脱机攻击。 攻击者必须从 TPM 成功恢复 SRK,然后使用 SPK 解密 VMK,或者对 FVEK 执行强力攻击,这就缓解了对操作系统进行脱机攻击的风险。 另外,配置了扩散器技术(默认情况下启用)的 BitLocker 正好可以缓解这种性质的集中攻击,因为对暗文的细微更改也将扩散到更大范围。

通过休眠文件泄露纯文本数据。 BitLocker 的主要目标之一是在计算机关闭或处于休眠模式时保护硬盘驱动器的操作系统卷上的数据。 启用 BitLocker 后,休眠文件将被加密。

通过系统页面文件泄露纯文本数据。 启用 BitLocker 后,系统页面文件将被加密。

用户错误。 由于 BitLocker 是一种全卷加密技术,因此它可以对 Windows Vista 操作系统卷中存储的所有文件进行加密。 此功能可帮助避免错误,防止用户对是否应用加密作出错误决定。

其余风险和及其缓解: 使用 TPM 的 BitLocker

在没有其他控件和策略的情况下,使用 TPM 的 BitLocker 选项不能缓解以下风险:

处于休眠模式的计算机。 当便携式计算机进入休眠模式时,便携式计算机和 BitLocker 加密密钥的状态不会更改。 此风险可通过启用“计算机从睡眠模式恢复时提示输入密码”设置来缓解。

处于睡眠(待机)模式的计算机。 与休眠模式一样,当便携式计算机进入睡眠模式时,便携式计算机和 BitLocker 加密密钥的状态也不会更改。 当计算机从睡眠模式恢复时,仍可访问 FVEK。 此风险可通过启用“计算机从睡眠模式恢复时提示输入密码”设置来缓解。

处于登录状态且桌面未锁定的计算机。 计算机启动且 VMK 开启后,可使用键盘的任何人均能访问未加密数据。 缓解此风险最有效的方法是对可能在计算机上存放了敏感信息的用户进行安全意识培训。

发现本地/域密码。 由于 TPM 将永久固定在用户的计算机上,因此它不能作为验证或加密文件的访问权限的另一凭据。 如果用户的密码被泄露,则加密解决方案也会受到威胁。 培训用户创建良好的密码、不与任何人共享密码或不将密码写在显眼的位置可缓解此风险。 强网络密码策略可有效防止攻击者使用广泛的可用工具对密码成功地进行字典攻击。

内部人员可以读取加密数据。 使用 TPM 的 BitLocker 除有效的用户帐户密码外不需要任何凭据即可访问计算机上的所有加密数据。 因此,任何能登录到计算机的用户帐户均可访问部分或全部经过 BitLocker 加密的文件,如同未启用 BitLocker。 缓解此风险最有效的方法是要求提供其他身份验证元素以使用计算机(可以利用其他一些 BitLocker 选项)或严格控制每台计算机有关允许登录人员的策略。 此外,正确部署 EFS 可显著地缓解此风险。

对操作系统进行联机攻击。 此选项不能缓解对操作系统的联机攻击。 如果攻击者能开启卷并正常启动计算机,则操作系统可能容易遭受各种攻击,其中包括特权升级和远程执行代码攻击。

平台攻击。 将 BitLocker 配置为基本模式(仅 TPM)的计算机可将操作系统启动并加载到用户凭据界面(Winlogon 服务),无需任何其他 BitLocker 身份验证元素。 要从加密卷加载操作系统,计算机必须获得对解密密钥的访问特权。 计算机以安全的方式执行此操作,因为它在使用 TPM 验证的可信计算基 (TCB) 内进行操作。 对平台的任何攻击,例如通过 PCI 总线进行的直接内存访问 (DMA),都可能会导致密钥材料泄露。

计算机保留了必需的身份验证元素。 TPM 将提供一个附加安全层,因为如果没有它,则无法对密封的卷进行解密。 此功能可防止将加密卷从一台计算机移至另一台计算机的攻击。 但是,由于 TPM 无法从计算机中删除,因此它必定始终存在,而且不提供与完全独立的身份验证元素相同的强度。 如果攻击者发现了其他身份验证程序,例如用户的计算机帐户密码(仅限使用 TPM 的 BitLocker)、用户的 USB 令牌或用户的 BitLocker PIN,则 TPM 将无法提供保护。

BitLocker 选项: 使用 USB 设备的 BitLocker

BitLocker 为不具有 TPM 版本 1.2 芯片的计算机上的全卷加密提供支持。 虽然此选项中不存在 TPM 提供的附加保护,但是许多需要基本加密解决方案的组织可能会发现使用 USB 设备的 BitLocker 选项在与强用户帐户密码和计算机从睡眠或休眠模式恢复时提示输入密码设置相结合时效果良好。

因为此选项中没有 TPM,所以 VMK 也不存在密封/开启操作。 VMK 是通过传统的软件机制(使用 USB 设备上的对称密钥)进行加密和解密。 USB 设备插入计算机后,BitLocker 将检索密钥并解密 VMK。 接下来,VMK 将用于解密 FVEK,如下图所示。


图 2.2. 使用 USB 设备的 BitLocker 解密过程

图解顺序的步骤如下:

1.

操作系统启动并提示用户插入包含 USB 密钥的 USB 设备。

2.

VMK 通过 USB 设备上的密钥进行解密。

3.

从卷中读取加密 FVEK,并使用解密 VMK 对其进行解密。

4.

访问磁盘扇区时,使用 FVEK 进行解密。

5.

为应用程序和过程提供纯文本数据。

已缓解的风险: 使用 USB 设备的 BitLocker

使用 USB 设备的 BitLocker 选项可缓解以下数据风险:

处于休眠模式的计算机。 从休眠模式恢复后,BitLocker 将要求对 USB 设备重新进行身份验证。

发现本地/域密码。 使用 USB 设备的 BitLocker 要求,除有效的计算机帐户密码之外必须提供另一项身份验证元素才能访问计算机上的加密数据。

内部人员可以读取加密数据。 与以前的风险缓解说明相同。

通过脱机攻击进行密钥发现。 VMK 使用 USB 设备上的密钥进行加密。 如果 USB 设备不可用,攻击者必须发起一次强力攻击来确定 FVEK 的值。

对操作系统进行脱机攻击。 VMK 使用 USB 设备上的密钥进行加密。 如果 USB 设备不可用,则攻击者必须成功操纵成千上万个包含操作系统模块的扇区(相当于强力攻击)才能确定 FVEK 的值。 另外,配置了扩散器技术(默认情况下启用)的 BitLocker 正好可以缓解这种性质的集中攻击,因为对暗文的细微更改也将扩散到更大范围。

通过休眠文件泄露纯文本数据。 BitLocker 的主要目标之一是在计算机关闭或处于休眠模式时保护硬盘驱动器的操作系统卷上的数据。 启用 BitLocker 后,休眠文件将被加密。

通过系统页面文件泄露纯文本数据。 启用 BitLocker 后,系统页面文件将被加密。

用户错误。 由于 BitLocker 是一种全卷加密技术,因此它可以对 Windows Vista 操作系统卷中存储的所有文件进行加密。 此功能可帮助避免错误,防止用户对是否应用加密作出错误决定。

其余风险和及其缓解: 使用 USB 设备的 BitLocker

在没有其他控件和策略的情况下,使用 USB 设备的 BitLocker 选项不能缓解以下风险:

处于睡眠(待机)模式的计算机。 当便携式计算机进入睡眠模式时,便携式计算机和 BitLocker 加密密钥的状态不会更改。 当计算机从睡眠模式恢复时,仍可访问 FVEK。 此风险可通过启用“计算机从睡眠模式恢复时提示输入密码”设置来缓解。

处于登录状态且桌面未锁定的计算机。 计算机启动且 VMK 开启后,可使用键盘的任何人均能访问未加密数据。 缓解此风险最有效的方法是对可能在计算机上存放了敏感信息的用户进行安全意识培训。

对操作系统进行联机攻击。 此选项不能缓解对操作系统的联机攻击。 如果攻击者在启动计算机时能够通过提供 USB 设备进行正常启动,则操作系统可能容易遭受各种攻击,其中包括特权升级和远程执行代码攻击。

平台攻击。 配置有 BitLocker 和 USB 设备的计算机将通过使用 USB 设备中包含的密钥将操作系统启动并加载到 Windows 用户凭据界面 (Winlogon)。 对平台的任何攻击,例如通过 PCI 总线或 IEEE 1394 接口进行的 DMA,都可能导致密钥材料泄露。

计算机保留了必需的身份验证元素。 USB 设备是单独的物理身份验证元素,是加密解决方案的依据。 未经培训或粗心大意的用户可能会将 USB 设备与移动 PC 一起放在包里,这会使设备成为小偷的囊中之物。 用户同时丢失计算机和 USB 设备带来的风险可以通过某种风险缓解方法来缓解,该方法要求提供另一个非物理身份验证元素,例如个人识别码 (PIN) 或密码。

BitLocker 选项: 使用 TPM 和 PIN 的 BitLocker

拥有 TPM 版本 1.2 芯片和支持 BitLocker 的 BIOS 的计算机可配置为需要提供两个元素才能解密经过 BitLocker 加密的数据。 其中一个元素是 TPM,另一个元素是 PIN。

  注意:

对于重视安全性的组织,Microsoft 建议它们将使用 TPM 和 PIN 的 BitLocker 用作首选项,因为没有外部令牌可丢失或攻击。

将 PIN 要求添加到启用了 BitLocker 的计算机中能显著增强 BitLocker 技术的安全性,但需要以降低其可用性和易管理性为代价。 在此选项中,系统将提示用户输入两个密码才能使用计算机,一个是 BitLocker(启动时)的密码,另一个是计算机或域(登录时)的密码。 这两个密码应该并且很可能是不同的,因为 PIN 仅限于使用功能键输入的数字字符,而大多数域密码策略会拒绝纯数字的密码。

尽管 PIN 可以提高安全性,但它仍然会受到非常耐心或动机强烈的攻击者攻击。 由于 BitLocker 将在本地化键盘支持可用之前处理 PIN,因此只能使用功能键 (F0 - F9)。 此功能限制了密钥熵并使强力攻击成为可能,尽管速度不是特别快。 所幸的是,TPM PIN 机制可用于抵御字典攻击。 虽然详细情况会因供应商不同而存在差异,但每次输入错误的 PIN 后,允许输入新数字的延迟时间都会呈几何递增。 此延迟的效果是减缓可能的强力攻击,使得攻击效率低下。 这种输入延迟被称为反冲击保护。 用户可以选择 7 位数且至少有 4 个唯一值的相对较强的 PIN,帮助缓解可能对 PIN 进行的强力攻击。 有关选择强 PIN 的更多信息可在 MSDN 系统完整性工作组日志中找到。

BitLocker 的当前版本不提供对备份 PIN 的直接支持。 由于用户要记住两个密码,因此创建 BitLocker 恢复密钥(用户忘记 BitLocker PIN 时可使用此密钥)甚至更为重要。

下图显示了使用 TPM 和 PIN 的 BitLocker 选项中解密过程的逻辑流程。

使用 TPM 和 PIN 的 BitLocker 驱动器加密

图 2.3. 针对 TPM 和 PIN 的 BitLocker 解密过程

图解顺序的步骤如下:

1.

BIOS 启动并初始化 TPM。 受信任/受测量的组件与 TPM 交互,以将组件测量数据存储在 TPM 平台配置注册表 (PCR) 中。 提示用户输入 PIN。

2.

如果 PCR 值与期望值匹配并且 PIN 正确,则 VMK 将通过使用 SRK 的 TPM 进行解密。

3.

从卷中读取加密 FVEK,并使用解密 VMK 对其进行解密。

4.

访问磁盘扇区时,使用 FVEK 进行解密。

5.

为应用程序和过程提供纯文本数据。

此选项与使用 TPM 的 BitLocker 的基本选项之间存在一个有趣的差异:PIN 与 TPM 结合才能开启 VMK。 成功执行开启操作后,BitLocker 将按照它在基本选项中的步骤执行操作。

已缓解的风险: 使用 TPM 和 PIN 的 BitLocker

使用 TPM 和 PIN 的 BitLocker 选项可缓解以下数据风险:

处于休眠模式的计算机。 使用 TPM 和 PIN 的 BitLocker 可缓解此风险,因为便携式计算机从休眠模式恢复时,系统会提示用户输入 PIN。

发现本地/域密码。 使用 TPM 和 PIN 的 BitLocker 选项的主要优点是该解决方案引入了另一要素(或凭据),在启动计算机或从休眠模式恢复计算机时必须提供该要素。 对于那些面临社会工程攻击风险或未养成良好的密码使用习惯(例如在不可信的计算机上使用 Windows 密码)的用户,该选项带来了非常明显的好处。

内部人员可以读取加密数据。 拥有授权域帐户的用户必须登录到计算机,这需要用户先启动计算机。 拥有授权域帐户但不具有附加身份验证元素的用户将无法启动计算机进行登录。 由于域策略的缘故,任何不知道 PIN 的用户都无法访问便携式电脑中的数据,即使被允许登录计算机的域用户也不例外。

通过脱机攻击进行密钥发现。 系统已使用 TPM 硬件中的密钥(与 PIN 结合)对 VMK 进行了加密。 如果攻击者不知道 PIN,那么他需要发起一次强力攻击才能确定 FVEK 的值。

对操作系统进行脱机攻击。 系统已使用 TPM 硬件中的密钥(与 PIN 结合)对 VMK 进行了加密。 如果攻击者不知道 PIN,那么他需要发起一次强力脱机攻击才能确定 FVEK 的值,并使用该值对卷进行解密以攻击操作系统文件。

通过休眠文件泄露纯文本数据。 BitLocker 的主要目标之一是在计算机关闭或处于休眠模式时保护硬盘中操作系统卷上的数据。 启用 BitLocker 后,休眠文件将被加密。

通过系统页面文件泄露纯文本数据。 启用 BitLocker 后,系统页面文件将被加密。

计算机保留了必需的身份验证元素。 PIN 是另一个非物理身份验证元素,不会随计算机丢失,除非它被写在某处,如一张纸上。

用户错误。 由于 BitLocker 是一种全卷加密技术,因此它可以对 Windows Vista 操作系统卷中存储的所有文件进行加密。 此功能可帮助避免错误,防止用户对是否应用加密作出错误决定。

其余风险和及其缓解: 使用 TPM 和 PIN 的 BitLocker

在没有其他控件和策略的情况下,使用 TPM 和 PIN 的 BitLocker 选项不能缓解以下风险:

处于睡眠(待机)模式的计算机。 当便携式计算机进入睡眠模式时,便携式计算机和 BitLocker 加密密钥的状态不会更改。 当计算机从睡眠模式恢复时,仍可访问 FVEK。 此风险可通过启用“计算机从睡眠模式恢复时提示输入密码”设置来缓解。

处于登录状态且桌面未锁定的计算机。 计算机启动且 VMK 开启后,可使用键盘的任何人均能访问未加密数据。 缓解此风险最有效的方法是对可能在计算机上存放了敏感信息的用户进行安全意识培训。

对操作系统进行联机攻击。 此选项不能缓解对操作系统的联机攻击。

平台攻击。 输入用户 PIN 后,配置有 BitLocker、TPM 和用户 PIN 的计算机将会启动操作系统并加载到 Windows 用户凭据界面(Winlogon)。 平台攻击将无法恢复密钥材料,直至用户输入 PIN。 输入 PIN 后,此类攻击可能会导致密钥材料泄露。

BitLocker 选项: 使用 TPM 和 USB 设备的 BitLocker

在前面的选项中,BitLocker 被配置为将 PIN 作为身份验证的另一要素与 TPM 结合使用。 也可以使用 USB 设备作为 PIN 的备用。 在此选项中,系统会在启动时或从休眠模式恢复时提示用户插入 USB 设备。

下图显示了使用 TPM 和 USB 的 BitLocker 选项中解密过程的逻辑流程。

使用 TPM 和 USB 设备的 BitLocker 驱动器加密

图 2.4. 使用 TPM 和 USB 设备的 BitLocker 解密过程

图解顺序的步骤如下:

1.

BIOS 启动并初始化 TPM。 受信任/受测量的组件与 TPM 交互,以将组件测量数据存储在 TPM 平台配置注册表 (PCR) 中。

2.

系统将提示用户插入包含 BitLocker 密钥的 USB 设备。

3.

如果 PCR 值与期望值匹配,则中间密钥将通过使用 SRK 的 TPM 进行解密。 此中间密钥与 USB 设备上的密钥组合可以生成另一个用于解密 VMK 的中间密钥。

4.

从卷中读取加密 FVEK,并使用解密 VMK 对其进行解密。

5.

访问磁盘扇区时,使用 FVEK 进行解密。

6.

为应用程序和过程提供纯文本数据。

此选项与使用 TPM 的 BitLocker 或使用 TPM 和 PIN 的 BitLocker 基本选项不同,因为要将存储在 USB 中的密钥材料与 TPM 密钥结合才能解密 VMK。 开启操作成功完成后,BitLocker 将按照其在基本选项中的步骤执行操作。

已缓解的风险: 使用 TPM 和 USB 设备的 BitLocker

使用 TPM 和 USB 设备的 BitLocker 选项可减缓以下数据风险:

处于休眠模式的计算机。 从休眠模式恢复后,BitLocker 将要求对 USB 设备重新进行身份验证。

发现本地/域密码。 如同前面的选项,使用 TPM 和 USB 选项的 BitLocker 的主要优点是这一解决方案引入了另一要素(或凭据),在启动计算机或从休眠模式恢复计算机时必须提供该要素。

内部人员可以读取加密数据。 由于此选项添加了身份验证元素,因此降低了拥有有效帐户的未授权用户可能启动计算机、登录和读取加密数据的风险。

通过脱机攻击进行密钥发现。 如果 USB 设备不存在,则攻击者需要对 USB 设备上保留的密钥发起一次强力攻击才能确定 FVEK 的值。

对操作系统进行脱机攻击。 如果 USB 设备不存在,则攻击者需要对 USB 设备上保留的密钥发起一次强力攻击才能成功攻击操作系统。

通过休眠文件泄露纯文本数据。 BitLocker 的主要目标之一是在计算机关闭或处于休眠模式时保护硬盘中操作系统卷上的数据。 启用 BitLocker 后,休眠文件将被加密。

通过系统页面文件泄露纯文本数据。 在 Windows Vista 上,页面文件使用计算机启动时生成的临时对称密钥进行加密,但该密钥不会被写入磁盘。 系统关闭后将,该密钥将被丢弃,因此从页面文件恢复数据就要求进行强力攻击以找到用于加密此页面文件的对称密钥。

用户错误。 由于 BitLocker 是一种全卷加密技术,因此它可以对 Windows Vista 操作系统卷中存储的所有文件进行加密。 此功能可帮助避免错误,防止用户对是否应用加密作出错误决定。

其余风险和及其缓解: 使用 TPM 和 USB 设备的 BitLocker

在没有其他控件和策略的情况下,使用 TPM 和 USB 设备的 BitLocker 选项不能缓解以下风险:

处于睡眠(待机)模式的计算机。 当便携式计算机进入睡眠模式时,便携式计算机和 BitLocker 加密密钥的状态不会更改。 当计算机从睡眠模式恢复时,仍可访问 FVEK。 此风险可通过启用“计算机从睡眠模式恢复时提示输入密码”设置来缓解。

处于登录状态且桌面未锁定的计算机。 计算机启动且 VMK 解密后,可使用键盘的任何人均能访问未加密数据。 缓解此风险最有效的方法是对可能在计算机上存放了敏感信息的用户进行安全意识培训。

对操作系统进行联机攻击。 如果攻击者能通过提供 USB 设备作为启动过程的一部分而正常启动计算机,那么他可以发起各种攻击,包括特权升级攻击和可进行远程利用的攻击。

平台攻击。 配置了 BitLocker、TPM 和 USB 设备的计算机将会启动操作系统并加载到 Windows 用户凭据界面 (Winlogon)。 平台攻击可能会导致密钥材料泄露。

计算机保留了必需的身份验证元素。 USB 设备是单独的物理身份验证元素,是加密解决方案的依据。 通过要求提供另一个非物理身份验证元素(例如 PIN 或密码),可以缓解用户同时丢失计算机和 USB 设备的风险。

BitLocker 风险分析摘要

下表列出了一些数据风险并指明不同的 BitLocker 选项是否能缓解每种风险。 可通过特定选项降低的风险标记了字母 Y。连字符 - 表示特定选项的缓解作用低或不能缓解的风险。

表 2.1. BitLocker 风险缓解

BitLocker 风险缓解

第 3 章: 加密文件系统

发布日期: 2007年04月04日

Microsoft® Windows® XP 和 Windows Vista™ 包括数据保护功能并可以通过加密文件系统 (EFS) 恢复受保护数据。 EFS 是一种数据加密技术,可以应用到特定文件夹中的单个文件或所有文件。 没有相应的密钥材料就无法解密 EFS 文件。 另外,需要格外注意的是,与 Microsoft BitLocker™ 驱动器 加密 (BitLocker) 不同,EFS 无法应用到启动操作系统所需的任何文件。

虽然 BitLocker 可以保证加密整个系统卷上的所有数据,但在为一台计算机的单个或多个用户配置加密时,EFS 具有更高的准确性和灵活性的优势。 例如,EFS 可用于加密网络上由多个用户访问的数据文件,而 BitLocker 则没有这种功能。

EFS 通过一个只能由用户及任何授权恢复代理访问的密钥来保护文件,从而实现按用户加密。 获取这些文件的副本的攻击者将无法读取这些文件,除非他们在作为加密这些文件的用户登录时,还获取了密钥材料或者直接将这些文件从原始位置复制到另一位置。

本页内容
Windows XP 中的 EFSWindows XP 中的 EFS
Windows Vista 中的 EFSWindows Vista 中的 EFS
EFS 选项: 带软件密钥存储的 EFSEFS 选项: 带软件密钥存储的 EFS
EFS 选项: 使用智能卡的 EFSEFS 选项: 使用智能卡的 EFS
EFS 风险分析摘要EFS 风险分析摘要
更多信息更多信息

Windows XP 中的 EFS

尽管 Windows 2000 中就提供了 EFS,但 Windows XP 和 Windows Server® 2003 中提供了重要的新增功能,这包括:

增强型恢复功能。

完全支持对用于共享加密文件的证书进行撤消检查。

对 Windows Explorer 用户界面的更改使您可以方便地查找和验证受保护的文件。

支持 Windows XP 中的加密脱机文件夹。

加密文件多用户支持。

支持 Microsoft Enhanced and Strong cryptographic service providers (CSP)。

使用 EFS 通过 WebDAV 进行端对端加密。

有关这些适用于 Windows XP 的 EFS 增强功能的详细信息,请参阅文章“Windows XP 和 Windows Server 2003 中的加密文件系统”。

在本章所描述的所有 EFS 情形中,登录用户都可以使用 Windows Explorer 中的高级属性界面启用对文件和文件夹的加密。

“Windows XP 高级属性”对话框

图 3.1.“Windows XP 高级属性”对话框

首次加密文件夹中的文件时会出现提示,询问用户是仅加密选中的文件还是加密整个文件夹。

对于那些需要加强控制 EFS 加密策略范围的组织,还可以使用组策略对象 (GPO) 集中管理 EFS 以自动分发脚本,这些脚本使用 Cipher.exe 实用工具来配置整个组织中的加密。

  注意:

基于软件模式的 EFS 和基于智能卡模式的 EFS 都要求提供用于每个操作的相关证书。 例如,基于智能卡的 EFS 要求提供用于每项加密或解密的智能卡。 该功能可防止用户使用没有相关私钥的证书意外加密文件,这是因为如果私钥不可用,则证书也无法用于加密。

Windows Vista 中的 EFS

Windows Vista 商用版、企业版和终极版中均提供了 EFS,Windows Server“Longhorn”版本也将提供 EFS。 Windows Vista 为 EFS 提供了其他一些重要的增强功能,其中包括:

使用智能卡上直接存储的加密密钥进行 EFS 加密。

基于向导的创建以及用于 EFS 的证书选项。

基于向导将旧智能卡中的文件迁移到新智能卡中。

启用 EFS 时加密系统页面文件。

新的“组 策略”选项有助于管理员定义并实施 EFS 的组织策略。 这些选项包括以下功能:索取用于 EFS 的智能卡,强制加密页面文件,规定 EFS 的最小密钥长度,以及强制加密用户的“我的文档”文件夹。

新的用户界面中显示了在 Windows Vista 中精确管理 EFS 功能的更强功能:

“Windows Vista 高级属性”对话框

图 3.2. Windows Vista EFS 管理界面

本章的剩余部分将讨论两个 EFS 选项,并描述每个选项所提供的保护级别。

EFS 选项: 带软件密钥存储的 EFS

此 EFS 选项仅需要一台基于 Windows XP 或 Windows Vista 的计算机。

此选项中 EFS 加密过程的逻辑顺序如下图所示:

EFS 加密过程

图 3.3. EFS 加密过程

图解加密顺序的步骤如下所示:

1.

用户在加密文件夹中创建新的文件。

2.

随机生成对称的文件加密密钥 (FEK)。

3.

操作系统检查用户的证书存储以查找拥有相应的密钥使用标志的证书。 如果不存在相应的证书,那么系统会自动生成一个证书。

4.

数据保护应用程序编程接口 (DPAPI) 用于加密并存储与用户证书关联的私钥。

5.

使用证书的公钥加密 FEK 并将其存储在文件元数据中。

6.

FEK 用于加密每个数据块。

7.

这些加密数据块被写入磁盘中。

此选项中 EFS 解密过程的逻辑顺序如下图所示:

EFS 解密过程

图 3.4. EFS 解密过程

图解解密顺序的步骤如下所示:

1.

本地验证或由域控制器验证用户登录。

2.

用户尝试访问加密文件。

3.

使用 DPAPI 检索与用户的 X.509 证书关联的私钥,并使用用户登录凭据派生的密钥将其解密。

4.

从文件中检索 FEK,并使用上一步获取的私钥将其解密。

5.

根据请求使用 FEK 解密每个文件块。

6.

解密的数据被传递到请求应用程序。

有关 EFS 实施操作的其他信息,请参阅加密文件系统技术参考

已缓解的风险: 带软件密钥存储的 EFS

此 EFS 选项可缓解以下数据风险:

内部人员可以读取加密数据。 与 BitLocker 相比,EFS 的特定优势在于这些加密密钥存储在通过用户凭据保护的安全密钥存储中。 在此配置中,凭据就是密码。 因此,计算机的其他授权用户可以通过交互或网络登录此计算机,但是不能访问计算机上由另一用户使用 EFS 保护的机密文件,除非该用户专门授予他们访问这些文件的权限。

通过脱机攻击进行密钥发现。 假设攻击者以密钥(例如 FEK 或 DPAPI 主密钥,而非用户的密码)为目标,则 EFS 恢复密钥(EFS 所使用证书的私钥)或 DPAPI 主密钥会受到强力攻击的影响。 许多组织不应过于担心这一威胁,因为此类攻击针对 EFS 所使用的强大密钥类型,很难成功。

通过系统页面文件泄漏纯文本数据(仅限 Windows Vista)。 Windows Vista 能够加密系统页面文件的内容,这就消除了一个可能的数据泄露源。 此功能的实施专门用于保护计算机正在使用的主 DPAPI 密钥等 Windows Vista EFS 密钥(请参阅以下主题)。 此功能还有助于解决此 EFS 选项中的风险,在该选项中,如果某个应用程序正在使用纯文本数据,那么页面文件中也可能可以使用这些纯文本数据。 用于加密页面文件的加密密钥使用寿命较短,并且是在本地安全机构 (LSA) 中生成。 这些加密密钥并非从用户登录凭据或 X.509 证书中派生出来。 计算机关闭(或崩溃)后,除了强力攻击,任何已知方法都无法恢复或读取此加密页面文件的数据。

其余风险及其缓解: 带软件密钥存储的 EFS

在没有其他控件和策略的情况下,此 EFS 选项不能缓解以下风险:

处于休眠模式的计算机。 与 BitLocker 选项相同,如果用户未将计算机配置为从睡眠或休眠模式恢复时提示输入密码,则操作系统无法分辨当前用户是否是正确的用户。 在这种情况下,攻击者可以像授权用户那样使用此便携式计算机。 一种很可能的攻击是将所关注的数据复制到移动设备或网络位置。 但是,如果用户将此计算机配置为从睡眠或休眠模式恢复时提示输入用户凭据,则可以降低此风险。

处于睡眠(待机)模式的计算机。 与上述风险缓解说明相同。

处于登录状态且桌面未锁定的计算机。 用户登录计算机后,就可以使用这些凭据解密用于 EFS 的证书。 从此时起,任何能够使用键盘的人员均可访问未加密数据。 缓解此风险最有效的方法是对可能在计算机上拥有敏感信息的用户进行安全意识培训。

发现本地/域密码。 在此配置中,系统将会按照一定的顺序(以用户密码派生的密钥开始)解密 EFS 密钥。 因此,如果用户的密码被泄露,则 EFS 加密也会泄露。 您可以实施强密码策略来抵御攻击(例如字典攻击),并教育用户有关保护其密码的重要性,从而缓解此类风险。

对操作系统进行脱机攻击。 在脱机攻击情形中,EFS 不提供对计算机操作系统或任何操作系统配置文件的保护。

对操作系统进行联机攻击。 此选项不能缓解对操作系统的联机攻击。 能够在操作系统上运行任意代码的攻击者也可以盗取加密密钥。

通过休眠文件泄露纯文本数据。 EFS 不提供对系统休眠文件的保护。 通过升级到 Windows Vista 并使用 BitLocker 或通过禁用休眠可以缓解此风险。

  要点:

禁用休眠会降低移动 PC 的可用性。 此缓解措施可能适合那些存储了极其宝贵资产的计算机,但是一般而言,其他缓解措施更为适合。

通过系统页面文件泄漏纯文本数据(仅限 Windows XP)。 在 Windows XP 上,EFS 不能用于加密任何系统文件,包括系统页面文件。 这一限制意味着在通过应用程序访问机密数据时,这些数据可能会作为内存页面操作的典型部分被写入磁盘。 升级到 Windows Vista 或将计算机配置为不使用内存页面可以缓解此风险。

  要点:

禁用内存页面通常会降低计算机的性能,而且有时会很明显。

平台攻击。 配置为使用带软件密钥存储的 EFS 的计算机会将 EFS 密钥维持在磁盘上和内存中。 使用直接内存访问或其他硬件操作技术的平台攻击可能恢复密钥材料。

计算机保留了必需的身份验证元素。 在该选项中,不存在其他身份验证元素。 唯一的身份验证元素是用户的计算机或网络密码。

用户错误。 用户必须注意不要将包含敏感数据的文件保存到未启用 EFS 的位置。 由于 Windows Vista 上存在一个 EFS 配置选项,该选项允许加密用户文档文件夹中的所有文件,因此该风险得到部分缓解。 此功能可使用户更轻易地确保适当的文件和目录得到加密。 使用 Microsoft Encrypting File System Assistant 工具(作为该 Solution Accelerator 的一部分提供的 EFS Assistant)可帮助自动化使用 EFS 保护用户文件的过程,从而也可以缓解此风险。

EFS 选项: 使用智能卡的 EFS

不同版本的 Windows 提供了不同的功能来改善 EFS 的安全特征。 以下小节提供了有关这些不同功能的信息。

Windows XP 和智能卡登录

需要智能卡登录是通过 Active Directory® 目录服务配置的域用户设置,它要求用户使用智能卡登录到其域帐户。 EFS 面临的主要风险是:如果用户密码泄露,那么攻击者就可以使用该帐户登录计算机并访问计算机上的任意数据,其中包括使用 EFS 保护的数据。

要求使用智能卡进行登录的 Active Directory 策略设置极大地提高了帐户的安全性,乃至使用 EFS 保护的任何数据的安全性。 此设置还有助于保护加密数据免受脱机攻击,这是由于它增强了 EFS 用于 DPAPI 加密的密钥。 DPAPI 通过从用户凭据派生密钥来运行。

可能要求智能卡以下列两种方式登录: 根据用户和根据计算机。 每种模式下都可以启用或强制实施智能卡登录。 这两种模式存在某些重要的安全差异,如下所示:

使用强制根据用户智能卡登录,则初始密钥明显强于典型密码。 攻击者无法对密码发起字典攻击,他必须对私钥发起强力攻击,而我们使用当前技术可以将私钥延长到足够长,以至于这种私钥实质上不可破解。

与仅使用密码登录相比,强制根据计算机智能卡登录在某些方面提供了更高的安全性,这是由于它添加了另一身份验证元素。 不过,根据计算机智能卡登录仅使用智能卡进行登录身份验证。 攻击者如能获取加密 DPAPI 主密钥,则仍可以发起强力攻击,而且较之针对受根据用户智能卡登录保护的 DPAPI 主密钥成功发起强力攻击要花更少的时间。

启用(而非强制实施)每种类型的智能卡登录均不会增加有效的安全保护,因为是否使用智能卡登录由用户来选择。

有关 DPAPI 以及智能卡登录如何影响 DPAPI 密钥的详细信息,请参阅 MSDN 文章“Windows 数据保护”。

  注意:

此风险讨论假定智能卡与重要的 PIN 结合使用,并且智能卡会实施 PIN 锁定以防止猜测 PIN。

Windows XP 中具有智能卡登录选项的 EFS 加密如下图所示。

具有智能卡登录选项的 Windows XP EFS 加密

图 3.5. Windows XP 中具有智能卡登录选项的 EFS 加密顺序

图解加密顺序的步骤如下所示:

1.

用户在加密文件夹中创建新的文件。

2.

随机生成对称 FEK。

3.

操作系统检查用户的证书存储以查找拥有相应的密钥使用标志的证书。 如果不存在相应的证书,那么系统会自动生成一个证书。

4.

DPAPI 用于加密并存储与用户证书关联的私钥。 此加密功能比先前选项中的加密功能强大的多,这是由于要求使用智能卡登录时所使用的密码要强大的多。

5.

使用证书的公钥加密 FEK 并将其存储在文件元数据中。

6.

FEK 用于加密每个数据块。

7.

这些加密数据块被写入磁盘中。

Windows XP 中具有智能卡登录选项的 EFS 解密如下图所示。

具有智能卡登录选项的 Windows XP EFS 解密

图 3.6. Windows XP 中具有智能卡登录选项的 EFS 解密顺序

图解解密顺序的步骤如下所示:

1.

本地验证或由域控制器验证用户的智能卡登录。

2.

用户尝试访问加密文件。

3.

从用户的 DPAPI 存储中检索正确的私钥,然后 DPAPI 将使用从强大的随机用户密码中派生出来的密钥将其解密,其中该用户密码在帐户启用要求使用智能卡登录时会应用到用户帐户。

4.

从文件中检索 FEK,并使用上一步检索到的私钥将其解密。

5.

在应用程序读取每个文件块时,将使用 FEK 解密文件块,然后将文件块传递到请求应用程序。

Windows Vista 与使用智能卡的 EFS

Windows Vista 提供了强大的新增功能,这些新增功能与智能卡技术进行了更强的集成,从而增强了 EFS 的安全性和可用性。 Windows XP 中间接使用了智能卡登录,因为这样能够改善 DPAPI 密钥的特征。 但在 Windows Vista 中,智能卡可被直接用于通过 EFS 加密文件。 这些新增功能不要求用户使用智能卡登录,尽管此方案当然同样可行。 如果将 EFS 配置为要求使用智能卡,则系统会提示用户插入其智能卡并输入 PIN。

对 EFS 和智能卡的明显实施就是使用公钥直接加密 FEK,并使用与智能卡上证书对应的私钥解密 FEK。 尽管此选项非常直接而又安全,但在解密每个受访问文件时会带来性能影响,这是由于每项私钥解密操作都涉及与智能卡之间的通信,而与主机的 CPU 相比,智能卡 CPU 的运行速度非常缓慢。

有关明显实施的另一问题是必须始终使用智能卡,因为每次尝试解密文件均需要私钥以成功解密 FEK。 EFS 被默认配置为从智能卡上的私钥派生对称密钥,并使用此密钥解密和加密与加密文件关联的 FEK。这种方法可以同时提高具有智能卡选项的 EFS 的性能和可用性。 在默认配置中,派生的对称密钥将被操作系统缓存,这样,后续的文件加密或解密操作就不需要使用智能卡及其关联的私钥或公钥。

配置是否派生并缓存对称密钥的能力将作为从智能卡创建可缓存用户密钥选项显示在图 3.2. Windows Vista EFS 管理界面中。 如果清除了此选项,则既不会派生也不会缓存对称密钥,并且将直接使用智能卡密钥加密和解密 FEK。 本指南使用术语缓存密钥模式未缓存密钥模式描述这两种具有独特安全特征的不同操作模式。

缓存密钥模式

在缓存密钥模式下,派生的对称密钥被操作系统缓存在受保护的 LSA 内存中,直到缓存超时值(可以配置)过期。 默认缓存超时值是八个小时系统空闲时间。 任何使用派生密钥的操作都会重置刷新超时时间。 也可以将 EFS 密钥缓存刷新配置为在用户锁定计算机或卸下智能卡时发生。 缓存密钥模式能显著改善性能,且管理员可以在该模式下配置 EFS,从而无需始终在读卡器中插入智能卡就可以对加密文件进行加密和解密。

  注意:

有关如何在 Windows Vista 中实施缓存模式的详细信息,请参阅 Windows Vista 安全指南

缓存密钥模式下的 EFS 加密如下图所示:

使用智能卡的 Vista EFS 加密 - 缓存

图 3.7. Windows Vista 中使用智能卡的 EFS 加密顺序 - 缓存密钥模式

图解加密顺序的步骤如下所示:

1.

用户在加密文件夹中创建新的文件。

2.

如果以下任一条件成立,系统就会提示用户插入智能卡并输入 PIN:

用户不是使用智能卡登录的计算机。

用户最近未使用其智能卡访问 EFS 文件。

未从最近的 EFS 操作中缓存智能卡 PIN,或是 PIN 缓存由于不活动而被清除。

3.

随机生成了 FEK。

4.

如果以下任一条件成立,则会从智能卡私钥派生对称密钥:

第一个文件已被加密。

缓存中不存在派生密钥。

5.

使用派生对称密钥对 FEK 进行了加密并将其存储在文件元数据中。

6.

派生对称密钥被缓存在受 LSA 保护的内存中。

7.

FEK 用于加密每个数据块。

8.

这些加密数据块被写入磁盘中。

缓存密钥模式下的 EFS 解密如下图所示:

使用智能卡的 Vista EFS 解密 - 缓存

图 3.8. Windows Vista 中使用智能卡的 EFS 解密顺序 - 缓存密钥模式

图解解密顺序的步骤如下所示:

1.

用户尝试访问加密文件。

2.

如果以下任一条件成立,系统就会提示用户插入智能卡并输入 PIN:

用户不是使用智能卡登录的计算机。

用户最近未使用其智能卡访问 EFS 文件。

未从最近的 EFS 操作中缓存智能卡 PIN,或是 PIN 缓存由于不活动而被清除。

3.

如果尚未缓存对称密钥,则会从基于智能卡的私钥派生该密钥。 首次使用对称密钥后,其被缓存在受 LSA 保护的内存中。

4.

从文件检索出 FEK,并使用派生对称密钥将其解密。

5.

在应用程序读取每个文件块时,将使用 FEK 解密文件块,然后将文件块传递到请求应用程序。

未缓存密钥模式

下图显示使用未缓存模式下运行的 EFS 在 Windows Vista 中进行 EFS 加密。

使用智能卡的 Vista EFS 加密 - 未缓存

图 3.9. Windows Vista 中使用智能卡的 EFS 加密顺序 - 未缓存密钥模式

图解加密顺序的步骤如下所示:

1.

用户在加密文件夹中创建新的文件。

2.

如果用户未插入智能卡,则系统会提示用户插入其智能卡。

3.

随机生成对称 FEK。

4.

使用证书的公钥加密 FEK 并将其存储在文件元数据中。

5.

应用程序写入每个数据块后,系统会使用 FEK 将其加密。

6.

加密数据块被写入磁盘。

未缓存密钥模式下的 EFS 解密如下图所示:

使用智能卡的 Vista EFS 解密 - 未缓存

图 3.10. Windows Vista 中使用智能卡的 EFS 解密顺序 - 未缓存密钥模式

图解解密顺序的步骤如下所示:

1.

用户尝试访问加密文件。

2.

如果用户未插入智能卡,则系统会提示用户插入其智能卡。 如果以下任一条件成立,系统就会提示用户输入 PIN:

用户不是使用其智能卡登录的计算机。

用户最近未使用其智能卡访问 EFS 文件。

未从最近的 EFS 操作中缓存智能卡 PIN,或是 PIN 缓存由于不活动而被清除。

3.

从文件中检索此文件的 EFS 元数据,并将加密的 FEK 传递到智能卡。

4.

智能卡解密元数据以获取 FEK,此 FEK 随后会返回到操作系统。

5.

在应用程序读取每个文件块时,将使用 FEK 解密文件块,然后将文件块传递到发出请求的应用程序。

已缓解的风险: 使用智能卡的 EFS

具有智能卡选项的 EFS 可缓解以下数据风险:

处于休眠模式的计算机(仅限 Windows Vista 未缓存密钥模式)。 每当访问受 EFS 保护的文件时,Windows Vista 均会要求进行智能卡身份验证。 此操作模式可以有效地缓解此风险,尽管默认的缓存密钥智能卡模式不能达到此目的。

处于睡眠(待机)模式的计算机(仅限 Windows Vista 未缓存密钥模式)。 与先前的(休眠模式)风险缓解说明相同。

处于登录状态且桌面未锁定的计算机(仅限 Windows Vista 未缓存密钥模式)。 每当访问受 EFS 保护的文件时,Windows Vista 均会要求进行智能卡身份验证。 这一功能(也称为未缓存密钥模式)已在本章前面的部分作出了讨论,它要求访问所有 EFS 文件时均应提供智能卡,从而有效地缓解了此风险。 虽然此方案可能带来严重的可用性问题,但它对于那些要为其敏感和重要数据实施最安全的加密解决方案的组织仍不失为一种有效的选项。

发现本地/域密码。 如第 1 章中“数据安全风险”部分所述,聪明的攻击者始终会利用最薄弱的环节。 负责保护 IT 系统的人员所遗憾的是,最薄弱的环节通常就是用户本身,用户可能选择安全性非常低的密码,或者将安全性非常高的密码写在一张纸上并将这张纸粘贴在显示器上。 在组织为网络安全实施了基于智能卡的二元身份验证之后,您应能通过使用“用于交互式登录的智能卡”策略来提高 EFS 的安全性。 在 Windows Vista 上,访问敏感数据时,甚至在启用了索取用于 EFS 的智能卡设置后仍无法强制进行智能卡登录的情况下,就需要进行二元身份验证。

内部人员可以读取加密数据。 具有智能卡选项的 EFS 通过添加额外的身份验证元素提供了有效的缓解措施。

通过脱机攻击进行密钥发现。 假设攻击者以密钥(例如 FEK 或 DPAPI 主密钥,而非用户的密码)为目标,则 EFS 恢复密钥(EFS 所使用证书的私钥)或 DPAPI 主密钥会受到强力攻击的影响。 许多组织不应过于担心这一威胁,因为此类攻击针对 EFS 所使用的强大密钥类型,很难成功。

通过系统页面文件泄漏纯文本数据(仅限 Windows Vista)。 您可以配置 Windows Vista 以加密系统页面文件,这就有效地缓解了此风险。

平台攻击(仅限 Windows Vista 未缓存密钥模式)。 在缓存密钥模式下,配置为使用带智能卡密钥存储的 EFS 的计算机会将 EFS 密钥维持在内存中,平台攻击可能会成功恢复这些密钥。 与未缓存智能卡密钥存储结合使用的 EFS 会要求直接攻击智能卡以恢复密钥材料,从而能够有效地缓解此类攻击。

计算机保留了必需的身份验证元素。 在此选项中,用户必须提供 PIN 和物理身份验证元素,这就提供了真正的多元素缓解措施。

其余风险及其缓解: 使用智能卡的 EFS

在没有其他控件和策略的情况下,具有智能卡选项的 EFS 不能降低以下风险:

处于休眠模式的计算机(仅限 Windows XP 和 Windows Vista 缓存密钥模式)。 如果用户并未将计算机配置为从睡眠或休眠模式恢复时提示输入密码,则操作系统无法分辨当前用户是否是正确的用户。 在这种情况下,攻击者可以像授权用户那样使用此便携式计算机。 一种很可能的攻击是将所关注的数据复制到移动设备或网络位置。 但是,如果用户将此计算机配置为从睡眠或休眠模式恢复时提示输入用户凭据,则可以降低此风险。 使用 Windows Vista 时,在具有智能卡选项的 EFS 中,可以通过前面阐述的方法来缓解此风险。

处于睡眠(待机)模式的计算机(仅限 Windows XP 和 Windows Vista 缓存密钥模式)。 与先前的(休眠模式)其余风险说明相同。

处于登录状态且桌面未锁定的计算机(仅限 Windows XP 和 Windows Vista 缓存密钥模式)。 用户登录计算机后,就可以使用这些凭据解密用于 EFS 的证书。 从此时起,任何能够使用键盘的人员均可访问未加密数据。 缓解此风险最有效的方法是对可能在计算机上存放了敏感信息的用户进行安全意识培训。 使用 Windows Vista 时,在具有智能卡选项的 EFS 中,可以通过前面阐述的方法来缓解此风险。

对操作系统进行脱机攻击。 在脱机攻击情形中,EFS 不提供对计算机操作系统或任何操作系统配置文件的保护。

对操作系统进行联机攻击(仅限 Windows XP 和 Windows Vista 缓存密钥模式)。 此选项不能缓解对操作系统的联机攻击。 但是,结合使用 Windows Vista 和未缓存密钥模式下智能卡可以部分缓解此风险,因为这样可使攻击者无法访问主操作系统上运行的程序,从而无法恢复 EFS 密钥。

通过休眠文件泄露纯文本数据。 EFS 不提供对系统休眠文件的保护。 通过升级到 Windows Vista 并使用 BitLocker 或通过禁用休眠可以缓解此风险。

  要点:

禁用休眠会降低移动 PC 的可用性。 此缓解措施可能适合那些存储了极其宝贵资产的计算机,但是一般而言,其他缓解措施更为适合。

通过系统页面文件泄漏纯文本数据(仅限 Windows XP)。 在 Windows XP 上,EFS 不能用于加密任何系统文件,包括系统页面文件。 这一限制意味着在通过应用程序访问机密数据时,这些数据可能会作为内存页面操作的典型部分被写入磁盘。 升级到 Windows Vista 或将计算机配置为不使用内存页面可以缓解此风险。

  要点:

禁用内存页面通常会降低计算机的性能,而且有时会很明显。

平台攻击(仅限 Windows XP 和 Windows Vista 缓存密钥模式)。 在缓存密钥模式下,计算机会将 EFS 密钥维持在内存中,而平台攻击可能成功恢复这些密钥。

用户错误。 用户必须注意不要将包含敏感数据的文件保存到未启用 EFS 的位置。 由于 Windows Vista 上有一个 EFS 配置选项,该选项允许加密用户文档文件夹中的所有文件,从而可以部分缓解此风险。 此功能可使用户更轻易地确保适当的文件和目录得到加密。 使用 EFS Assistant 工具(作为该 Solution Accelerator 的一部分提供)可帮助自动化使用 EFS 保护用户文件的过程,从而也可以缓解此风险。

EFS 风险分析摘要

下表列出了一些数据风险并指明各种 EFS 选项是否能缓解每种风险。 对于基于 Windows XP 的计算机,已启用“要求使用智能卡登录”域用户设置。 对于基于 Windows Vista 的计算机,已启用了计算机上的“索取用于 EFS 的智能卡”和“启用页面文件加密”等 EFS 设置。

可通过特定选项缓解的风险标记了字母“Y”。连字符 - 表示特定选项的缓解作用低或不能缓解的风险。

表 3.1. EFS 风险缓解

EFS 风险缓解

第 4 章: BitLocker 与 EFS 结合

发布日期: 2007年04月04日

Microsoft® BitLocker™ 驱动器加密 (BitLocker) 和加密文件系统 (EFS) 是两种独立的技术,它们可以被结合起来使用,从而为数据安全性提供非常强大的整体解决方案。 使用这种结合 BitLocker 和 EFS 的加密解决方案可以发挥强大的单机加密(BitLocker 提供)和单用户加密(EFS 提供)所带来的巨大优势。

本页内容
选择 BitLocker 和 EFS 组合选择 BitLocker 和 EFS 组合

选择 BitLocker 和 EFS 组合

组织可以实施许多不同的 BitLocker 和 EFS 组合。 完全讨论所有可能的 BitLocker 和 EFS 组合不在本文档所讨论的范围之内,尽管其中介绍了一些常见组合。 本章概述了一些组合并讨论了这些组合的风险缓解。 这些组合包括:

使用受信任的平台模块 (TPM) 的 BitLocker 和 EFS

使用 TPM 和个人识别码 (PIN) 的 BitLocker 和 EFS

使用 TPM 和 PIN 的 BitLocker 和带智能卡的 EFS

使用 TPM 的 BitLocker 和带软件密钥存储的 EFS

使用 TPM 的 BitLocker 与带软件密钥存储的 EFS 这一组合能以最低的成本和用户培训需求提供基本的安全。

组织组合 BitLocker 和 EFS 的最有效的解决方案是结合使用 TPM 的 BitLocker 和 EFS(无智能卡)选项,本指南前面讨论了这些选项。 以下小节提供有关这一解决方案特点的信息。

已缓解的风险: 使用 TPM 的 BitLocker 和带软件密钥存储的 EFS

BitLocker 和 EFS 相结合可以缓解以下数据风险:

内部人员可以读取加密数据。 与 BitLocker 相比,EFS 的特定优势在于加密密钥存储在通过用户凭据保护的安全密钥存储中。 在此配置中,凭据就是一个密码。 因此,计算机的其他授权用户可以通过交互或网络登录此计算机,但是不能访问计算机上由另一用户使用 EFS 保护的机密文件,除非该用户专门授予他们访问这些文件的权限。

通过脱机攻击进行密钥发现。 系统已使用 TPM 硬件中的密钥(与 PIN 结合)对卷主密钥 (VMK) 进行了加密。 如果攻击者不知道 PIN,那么他需要发起一次强力攻击才能确定全卷加密密钥 (FVEK) 的值。

对操作系统进行脱机攻击。 攻击者必须从 TPM 成功恢复存储根密钥 (SRK),然后使用此密钥解密 VMK,或者 对FVEK 执行强力攻击,这就缓解了对操作系统进行脱机攻击的风险。 另外,配置了扩散器技术(默认情况下启用)的 BitLocker 正好可以缓解这一性质的集中攻击,因为对暗文的细微更改也将扩散到更大范围。

通过休眠文件泄露纯文本数据。 BitLocker 的主要目标之一是在计算机关闭或处于休眠模式时保护硬盘驱动器操作系统卷上的数据。 如果启用 BitLocker,则会加密休眠文件。

通过系统页面文件泄露纯文本数据。 在 Windows Vista 上,EFS 可以配置为使用计算机启动时生成的临时对称密钥来加密页面文件,但该密钥不会被写入磁盘。 关闭系统后将会丢弃该密钥,这样一来,从页面文件恢复数据就要求进行强力攻击以找到用于加密此页面文件的对称密钥。 如果同时启用了 BitLocker,则攻击者必须破除 BitLocker 对此页面文件密钥成功地进行强力攻击,才能恢复任何有用的信息。

用户错误。 由于 BitLocker 是一种全卷加密技术,因此它可以加密 Windows Vista 操作系统卷中存储的所有文件。 此功能可帮助避免错误,防止用户对是否应用加密作出错误决定。

其余风险和及其缓解: 使用 TPM 的 BitLocker 和带软件密钥存储的 EFS

在没有其他控件和策略的情况下,BitLocker 和 EFS 组合不能缓解以下风险: 您可以在本《安全分析》的第 2 章: BitLocker 驱动器加密第 3 章: 加密文件系统的方案讨论中找到有关这些风险及其缓解方法的详细信息。

处于休眠状态的计算机。 如果用户没有将此计算机配置为在计算机从休眠模式恢复时提示输入密码,则操作系统无法分辨当前用户是否是正确的用户。 如果用户将此计算机配置为在计算机从休眠模式恢复时提示输入用户凭据,则能缓解该风险。

处于睡眠(待机)模式的计算机。 与休眠模式相同,当便携式计算机进入睡眠模式时,便携式计算机和 BitLocker 加密密钥的状态也不会更改。 当计算机从睡眠模式恢复时,仍可访问 FVEK。 这一风险可通过启用计算机从睡眠模式恢复时提示输入密码设置来缓解。

处于登录状态且桌面未锁定的计算机。 如果能够访问使用 BitLocker 和 EFS 进行保护的计算机的桌面,那么该用户实质上就对此计算机拥有完全访问权限。 可通过进行安全意识方面的培训,并考虑使用“组策略”设置使计算机在不活动状态超过某段时间后自动锁定,从而缓解此风险。

发现本地/域密码。 系统将会按照一定的顺序(以用户密码派生的密钥开始)解密 EFS 密钥。 因此,如果用户的密码已泄露,则 EFS 加密也会泄露。

对操作系统进行联机攻击。 此选项能缓解对操作系统的联机攻击。 能够成功攻击正在运行的操作系统的攻击者可以运行他们选择的代码来恢复加密数据。

平台攻击: BitLocker 和 EFS 都无法完全防御平台攻击。

计算机上保留了必需的身份验证元素。 如果用户在计算机保留了登录密码,则攻击者可以登录此计算机并冒充该用户,从而获取对其资源的完全访问权限。 通过对用户进行安全意识培训可以缓解这一风险。

使用 TPM 和 PIN 的 BitLocker 和带软件密钥存储的 EFS

向启用 BitLocker 的计算机添加 PIN 要求将会在牺牲可用性和易管理性的情况下显著增强 BitLocker 技术的安全性。 在该选项中,系统会提示用户输入两个密码以使用计算机: 一个密码针对 BitLocker(启动时),另一密码针对计算机或域(登录时)。 这两个密码应该并且很可能是不同的,这是由于 PIN 仅限于使用功能键 (F0 - F9) 输入的数字字符,而大多数域密码策略都拒绝使用纯数字密码。 在该组合中,EFS 还是能缓解 BitLocker 本身不能缓解的某些攻击。

已缓解的风险: 使用 TPM 和 PIN 的 BitLocker 和带软件密钥存储的 EFS

处于休眠模式的计算机。 使用 TPM 和 PIN 的 BitLocker 可以降低此风险,这是由于当便携式计算机从休眠模式恢复时,系统会提示用户输入 PIN。

发现本地/域密码。 使用 TPM 和 PIN 的 BitLocker 选项的主要优点是该解决方案引入了另一要素(或凭据),计算机启动或从休眠模式恢复时必须提供该要素。 对于那些面临社会工程攻击风险或未养成良好的密码使用习惯(例如在不可信的计算机上使用 Windows 密码)的用户,该选项带来了非常明显的好处。

内部人员可以读取加密数据。 与 BitLocker 相比,EFS 的特定优势在于加密密钥存储在通过用户凭据保护的安全密钥存储中。 在此配置中,凭据就是一个密码。 因此,计算机的其他授权用户可以通过交互或网络登录此计算机,但是不能访问计算机上由另一用户使用 EFS 保护的机密文件,除非该用户专门授予他们访问这些文件的权限。

通过脱机攻击进行密钥发现。 系统已使用 TPM 硬件中的密钥(与 PIN 结合)对 VMK 进行了加密。 如果攻击者不知道 PIN,那么他需要发起一次强力攻击才能确定 (FVEK) 的值。

对操作系统进行脱机攻击。 攻击者必须从 TPM 成功恢复 SRK,然后使用 SPK 解密 VMK,或者对 FVEK 执行强力攻击,这就缓解了对操作系统进行脱机攻击的风险。 另外,配置了扩散器技术(默认情况下启用)的 BitLocker 正好可以缓解这一性质的集中攻击,因为对暗文的细微更改也将扩散到更大范围。

通过休眠文件泄露纯文本数据。 BitLocker 的主要目标之一是在计算机关闭或处于休眠模式时保护硬盘驱动器操作系统卷上的数据。 如果启用 BitLocker,则会加密休眠文件。

通过系统页面文件泄露纯文本数据。 在 Windows Vista 上,EFS 可以配置为使用计算机启动时生成的临时对称密钥来加密页面文件,但该密钥不会被写入磁盘。 关闭系统后将会丢弃该密钥,这样一来,从页面文件恢复数据就要求进行强力攻击以找到用于加密此页面文件的对称密钥。 如果同时启用了 BitLocker,则攻击者必须破除 BitLocker 并对此页面文件密钥成功地进行强力攻击,才能恢复任何有用的信息。

计算机上保留了必需的身份验证元素。 PIN 是另一个非物理身份验证元素,不会随计算机丢失,除非它被写在一张纸上或被放置在显眼位置。

用户错误。 由于 BitLocker 是一种全卷加密技术,因此它可以加密 Windows Vista 操作系统卷中存储的所有文件。 此功能可帮助避免错误,防止用户对是否应用加密作出错误决定。

其余风险和及其缓解: 使用 TPM 和 PIN 的 BitLocker 和带软件密钥存储的 EFS

在没有其他控件和策略的情况下,BitLocker 和 EFS 组合不能缓解以下风险: 您可以在本《安全分析》的第 2 章: BitLocker 驱动器加密第 3 章: 加密文件系统的方案讨论中找到有关这些风险及其缓解方法的详细信息。

处于睡眠(待机)模式的计算机。 当便携式计算机进入睡眠模式时,便携式计算机和 BitLocker 加密密钥的状态不会更改。 当计算机从睡眠模式恢复时,仍可访问 FVEK。 这一风险可通过启用计算机从睡眠模式恢复时提示输入密码设置来缓解。

处于登录状态且桌面未锁定的计算机。 如果能够访问使用 BitLocker 和 EFS 进行保护的计算机的桌面,那么该用户实质上就对此计算机拥有完全访问权限。 可通过进行安全意识方面的培训,并考虑使用“组策略”设置使计算机在不活动状态超过某段时间后自动锁定,从而缓解此风险。

对操作系统进行联机攻击。 此选项能缓解对操作系统的联机攻击。 能够成功攻击正在运行的操作系统的攻击者可以运行他们选择的代码来恢复加密数据。

平台攻击: BitLocker 和 EFS 都无法完全防御平台攻击。

使用 TPM 和 PIN 的 BitLocker 和带智能卡的 EFS(缓存密钥模式)

使用 TPM 和 PIN 的 BitLocker 与处于缓存密钥模式的带智能卡的 EFS 相结合可以缓解本指南中所描述的几乎所有重大风险。 不过,此组合技术要求在智能卡基础结构部署方面进行大量投资,因此它最适合那些对该级别的安全性具有巨大业务需求的组织。

已缓解的风险: 使用 TPM 和 PIN 的 BitLocker 和带智能卡的 EFS

处于休眠模式的计算机。 使用 TPM 和 PIN 的 BitLocker 可以降低此风险,这是由于当便携式计算机从休眠模式恢复时,系统会提示用户输入 PIN。

发现本地/域密码。 使用 TPM 和 PIN 的 BitLocker 选项的主要优点是该解决方案引入了另一要素(或凭据),计算机启动或从休眠模式恢复时必须提供该要素。 对于那些面临社会工程攻击风险或未养成良好的密码使用习惯(例如在不可信的计算机上使用 Windows 密码)的用户,该选项带来了非常明显的好处。

内部人员可以读取加密数据。 与 BitLocker 相比,EFS 的特定优势在于加密密钥存储在通过用户凭据保护的安全密钥存储中。 在此配置中,凭据就是密码。 因此,计算机的其他授权用户可以通过交互或网络登录此计算机,但是不能访问计算机上由另一用户使用 EFS 保护的机密文件,除非该用户专门授予他们访问这些文件的权限。

通过脱机攻击进行密钥发现。 系统已使用 TPM 硬件中的密钥(与 PIN 结合)对 VMK 进行了加密。 如果攻击者不知道 PIN,那么他需要发起一次强力攻击才能确定 (FVEK) 的值。

对操作系统进行脱机攻击。 攻击者必须从 TPM 成功恢复 SRK,然后使用 SPK 解密 VMK,或者对 FVEK 执行强力攻击,这就缓解了对操作系统进行脱机攻击的风险。 另外,配置了扩散器技术(默认情况下启用)的 BitLocker 正好可以缓解这一性质的集中攻击,因为对暗文的细微更改也将扩散到更大范围。

通过休眠文件泄露纯文本数据。 BitLocker 的主要目标之一是在计算机关闭或处于休眠模式时保护硬盘中操作系统卷上的数据。 如果启用 BitLocker,就会加密休眠文件。

通过系统页面文件泄露纯文本数据。 在 Windows Vista 上,EFS 可以配置为使用计算机启动时生成的临时对称密钥来加密页面文件,但该密钥不会被写入磁盘。 由于在关闭系统后将会丢弃该密钥,因此从页面文件恢复数据就要求进行强力攻击以找到用于加密此页面文件的对称密钥。 如果同时启用了 BitLocker,则攻击者必须破除 BitLocker 并对此页面文件密钥成功地进行强力攻击,才能恢复任何有用的信息。

计算机保留了必需的身份验证元素。 PIN 是另一个非物理身份验证元素,不会随计算机丢失,除非它被写在一张纸上或被放置在显眼位置。

用户错误。 由于 BitLocker 是一种全卷加密技术,因此它可以加密 Windows Vista 操作系统卷中存储的所有文件。 此功能可帮助避免错误,防止用户对是否应用加密作出错误决定。

其余风险和及其缓解: 使用 TPM 和 PIN 的 BitLocker 和带智能卡的 EFS

处于睡眠(待机)模式的计算机。 Bitlocker 和处于缓存密钥智能卡模式的 EFS 都不能缓解这一风险。 能够访问处于待机模式的计算机的攻击者可以唤醒此计算机,并访问该用户对其拥有权限的任何数据。

处于已登录状态且桌面未锁定的计算机。 在缓存密钥智能卡模式下,不能缓解该风险。 能够访问未锁定桌面的攻击者可以冒充合法用户访问该用户对其拥有权限的任何数据。

对操作系统进行联机攻击。 BitLocker 和 EFS 都不能完全缓解对操作系统进行联机攻击的风险。 能够成功攻击正在运行的操作系统的攻击者也可以运行他们选择的代码来恢复加密数据。 不过,处于未缓存密钥模式的带智能卡的 EFS 可以有效缓解试图恢复加密密钥的联机攻击的风险。

平台攻击。 在缓存模式下,配置为使用带智能卡密钥存储的 EFS 的计算机会将 EFS 密钥维持在内存中,平台攻击可能会成功恢复这些密钥。 Bitlocker 不提供针对这些平台攻击的保护。

风险分析摘要

下表列出了一些数据风险,并指明使用 TPM 和 PIN 的 BitLocker 和带软件密钥存储的 EFS 的各种组合是否可以缓解每种风险。 可通过特定组合缓解的风险标记了字母“Y”。连字符 - 表示特定组合的缓解作用低或不能缓解的风险。

表 4.1. Bitlocker 和 EFS 风险缓解

BitLocker 和 EFS 风险缓解

第 5 章: 选择正确的解决方案

发布日期: 2007年04月04

要选择恰当的加密技术组合,您必须了解需要保护的数据所面临的风险。 您可为该数据指定价值(确保包括直接和间接成本),然后选择一种能够提供最佳投资回报和相应保护级别的解决方案。

下面的风险缓解概述表列出了一些数据风险,并指明使用本指南中描述的一种加密技术或加密技术组合是否可以缓解每种风险。 可通过特定选项缓解的风险标记了字母“Y”。连字符 - 表示特定选项的缓解作用低或不能缓解的风险。

表 5.1. 风险缓解概述

风险缓解概述
本页内容
使用风险缓解概述表使用风险缓解概述表
结论结论

使用风险缓解概述表

此表可用于选择需要部署以达到组织所需安全状况的恰当技术和配置。 由于加密技术也受操作系统配置和策略的影响,所以此表和所列出的风险可也用于了解其他安全策略对加密解决方案的影响。

例如,通过对此表的观察可看出,对于几乎每个选项而言,组织都必须配置“从待机恢复”功能,以通过本指南中描述的任何一项 Microsoft 技术达到某种合理的安全级别。 用户界面中显示的“计算机从待机恢复时提示输入密码”等系统设置可通过组策略或通过运行调整注册表设置的脚本来进行配置。

增强低威胁环境中的安全性

某些组织的安全要求相对适中,但他们仍需要了解其移动 PC 上的数据是否已加密这种附加保护。 对于这些组织来说,使用 TPM 和 PIN 的 BitLocker 将以最低的运营成本(除要求确保受保护数据由授权用户恢复之外)提供强大的安全保护。 如果您的组织无法部署 BitLocker,则 EFS 将缓解授权用户在 Microsoft Windows® XP 和 Windows Vista™ 上访问数据这种威胁。 在 Windows Vista 上运行 EFS 将帮助降低从系统页面文件泄露数据的风险。 但是,您仍需附加缓解措施来防止其他攻击,包括针对操作系统的脱机攻击和盗用关键资料的企图。

保护个人可识别信息

如果您的组织需要保护员工便携式计算机上的个人可识别信息 (PII) 不受外部威胁,且您的风险评估表明能够防御中等难度的攻击,那么您可以选择部署使用 TPM 和 PIN 的 BitLocker。 拥有此解决方案,要求额外缓解措施的主要外部风险发生在计算机处于不受保护的待机或睡眠模式的时候,这些风险可通过组策略或调整注册表设置的脚本得到缓解。

在需要保护 PII 却不能通过使用 TPM 的 BitLocker 来实现的环境中,您应该考虑部署 EFS,与 Microsoft Encrypting File System Assistant 工具 (EFS Assistant) 结合使用。 此选项可帮助您抵御许多低难度攻击,且作为附加的安全保护,您可以要求使用带智能卡的 EFS 来添加身份验证元素。

但在部署带软件秘钥存储的 EFS 时,请记住受 EFS 保护的数据的安全性取决于用户是否能够登录。 登录密码太弱、共享计算机帐户或其他安全缺陷可能降低 EFS 部署的安全性,您应该减小 EFS 部署伴随的缺陷。

保护极其敏感的数据

对于要求针对内部和外部人员进行最强安全保护的组织,结合使用 BitLocker 和 EFS 的解决方案能够抵御本指南中讨论的中等难度到高难度的攻击。 例如,如果您的组织对关键空间大小具有特殊限制或要求,则您可以将 EFS 的可调节密钥长度与 BitLocker 的全卷加密功能结合起来,以有效缓解广泛的威胁。

结论

本指南中描述的两项技术(BitLocker 和 EFS)互不相同,但都是对数据加密的补充方案。 EFS 可根据用户来保护文件和文件夹中的数据,而 BitLocker 为 Windows Vista 计算机上的系统卷提供全卷加密。 BitLocker 具有启动前完整性检查和加密功能,保护系统卷免受广泛的脱机攻击的威胁,但不具有用户身份验证功能。 EFS 可以对 BitLocker 进行补充,它可以对正在运行的计算机施加限制,只有经过适当身份验证的用户才能访问加密文件。

此《安全分析》指南描述了可以如何使用 BitLocker 和 EFS 来降低各种安全风险。 通过仔细评估组织内的实际风险以及本指南中介绍的缓解措施,您可以明智地选择为敏感数据提供必要保护的技术和选项的组合。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值