在加密SSD上启用TRIM是否存在安全风险?

我最近使用“加密新的Ubuntu安装以确保安全”选项在SSD驱动器上安装了Ubuntu 13.10。 我想启用TRIM,所以按照这里提供的指南。

一步说是将discard选项添加到/etc/crypttab 。 但是,crypttab手册页有点含糊地指出:

警告:在启用此选项之前,请仔细评估特定的安全风险。 例如,如果丢弃的块稍后可以容易地定位在设备上,则允许加密设备上的丢弃可能导致密文设备的信息泄漏(文件系统类型,使用的空间等)。

在加密的SSD分区/驱动器上启用TRIM的安全风险究竟是什么?

警告只是想说,如果启用discard选项,SSD的固件会将驱动器上未使用的块清零。 并且可以容易地识别和分析这些归零块以用于模式。

显然,归零的块将向攻击者显示未使用的空间,因此他将知道所使用的空间是什么。 因此,如果他想破解加密,他将不得不处理较小的加密数据,因为他不会关心未使用的块。 从未使用的块的模式来看,攻击者可能能够猜测文件系统类型和文件系统参数,这可能有助于他破解加密。

我不是密码学家也不是密码学家,但这些信息可能只是对攻击者的最小帮助。 我认为警告就在那里,因为在密码学中,关于加密数据的每个最小泄露信息都可能导致加密中断。 因此,这个加密软件的作者想要告诉你,你没有启用这个function就能获得更好的安全性,但实际上并不知道多少好,因为我们无法知道这些泄露的信息有多少可以帮助攻击者破解加密。 显然,如果作者认为启用此function会导致加密风险大于最小,那么该function将不会出现在软件中。

如果您想了解更多有关此主题的信息,我建议您阅读Milan Broz 撰写的这篇文章以及该页面上的评论,其中也包含一些很好的链接。 从那篇好文章中我粘贴他的结论:

  • 如果强烈要求攻击者无法获得有关未使用扇区的信息,则必须始终禁用TRIM。
  • 如果磁盘上有隐藏的设备,则不得使用TRIM。 (在这种情况下,TRIM会删除隐藏数据或显示其位置。)
  • 如果TRIM被启用并稍后执行(甚至只通过设置选项并调用fstrim一次),则此操作是不可逆的。 即使TRIM再次被禁用,仍然可以检测到丢弃的扇区。
  • 在特定情况下(取决于数据模式),某些信息可能会从密文设备泄漏。 (例如,在上面的示例中,您可以识别文件系统类型。)
  • 加密磁盘不支持依赖于丢弃扇区的返回零的function(即使底层设备宣布此类function)。
  • 恢复SSD上的擦除数据(尤其是使用TRIM)需要全新的方法和工具。 使用标准恢复工具通常不会成功。

这里的关键是这句话

如果丢弃的块可以稍后在设备上轻松定位。

因此,请确保/ tmp / var和加密使用的其他目录确实在内存中,系统关闭时将清除这些目录。 这样可以最大限度地降

我在这里找到了一个很好的解释