我正在考虑加密我的ssd(主要是出于好奇),并想知道一个未加密的/boot分区可能带来的安全威胁(如果有的话)。我知道我可以对根和主分区进行加密,没有任何问题。此外,我还读到了一些关于在每个会话中使用随机生成的密钥加密交换分区的内容(使休眠变得不可能)。但是/boot分区呢?我的意思是,如果攻击者获得了对磁盘的物理访问,并访问了这个分区,这会对安全构成威胁吗?据我所知,您不能简单地加密/boot分区,因为这样您就根本无法启动了,对吧?
提前感谢!
发布于 2017-07-24 16:23:03
这里的关键是隐私和完整性。
如果您的数据卷(/home、/var/log和任何其他敏感数据)是加密的,那么您主要是确保隐私,而对于/boot,您希望确保没有放置恶意代码(完整性)。注意,这并不意味着需要加密。/boot几乎从不需要实际的加密,因为它不存储私有/特权数据。我假设您已经锁定了从外部设备(USB)启动。
在UEFI/BIOS代码之后,您控制的系统上执行的第一段代码是引导加载器(例如grub),它读取配置文件(可能具有安全参数,比如禁止引导选项编辑),然后kernel+initrd也存储在/boot上。只有坚定的对手才能:
不过,这是可行的。如果您处于这种偏执状态,而不是简单地将数据卷隐藏在随机搜索和抓取中,那么您需要查看完全可信的引导设置。这是很多工作。
一个简单的缓解措施是,一旦您的系统启动,通过将其与存储在加密卷中的哈希基线进行比较,检查/boot上所有文件的散列是否如您预期的那样。如果/boot被破坏了,这是事后的度量,但至少您会知道,每次更新/boot上的文件(例如新内核版本/新grub安全选项)时,都需要更新基线。
任何更多的保证都需要更多的工作。Linux/*nix上的可信引导是众所周知的棘手问题。
https://security.stackexchange.com/questions/165905
复制相似问题