commit: 862c31bbaa0af5a4ccba3529cc6876da978d113e Author: Christian Göttsche <cgzones <AT> googlemail <DOT> com> AuthorDate: Thu Nov 28 10:19:06 2024 +0000 Commit: Jason Zaman <perfinion <AT> gentoo <DOT> org> CommitDate: Sun Dec 15 00:19:42 2024 +0000 URL: https://gitweb.gentoo.org/proj/hardened-refpolicy.git/commit/?id=862c31bb
systemd: getattr namespace files systemd v257 started to access various namespace files, e.g.: type=PROCTITLE msg=audit(28/11/24 11:14:28.210:154) : proctitle=/usr/lib/systemd/system-generators/systemd-fstab-generator /run/systemd/generator /run/systemd/generator.early /run/systemd/gene type=PATH msg=audit(28/11/24 11:14:28.210:154) : item=0 name=/proc/self/ns/cgroup inode=4026531835 dev=00:04 mode=file,444 ouid=root ogid=root rdev=00:00 obj=system_u:object_r:nsfs_t:s0 nametype=NORMAL cap_fp=none cap_fi=none cap_fe=0 cap_fver=0 cap_frootid=0 type=CWD msg=audit(28/11/24 11:14:28.210:154) : cwd=/ type=SYSCALL msg=audit(28/11/24 11:14:28.210:154) : arch=x86_64 syscall=newfstatat success=no exit=EACCES(Permission denied) a0=AT_FDCWD a1=0x7ffff9715f90 a2=0x7ffff9715fb0 a3=0x0 items=1 ppid=8046 pid=8049 auid=unset uid=root gid=root euid=root suid=root fsuid=root egid=root sgid=root fsgid=root tty=(none) ses=unset comm=systemd-fstab-g exe=/usr/lib/systemd/system-generators/systemd-fstab-generator subj=system_u:system_r:systemd_generator_t:s0 key=(null) type=AVC msg=audit(28/11/24 11:14:28.210:154) : avc: denied { getattr } for pid=8049 comm=systemd-fstab-g path=cgroup:[4026531835] dev="nsfs" ino=4026531835 scontext=system_u:system_r:systemd_generator_t:s0 tcontext=system_u:object_r:nsfs_t:s0 tclass=file permissive=0 Signed-off-by: Christian Göttsche <cgzones <AT> googlemail.com> Signed-off-by: Jason Zaman <perfinion <AT> gentoo.org> policy/modules/services/ntp.te | 1 + policy/modules/system/logging.te | 1 + policy/modules/system/systemd.te | 9 +++++++++ policy/modules/system/udev.te | 1 + 4 files changed, 12 insertions(+) diff --git a/policy/modules/services/ntp.te b/policy/modules/services/ntp.te index 27f86ae18..72ef1067e 100644 --- a/policy/modules/services/ntp.te +++ b/policy/modules/services/ntp.te @@ -127,6 +127,7 @@ files_watch_runtime_dirs(ntpd_t) fs_getattr_all_fs(ntpd_t) fs_search_auto_mountpoints(ntpd_t) +fs_getattr_nsfs_files(ntpd_t) term_use_ptmx(ntpd_t) diff --git a/policy/modules/system/logging.te b/policy/modules/system/logging.te index ed01f0e4a..589c756e4 100644 --- a/policy/modules/system/logging.te +++ b/policy/modules/system/logging.te @@ -532,6 +532,7 @@ ifdef(`init_systemd',` fs_list_cgroup_dirs(syslogd_t) fs_watch_memory_pressure(syslogd_t) + fs_getattr_nsfs_files(syslogd_t) init_create_runtime_dirs(syslogd_t) init_daemon_runtime_file(syslogd_runtime_t, dir, "syslogd") diff --git a/policy/modules/system/systemd.te b/policy/modules/system/systemd.te index 80ad48873..05c9e55e4 100644 --- a/policy/modules/system/systemd.te +++ b/policy/modules/system/systemd.te @@ -460,6 +460,7 @@ fs_check_write_binfmt_misc_dirs(systemd_binfmt_t) fs_getattr_cgroup(systemd_binfmt_t) fs_search_cgroup_dirs(systemd_binfmt_t) +fs_getattr_nsfs_files(systemd_binfmt_t) ###################################### # @@ -575,6 +576,7 @@ files_dontaudit_read_etc_runtime_files(systemd_generator_t) fs_list_efivars(systemd_generator_t) fs_getattr_all_fs(systemd_generator_t) +fs_getattr_nsfs_files(systemd_generator_t) init_create_runtime_files(systemd_generator_t) init_manage_runtime_dirs(systemd_generator_t) @@ -878,6 +880,7 @@ manage_files_pattern(systemd_journal_init_t, systemd_journal_t, systemd_journal_ fs_getattr_all_fs(systemd_journal_init_t) fs_search_cgroup_dirs(systemd_journal_init_t) +fs_getattr_nsfs_files(systemd_journal_init_t) kernel_getattr_proc(systemd_journal_init_t) kernel_read_kernel_sysctls(systemd_journal_init_t) @@ -1023,6 +1026,7 @@ fs_relabelfrom_tmpfs_dirs(systemd_logind_t) fs_unmount_tmpfs(systemd_logind_t) fs_getattr_xattr_fs(systemd_logind_t) fs_watch_memory_pressure(systemd_logind_t) +fs_getattr_nsfs_files(systemd_logind_t) logging_send_audit_msgs(systemd_logind_t) @@ -1265,6 +1269,7 @@ init_read_state(systemd_machine_id_setup_t) fs_getattr_cgroup(systemd_modules_load_t) fs_getattr_xattr_fs(systemd_modules_load_t) +fs_getattr_nsfs_files(systemd_modules_load_t) kernel_load_module(systemd_modules_load_t) kernel_read_kernel_sysctls(systemd_modules_load_t) @@ -1826,6 +1831,7 @@ fs_getattr_all_fs(systemd_sessions_t) fs_search_cgroup_dirs(systemd_sessions_t) fs_search_tmpfs(systemd_sessions_t) fs_search_ramfs(systemd_sessions_t) +fs_getattr_nsfs_files(systemd_sessions_t) kernel_read_kernel_sysctls(systemd_sessions_t) kernel_dontaudit_getattr_proc(systemd_sessions_t) @@ -1860,6 +1866,7 @@ fs_getattr_all_fs(systemd_sysctl_t) fs_search_cgroup_dirs(systemd_sysctl_t) fs_search_ramfs(systemd_sysctl_t) fs_search_tmpfs(systemd_sysctl_t) +fs_getattr_nsfs_files(systemd_sysctl_t) systemd_log_parse_environment(systemd_sysctl_t) @@ -1974,6 +1981,7 @@ fs_list_tmpfs(systemd_tmpfiles_t) fs_relabelfrom_tmpfs_dirs(systemd_tmpfiles_t) fs_getattr_all_fs(systemd_tmpfiles_t) fs_search_cgroup_dirs(systemd_tmpfiles_t) +fs_getattr_nsfs_files(systemd_tmpfiles_t) selinux_get_fs_mount(systemd_tmpfiles_t) selinux_use_status_page(systemd_tmpfiles_t) @@ -2224,6 +2232,7 @@ fs_read_cgroup_files(systemd_user_runtime_dir_t) fs_getattr_cgroup(systemd_user_runtime_dir_t) fs_search_cgroup_dirs(systemd_user_runtime_dir_t) fs_getattr_xattr_fs(systemd_user_runtime_dir_t) +fs_getattr_nsfs_files(systemd_user_runtime_dir_t) kernel_read_kernel_sysctls(systemd_user_runtime_dir_t) kernel_dontaudit_getattr_proc(systemd_user_runtime_dir_t) diff --git a/policy/modules/system/udev.te b/policy/modules/system/udev.te index ccf2c310e..bf6b8b53e 100644 --- a/policy/modules/system/udev.te +++ b/policy/modules/system/udev.te @@ -273,6 +273,7 @@ ifdef(`init_systemd',` fs_create_cgroup_dirs(udev_t) fs_create_cgroup_files(udev_t) fs_rw_cgroup_files(udev_t) + fs_getattr_nsfs_files(udev_t) init_dgram_send(udev_t) init_get_generic_units_status(udev_t)