Linux Kernel Defence Map:安全加固概念

Linux内核安全是一个非常复杂的话题。 其中有很多概念彼此之间有着有趣的关联:

一些防御技术由 Linux 内核主线提供。 另一些则因为各种原因而脱离树状结构(其中一些是商业的,例如)。 此外,还有一些内核防御措施依赖于特殊的硬件功能。

如果能够以图形化的方式来呈现 Linux 内核安全,那就非常方便了。 因此,我创建了一个 Linux Kernel Defence Map,展示了所有这些概念之间的关系。

节点连接并不意味着“完全缓解”。 而是,每个连接都代表某种关系。 因此,Linux Kernel Defence Map 应该有助于浏览文档和 Linux 内核源代码。 它还为漏洞类别提供了通用缺陷枚举 (CWE) 编号。

此图描述了内核安全加固。 它不包括减少攻击面、用户空间安全功能以及各种 Linux Security Modules (LSM) 强制执行的策略。

仓库地址

此图是如何制作的

此图是用 DOT 语言编写的,这使得在 Git 中维护和更新非常方便。 许可证:GPL-3.0。 该图是使用 GraphViz 生成的,命令如下:

dot -Tsvg linux-kernel-defence-map.dot -o linux-kernel-defence-map.svg

想要检查你的内核配置吗?

Linux 内核中有很多安全加固选项。 许多选项没有被主要的发行版启用。 我们必须自己配置这些选项,以使我们的系统更加安全。

但是没有人喜欢手动验证配置。 因此,我创建了 kernel-hardening-checker,它可以检查 Linux 内核的安全加固选项。 欢迎大家试用。

参考资料

Linux kernel v6.10 版本地图

Linux Kernel Defence Map

Linux Kernel Defence Map 展示了漏洞类别、利用技术、漏洞检测机制和防御技术之间的关系。