与非营利组织合作时,重复使用以前存储了高度敏感信息(如医疗和财务记录)的硬盘是很常见的。这主要是由减少购买新硬盘的成本节约措施推动的。
如果以销毁敏感信息为首要要求,这是否限制了存储介质类型的选择?
例如,与包含自加密驱动器的 SSD 相比,基于非闪存的设备在使用 ATA 安全擦除和单次擦除的数据销毁方面提供更高水平的保证吗?
与非营利组织合作时,重复使用以前存储了高度敏感信息(如医疗和财务记录)的硬盘是很常见的。这主要是由减少购买新硬盘的成本节约措施推动的。
如果以销毁敏感信息为首要要求,这是否限制了存储介质类型的选择?
例如,与包含自加密驱动器的 SSD 相比,基于非闪存的设备在使用 ATA 安全擦除和单次擦除的数据销毁方面提供更高水平的保证吗?
数据销毁是不得已而为之的技术。如果您打算使用新的存储设备,则应使用全盘加密。这使您可以销毁加密的主密钥或简单地忘记密码,从而有效地使所有数据无法恢复,尽管实际上没有数据被擦除。加密是一种适用于固态硬盘和标准硬盘的解决方案。使用强大的算法,如 AES。
如果你绝对需要使用没有全盘加密的硬盘,你应该买一个支持SED的硬盘,这是透明的硬件加密。SED 透明地加密写入驱动器的所有数据,但将加密密钥保存在特殊区域中。当您启动安全擦除时,此密钥将被销毁。大多数现代 SSD 和 HDD 都支持此功能。如果您不知道驱动器是否支持它,您通常可以得出结论,如果估计的 ATA 安全擦除时间仅显示为2 分钟,则无论驱动器本身有多大,都可以断定它是受支持的。
固态媒体使用的数据存储方法本身并没有使数据销毁变得困难,但它们的固件使操作系统无法覆盖特定扇区,因为磨损均衡是一种在驱动器周围传播写入的功能减少单个闪存单元的磨损(每个闪存单元都有有限的使用寿命)。这确实意味着您无法可靠地覆盖SSD 上的数据。如果驱动器实现了 SED,您仍然可以使用 SED,也可以使用 ATA Secure Erase,但如果您需要手动覆盖一系列扇区,请使用 HDD。
请注意,如果您确实使用 SSD 并使用全盘加密并且启用了 TRIM,则驱动器将泄漏有限数量的元数据,如这篇出色的博客文章中所述。您通常可以在性能损失很小的情况下禁用 TRIM,但可以避免元数据泄漏。泄露的确切元数据是否存在问题取决于您的特定威胁模型。
Tl;dr:因为您永远不能相信所有存储驱动器都能安全地擦除自己,所以您必须计划好让您的驱动器都无法安全擦除。
依赖媒体类型并不是解决问题的正确方法,因为技术始终在发展和变化,您永远无法 100% 控制所有 IT 支出。请记住,磁盘从来都不是为保密而设计的——它们是为相反的目的而设计的:可靠的访问。(一些磁盘制造商喜欢通过将他们的产品作为“安全解决方案”销售来实现利润最大化,但这仍然不能使他们成为这项工作的最佳选择。)
例如,Shadow IT(又名老板的孩子)擅长购买 SSD 等消费设备,并在未经许可的情况下将其安装在部门桌面上。或者,非营利组织可能不得不接受一些公司赞助商(出于政治或营销原因)慷慨捐赠的一百个驱动器,但这不支持安全擦除。体面的企业笔记本电脑甚至不再提供旋转磁盘作为选项,而磨损均衡算法确保 SSD 总是有泄漏驱动器空闲空间中的一些数据的风险。
相反,寻找旨在解决这个确切安全问题的东西,并且是您可以在企业范围内控制的东西,例如安装可以像删除密钥一样快速擦除的加密文件系统。例如,在 Windows 商店中,通过组策略强制执行 BitLocker 将保护所有驱动器,而不仅仅是您订购的特殊驱动器。
首先,我的理解是,正确执行安全擦除命令的 SSD 将擦除未分配的块,尽管它可能无法擦除已停用/失败的块(这些块已经磨损并且不再正确运行)并且理论上这些可能包含可恢复的数据。
其次,硬盘驱动器还包括保留空间。最值得注意的是,当磁盘上的一个扇区发生故障(“坏扇区”)并且必须将数据重新定位到其他地方时,就会使用这种方法。原始数据留在不再使用的坏扇区中。一些磁盘还使用额外的保留空间作为工作空间来重新排列其他扇区,以便来自坏扇区的数据可以物理定位在更理想的位置,并且磁盘也不会擦除已使用的保留空间。但理论上,正确执行安全擦除命令的 HDD 将擦除坏扇区(如果可能)和保留空间。
但是,正如其他答案所指出的那样,这一切都依赖于安全擦除命令的正确实施以及擦除失败/失败的媒体部分的能力。最好的解决方案可能在于不依赖于支持特定操作的驱动器自身的固件。
使用全盘加密(甚至文件级加密,尽管要小心文件名泄露信息),您不需要删除实际数据,只需删除加密密钥。在这种情况下,数据在写入磁盘之前会被加密,并且磁盘(应该)只包含加密数据。由于需要加密密钥来解密加密数据,因此如果没有加密密钥,访问磁盘上的加密数据是没有用的。只要您的加密密钥被安全擦除,或者更好的是,存储在单独的磁盘/内存设备(例如智能卡或硬件密钥)上,数据实际上就无法读取。
请注意,许多 HDD 和 SSD 现在都提供“自加密”功能。这是磁盘自己的固件生成加密密钥并将其存储在磁盘控制器的内部存储器中的地方,并在将数据写入磁盘之前对其本身进行加密,并在读取后再次对其进行解密。计算机将磁盘视为未加密的磁盘,但实际存储在介质上的数据是加密的。这种磁盘通常通过从控制器的内存中删除加密密钥而不是覆盖磁盘来实现安全擦除命令。就我个人而言,我避免使用自加密磁盘,因为它们有很糟糕的固件错误历史,导致安全漏洞或数据丢失,但这个概念与操作系统级别的全磁盘加密相同。
固态磁盘绝对是首选。请注意,它们也不是没有麻烦,因为有时实现者很糟糕(Windows/Bitlocker 也很糟糕)。
传统的磁盘驱动器一直在“加密”(或者更确切地说是混合)数据,几乎永远都是为了更好地分配比特,但这对保护数据没有多大帮助。最近,存在自加密磁盘 (SED) 的硬盘驱动器,但作为硬盘,它们是有点“声望”的产品,价格高得离谱。到目前为止,我还没有拥有一个。
固态磁盘实际上总是 SED,但功能集,更重要的是,实现的质量差别很大。例如,正如您在链接文章中所读到的,Crucial 早期的模型使用的加密完全是胡扯。固件将用户密码与哈希值进行比较,以“解锁”驱动器的加密密钥,这与三星的驱动器使用 PBKDF2从密码中获取密钥相反。就实际安全性与误导性安全性而言,这介于两者之间。
幸运的是,在任何情况下,并且无论实施方式是否糟糕,使用时的安全性比擦除后的安全性受到的影响要大得多。嗯...幸运的是,我不知道这是否是一个好的措辞,实际上系统应该始终是安全的。但至少它不会超过.
ATA 标准中存在“主密码”的概念,因此任何诸如解锁验证派生加密密钥之类的事情——即使不考虑有人可能会找到读出存储的方法——都是灾难性的。这基本上意味着没有任何东西以有意义的方式加密。
SED 上的安全擦除意味着擦除磁盘加密密钥,使整个磁盘的内容不可读。因此,除非假设一个恶意构建的驱动器(它告诉您它进行了安全擦除,但仍秘密地持有密钥的副本),否则即使存在损坏的实现,即使存在有人破解,这也是安全的控制器芯片之类的。
传统硬盘上的安全擦除意味着磁盘将覆盖每个扇区。我最近使用要进行 RMAed 的预故障(SMART 显示错误)希捷梭子鱼做到了这一点。
猜猜看,安全擦除一切都很好,但故障前磁盘只会拒绝完成这项工作。它会开始,持续几分钟,并在擦除大约 10% 的磁盘后以“error blah blah”结束。就我而言,这不是问题,因为磁盘上的数据来自顶部带有软件加密的 RAID,因此任何内容基本上都是无用的(实际上不需要擦除)。但是,你明白了。如果您没有使用加密文件系统,现在就无法擦除数据!
通常,磨损均衡(在传统磁盘和 SSD 上)可能会使覆盖内容的可能性比您可能倾向于相信的要小得多。
此外,还可以恢复磁盘上被覆盖的数据。是的,这比 15 到 20 年前数据密度低得多的时候要困难得多(当时,这几乎是一项常规工作)。但它仍然......通常是可能的。
因此,如果数据真的是超级敏感的(如医疗记录中的),要么应该在顶部进行软件加密,这样就无需擦除磁盘(尽管这样做并没有什么坏处),或者应该不要捐赠驱动器,但要确保使用其中之一。