为了为 Linux 内核添加一些安全措施,我尝试在 inode 结构中添加额外的标志。
如果它为某个文件设置,系统调用将检查此标志。
那么如何访问知道其目录和/或其 inode 编号的文件的 inode 结构(可能通过指针)?
SELinux 提供挂钩来添加基于 inode 访问的检查。查看标题为:Inode Hook Functions的链接。
摘抄
SELinux 的 inode 钩子函数实现管理 inode 结构的安全字段,并对 inode 操作执行访问控制。由于 inode 用于表示管道、文件和套接字,因此挂钩函数必须处理这些抽象中的每一个。此外,这些挂钩必须处理多种文件系统类型,包括传统的基于磁盘的文件系统(如 ext3)和伪文件系统(如 proc 和 tmpfs)。本节首先描述用于管理安全字段的 inode 挂钩函数。然后讨论用于执行访问控制的 inode 挂钩函数。
这是一个很好的 SELinux 入门教程。