什么是 EFS 加密文件系统?
加密文件系统 (EFS) 技术是 Microsoft Windows 2000 和 NTFS 5.0 文件系统的创新之一,其目的是快速加密计算机硬盘上的文件。
NTFS 本身具有内置保护功能。然而,它发行之后不久就产生了对额外安全保护的需求 。原因是 NTFSDos 类型的实用程序被广泛使用,这使得规避 NTFS 安全系统变得非常容易,可以通过 DOS 进入系统,从而忽略设置的访问权限。
EFS 系统使用公钥和私钥加密以及 CryptoAPI 架构。EFS 可以使用以下任何对称文件加密算法:Microsoft Windows 2000 使用 DESX,Windows XP 使用 3DES,Windows XP SP1、 2003 和新的 Windows Vista 使用 AES。
文件加密不需要用户执行任何初步操作。在首次加密文件时,系统会自动为用户签发加密证书和 私钥。 EFS 的一个显著特点是,当文件传输到当前磁盘的不同文件夹或其他 NTFS 驱动器时,文件仍保持加密状态。如果传输到不同的文件系统,文件则会被自动解密。当用户向加密文件夹添加新文件时,文件会自动加密。使用前无需解密文件,因为 EFS 已嵌入操作系统,会自动执行该功能,同时遵守所有安全措施。
EFS 的创建者还确保用户不会丢失私钥,例如在重新安装操作系统或创建新用户账户时。在这种 情况下,可以使用专门设计的 EFS 恢复代理来解密文件。在 Windows 2000 中,恢复代理由本 地管理员(在独立计算机上工作时)或域管理员(如果计算机在域内运行)代表。在 Windows XP 及更高版本中,这必须手动完成。
EFS 加密文件系统的优点和缺点
EFS 技术使一个用户加密的文件无法被另一个不具备相应权限的用户打开。激活加密后,文件在 磁盘的任何存储位置都会重新加密,无论文件被移动到哪里。加密可用于任何文件,包括可执行 文件。
拥有文件解密权限的用户可以像处理其他文件一样处理该文件,不会遇到任何限制或困难。与此 同时,其他用户在尝试访问 EFS 加密文件时会收到限制访问通知。
这种方法无疑非常方便。用户有机会可靠而快速地(使用标准手段)限制其他家庭成员或同事访 问计算机的机密信息。
EFS 似乎是一个无所不能的工具,但事实并非如此。使用该技术加密的数据可能会完全丢失,例 如在重新安装操作系统时。
我们应该记住,磁盘上的文件是使用 FEK(文件加密密钥)加密的,该密钥存储在文件属性中。 FEK 使用主密钥加密,而主密钥又使用可访问该文件的系统用户各自的密钥加密。用户密钥本身 使用用户的密码哈希值加密,密码哈希值使用 SYSKEY 安全功能。
根据 EFS 开发人员的说法,这种加密链应能可靠地保护数据,但在实际操作中,这种保护最终可能会被简化为老式的登录-密码-单词组合。
使用这个加密链,如果密码丢失或重置,或者操作系统失效或重新安装,就无法访问硬盘上的 EFS 加密文件。事实上,访问权可能会不可逆转地丢失。
普通用户并不完全了解 EFS 的工作原理,往往在丢失数据时为此付出代价。
哪些场景会丢失 EFS 加密数据的访问权限?
几乎所有人都遇到过需要完全重新安装 Windows 的情况。其原因可能是软件故障、病毒攻击、 缺乏经验的用户操作失误、用户账户的系统密码丢失或用户配置文件被删除等原因导致操作系统 运行中断。在这种情况下,旧配置中的所有加密数据很可能都会丢失。
- 由于更换了某个组件或组件出现故障,或者是操作系统出现故障,导致系统无法启动。例如, 主板故障、引导扇区损坏、系统文件损坏、安装了一些 "半成品 "更新或其他不稳定软件。 在这种情况下,可以将硬盘连接到另一台计算机上,然后从硬盘上读取数据,但如果硬盘是 EFS 加密的,这种方法就行不通了。
- 公司的系统管理员或用户重置了用户密码。在这种情况下,对 EFS 加密数据的访问也会丢失 。
- 用户配置文件被删除。在这种情况下,文件(和用户密钥)可能仍在磁盘上,但系统无法看到它们,即使以相同的名称重新创建用户,也会为账户分配一个不同的 ID,该 ID 用于加密过程 。在这种情况下,对使用 EFS 加密的数据的访问也将丢失。
- 用户迁移到不同的域(通过不同的服务器进行身份验证)。如果用户加密密钥在迁移时存储在 服务器上(通常是这种情况),那么非专业迁移可能导致无法访问 EFS 加密数据。
- 重新安装系统。在这种情况下,对 EFS 加密数据的访问权限自然会丢失。如果当时制作了整 个系统盘的备份,或至少是用户配置文件("文档和设置")的备份,那么就可以使用特殊软件 恢复访问,但前提是密钥没有损坏。系统本身存储在一个磁盘上,而加密文件存储在另一个磁盘上,这种情况相当普遍。当管理员重 新安装操作系统时,通常只备份存有数据的磁盘,然后重新安装系统。显然,在这种情况下,密 钥丢失,访问加密数据的权限也随之丢失。
如果在使用 EFS 之前设置了 EFS 恢复代理,有一个简单的方法可以避免丢失对 EFS 加密文件的访问。但这对普通用户来说过于复杂,导致实际上极低的实施率。
什么是 EFS 恢复代理?
如果一个用户丢失了加密证书密钥,或者该用户的账户已被删除,但需要加密数据,那么 EFS 恢复代理就是拥有解密该用户加密数据权限的另外一个用户。
通常,恢复代理是管理员,但也可以是其他用户。可以有多个恢复代理。要为用户分配恢复代理 权限:
- 首先需要使用 "Cipher /R:filename "命令创建恢复代理证书,其中 "filename "为创建证书 的路径和名称,不含扩展名。
- 输入密码以保护私钥并确认(密码不会在输入时显示在控制台中)。然后会以指定名称创建两个文件:*.cer 和 *.pfx:*.cer 和 *.pfx。这两个文件分别包含公钥和私钥。
- 将证书添加到恢复代理指定的用户个人存储空间中,导入 *.pfx 文件(双击文件图标启动证书导入向导)。
- 管理员需要打开 "本地安全设置 "组件(开始 - 运行 - secpol.msc),选择 "公钥策略 - EFS",并在菜单 "操作 "中选择 "添加数据恢复代理"。
- 添加恢复代理向导将打开,在第二页点击 "查看文件夹 "并选择之前创建的 *.cer 文件。
为了在重新安装系统或丢失私人密钥后恢复对加密文件的访问,必须将恢复代理的私人密钥保存在一个安全的位置,或者(如果未指定)从 "证书 "组件(certmgr.msc)的 "私人"存放处导出所有使用 EFS 的用户的私人密钥。
在 Windows Vista 中,可以将密钥存储在智能卡上,这在安全性方面要可靠得多。 很明显,使用 EFS 恢复代理的这种安全措施违背了 EFS 原本的简单性原则。虽然对管理员来说很简单,但从普通用户的角度来看,它却是一通非同小可的操作。因此,很少有人使用它,这也就不足为奇了。
如果系统出现故障,该怎么办?
丢失 EFS 加密数据访问权限的典型情况是操作系统与磁盘上物理存在的密钥之间的连接丢失。在这种情况下,不要放弃,恢复数据访问权限的可能性很大。但如果密钥已从磁盘中删除,而且没有备份用户配置文件或用户证书,那么数据确实无法恢复。实践证明,即使导出/导入配置文件或证书也是有效的:密钥确实会重新出现在系统中,但无法恢复对加密数据的访问。
如果你正处于这种情况,而且已经保存了密钥,但 EFS 加密数据已无法访问,那么可以使用专门的软件 ElcomSoft Advanced EFS Data Recovery,来帮助你恢复对数据的访问。
当下可以采取的措施:
下面是这种情况下可以尝试采取的行动:
- 使用具有管理员权限的工作用户账户(如果存在)启动,并继续安装特殊解密软件。
- 断开硬盘的物理连接,将其安装到运行解密软件的另一个工作站上。
- 使用安装在同一台机器上的不同操作系统启动(如果已安装),或专门为此目的进行安装。
最重要的是,你需要能够直接访问磁盘。对于第一种方法,需要拥有管理员权限。因此,当备份/工作用户账户权限不足时,可以尝试扩展账户权限。
数据解密计划与 ElcomSoft Advanced EFS Data Recovery:
获得磁盘的直接访问权限后,就可以进入下一步--直接解密和恢复数据。可以按照以下计划进行:
- 搜索并尝试解密问题计算机硬盘上的所有密钥。
- 搜索硬盘上的加密文件并尝试解密。
ElcomSoft Advanced EFS Data Recovery 数据恢复工具是专为解密受 EFS 保护的数据而设计的最有效工具之一。即使在部分用户密钥记录已损坏的情况下,它也能用于解密问题计算机上的数据。
ElcomSoft Advanced EFS Data Recovery (AEFSDR) 是一款专用软件程序,用于解密在 Microsoft Windows 2000 和 Windows XP、Windows 2003 Server 以及新的 Windows Vista 环境中使用 EFS 技术加密的文件 。即使在系统无法加载或某些加密密钥记录已损坏的情况下,该软件工具也能在最短时间内解密文件。 即使系统用户数据库是使用SYSKEY保护的,ElcomSoft Advanced EFS Data Recovery 仍然可以对文件进行解密。在 Windows 2000 中,即使不知道管理员和用户密码,也可以解密所有文件。
ElcomSoft Advanced EFS Data Recovery 的运行包括两个步骤:
1. 搜索所有 EFS 密钥(私人和主密钥)并尝试解密。第一步需要解密至少一个密钥,这是解密其余文件所必需的。在 Windows XP 及以上版本中,这可能需要在 AEFSDR(用于加密文件)中输入用户密码或恢复代理密码。首先,程序会自动尝试这样做,例如尝试从缓存或系统文件中提取密码,检查简单的组合(如 password=username),然后使用中型内置字典进行攻击。
2. 在第二阶段,程序会使用硬盘上的 EFS 加密文件进行搜索,并尝试解密。如果加密文件较少 且位置已知,用户可以在程序 "文件树 "中手动选择这些文件,以节省时间。
结果可能是密钥存储在网络服务器上,而使用这些密钥加密的文件存储在本地。在这种情况下,使用 AEFSDR 首先检索并解密服务器上存储的密钥,然后使用 "备份数据 "选项将结果保存到文 件中,并将其传输到本地计算机。这样,第一阶段的处理结果就可以传输到带有加密数据的机器 上,开始第二阶段的处理。
文件解密过程会耗费大量时间,Advanced EFS Data Recovery 数据恢复软件的主要优势之一就是能够管理系统负载。用户可以选择三种负载级别:高、正常和低。
根据 ElcomSoft 专家的评估 ,如果能找回用户密钥,Advanced EFS Data Recovery 可以成功恢复高达 99% 的 EFS 加密数据,成功率非常高。