chattr +s 的安全值是多少?

信息安全 linux 删除
2021-08-30 07:45:52

大多数现代 Linux 文件系统都支持扩展属性。+s 是安全删除,它确保(至少打算)在删除文件时用零覆盖文件中的数据。某些文件系统(例如 NFS)尚不支持此功能,但如果您尝试将属性应用于其文件或目录,它们会产生错误。

我刚刚注意到某些底层机制,例如 RAID 控制器、SAN 设备或带有 SSD 缓存的机械驱动器,可能会通过缓存写入并可能写入不同的扇区而产生错误的安全感,而逻辑文件系统没有任何可见性进入搬迁。

  1. 这种担忧是真的吗?是否存在造成此漏洞的现实世界设备?
  2. 假设存在这样的设备,它们是一直以这种方式运行,还是偶尔发生的统计事件,或者只是在特殊情况下才看到的侥幸?
1个回答

那是对的。

无法保证该属性的设置将导致所有内核-驱动程序-固件-硬件组合的所有放弃扇区中的所有字节完全归零。也不保证在设置属性时会向终端报告不保证的情况。

+s 属性是一个相当不错的主意,它最终可能会或可能不会看到普遍或接近普遍的覆盖范围。

请注意,在正确配置的系统上,只有 root 有权访问原始设备以获取可能包含已删除文件片段的完整或部分完整扇区。对于您的特定系统而言,对磁盘的物理访问或违反 root 访问权限在多大程度上影响了有关这些扇区安全性的决策。

对于个人或组织可能为高级和持续攻击付费的高度关键数据,在经过验证的有效安全协议的上下文中使用加密比依靠链和软件层来合作将所有放弃的部门归零更可取。

回答您的第二个问题需要来自足够样本量的统计结果。我怀疑是否会出现一个权威的答案,仅仅是因为它需要大量的时间和金钱来产生要分析的原始数据。