truecrypt 是否在内存中存储明文密码?

truecrypt 是否在内存中存储明文密码?

我知道明文密码用于解密存储实际数据的所有解密细节的标头。

因此,一旦将解密的标头复制到内存中,就没有理由将实际密码存储在内存中。

我的问题是:

  • 假设攻击者在安装 TrueCrypt 卷时可以访问您的电脑。
  • 假设攻击者有能力转储驱动程序内存。
  • 没有使用密钥文件。

攻击者能否恢复您输入的密码?或者他只能恢复解密的标头?

这个问题的更高层次是:攻击者是否能够破坏使用与已安装卷相同密码的其他未安装加密卷?

  • 假设不存在任何其他不相关的弱点。

编辑:我不是在谈论存储在标头内的密码密钥。我在谈论的是经过加盐和散列以解密标头本身的密码。

答案1

不,但它确实存储了密码密钥,这同样糟糕,甚至更糟,是的,有几种“密码恢复”工具可以抓取 RAM、页面文件和 hiberfil.sys 来查找密钥。

此外,据我了解,您的密钥是根据您输入的密码进行随机化的,因此相同的密码将产生不同的密钥。请在此处查看更多信息:http://www.truecrypt.org/docs/header-key-derivation

答案2

只要卷被安装了,那么密钥就位于 RAM 中。

来自 TrueCrypt 的网站:RAM 中的未加密数据

本质上,未加密的主密钥也必须存储在 RAM 中。当卸载非系统 TrueCrypt 卷时,TrueCrypt 会擦除其主密钥(存储在 RAM 中)。当计算机完全重新启动(或完全关闭)时,所有非系统 TrueCrypt 卷都会自动卸载,因此,存储在 RAM 中的所有主密钥都会被 TrueCrypt 驱动程序擦除(系统分区/驱动器的主密钥除外 - 见下文)。

答案3

有一个著名的实验,一所大学让某人登录然后关闭并冻结计算机内存。然后他们移除 RAM 并从另一个系统读取它,因此理论上攻击是可能的。密码仍在 RAM 中。不记得这是否是专门为 Truecrypt 设计的,但我相信是的。不确定 Truecrypt 的较新版本是否尝试清除内存中的密码。更令人不安的是可以通过 DMA 特权端口执行此操作。如果我没记错的话,PCMCIA 等端口和一个特定的 Mac 端口具有直接 DMA 访问权限,因此您只需插入一张卡,它就可以吸收 RAM 的内容而无需任何交互。

相关内容