不可能完成的任务:加固基于x86的基础架构
HardenedLinux 写道 " 经过数年的发展,数据中心,移动端(Android)以及嵌入式系统(IoT?)已经高度依赖于自由开源软件,过去 12 年的基础架构层面的攻防对抗来中,Attacking the Core 的那个 Core 早已从内核转移到了 Hypervisor 之后又转移到了 EFI/SMM 最后 Intel ME 成为了新的 Core。但在某种程度上讲,内核依然是一把基路伯之剑,它的一举一动 (比如早该实现的最佳实践) 依然会影响到更底层恶魔的行为,而这也是 HardenedLinux 社区把 PaX/Grsecurity 放在了极度重要的位置的原因,我们在过去的 4 年中无数次收益于 PaX/Grsecurity 的各种 features,至此我们专门为 x86 服务器打造了基础架构可信链条的加固方案,这个方案尝试对 RING -3 到 RING 0 的各个层级的防护,内核 (RING 0) 使用 PaX/Grsecurity,为了考虑数据中心分发过程中的风险,我们也开发了 Reproducible builds for PaX/Grsecurity 并且开源,虚拟化 (RING -1) 按照社区最佳实践,固件层面则给出了多个选择,最有价值的数据资产(比如密钥管理服务器)可以考虑使用老处理器比如 SandyBridge/IvyBridge,这样可以使用自由固件实现,最新的机器只能使用 OEM 的固件实现。建立从 UEFI secure boot 到 grub2 到内核以及内核模块的签名信任链条,对于 Intel ME 这个来自 RING -3 的恶魔,我们建议对于未启动 Boot Guard(服务器和工作站大部分未启动)的机器可以把 Intel ME 限制在最小的范围内,由于干掉了 ME 会潜在对 SGX 造成影响所以云环境下的 remote attestion 可以使用 TPM 完成。即使这样的方案也只是 x86 下的无奈之举,因为有太多的 binary blobs 即使 Coreboot 也必须使用很多闭源的固件,HardenedLinux 社区坚信长线来看开放比封闭更好,自由开放的系统是安全的基石,但即使在 2017 年的今天,100% 的自由软件 / 固件 / 硬件实现还有很远的距离,仍然需要黑客们的努力。"