为什么CONFIG_GCC_PLUGIN_RANDSTRUCT的种子文件的读取权限不限于特权用户



CONFIG_GCC_PLUGIN_RANDSTRUCT启用了一项安全功能,该功能可以随机化数据结构布局以提高攻击门槛。此功能是作为GCC插件实现的,随机化种子文件将向需要构建第三方或树外内核模块的用户公开。由于普通用户可以构建内核模块,因此攻击者作为普通用户可以读取种子文件,从而挫败这种随机化。

为什么我们不将对种子文件的读取权限限制为特权用户?当然,这意味着我们需要使用sudo/root访问来编译内核模块。但我看不出有任何理由拒绝它,毕竟安装内核模块需要sudo/root访问权限。

我自己构建内核,因为我找不到一个能够启用此功能的发行版。

如果您自己构建内核,那么您将负责这些文件。只需根据需要限制对种子文件的访问。如果不这样做,每个能够读取(复制)文件的人也可以在自己的计算机上构建内核模块。在预构建的内核中启用此功能是没有意义的,因为所有用户都将共享相同的公开种子。

最新更新