From: dsugar@tresys.com (Dave Sugar) Date: Mon, 16 Apr 2018 16:08:55 -0400 Subject: [refpolicy] [PATCH] Fix problems booting with fips=1 Message-ID: <20180416200855.10290-1-dsugar@tresys.com> To: refpolicy@oss.tresys.com List-Id: refpolicy.oss.tresys.com Seeing the following problem when booting in enforcing with FIPS mode enabled. Request for unknown module key 'CentOS Linux kernel signing key: c757a9fbbd0d82c9e54052029a0908d17cf1adc7' err -13 Then seeing the system halt Fixing the following denials: [ 4.492635] type=1400 audit(1523666552.903:4): avc: denied { search } for pid=894 comm="systemd-journal" name="crypto" dev="proc" ino=6124 scontext=system_u:system_r:syslogd_t:s0 tcontext=system_u:object_r:sysctl_crypto_t:s0 tclass=dir [ 4.496621] type=1400 audit(1523666552.907:5): avc: denied { read } for pid=894 comm="systemd-journal" name="fips_enabled" dev="proc" ino=6125 scontext=system_u:system_r:syslogd_t:s0 tcontext=system_u:object_r:sysctl_crypto_t:s0 tclass=file [ 4.499741] type=1400 audit(1523666552.910:6): avc: denied { open } for pid=894 comm="systemd-journal" path="/proc/sys/crypto/fips_enabled" dev="proc" ino=6125 scontext=system_u:system_r:syslogd_t:s0 tcontext=system_u:object_r:sysctl_crypto_t:s0 tclass=file [ 4.502969] type=1400 audit(1523666552.914:7): avc: denied { getattr } for pid=894 comm="systemd-journal" path="/proc/sys/crypto/fips_enabled" dev="proc" ino=6125 scontext=system_u:system_r:syslogd_t:s0 tcontext=system_u:object_r:sysctl_crypto_t:s0 tclass=file [ 4.950021] type=1400 audit(1523666553.360:8): avc: denied { search } for pid=952 comm="systemctl" name="crypto" dev="proc" ino=6124 scontext=system_u:system_r:udev_t:s0-s0:c0.c1023 tcontext=system_u:object_r:sysctl_crypto_t:s0 tclass=dir [ 4.986551] type=1400 audit(1523666553.397:9): avc: denied { read } for pid=952 comm="systemctl" name="fips_enabled" dev="proc" ino=6125 scontext=system_u:system_r:udev_t:s0-s0:c0.c1023 tcontext=system_u:object_r:sysctl_crypto_t:s0 tclass=file [ 5.028737] type=1400 audit(1523666553.439:10): avc: denied { open } for pid=952 comm="systemctl" path="/proc/sys/crypto/fips_enabled" dev="proc" ino=6125 scontext=system_u:system_r:udev_t:s0-s0:c0.c1023 tcontext=system_u:object_r:sysctl_crypto_t:s0 tclass=file type=1400 audit(1512501270.176:3): avc: denied { search } for pid=1 comm="systemd" scontext=system_u:system_r:init_t:s0 tcontext=system_u:system_r:kernel_t:s0 tclass=key Signed-off-by: Dave Sugar --- policy/modules/system/init.te | 1 + policy/modules/system/logging.te | 1 + policy/modules/system/udev.te | 2 ++ 3 files changed, 4 insertions(+) diff --git a/policy/modules/system/init.te b/policy/modules/system/init.te index 59f71cae..54288a7f 100644 --- a/policy/modules/system/init.te +++ b/policy/modules/system/init.te @@ -281,6 +281,7 @@ ifdef(`init_systemd',` kernel_read_all_sysctls(init_t) kernel_read_software_raid_state(init_t) kernel_unmount_debugfs(init_t) + kernel_search_key(init_t) kernel_setsched(init_t) kernel_rw_unix_sysctls(init_t) diff --git a/policy/modules/system/logging.te b/policy/modules/system/logging.te index 511be86c..9d6d2cfb 100644 --- a/policy/modules/system/logging.te +++ b/policy/modules/system/logging.te @@ -434,6 +434,7 @@ allow syslogd_t syslogd_var_run_t:file map; files_pid_filetrans(syslogd_t, syslogd_var_run_t, file) allow syslogd_t syslogd_var_run_t:dir create_dir_perms; +kernel_read_crypto_sysctls(syslogd_t) kernel_read_system_state(syslogd_t) kernel_read_network_state(syslogd_t) kernel_read_kernel_sysctls(syslogd_t) diff --git a/policy/modules/system/udev.te b/policy/modules/system/udev.te index cef5826c..fb0a020f 100644 --- a/policy/modules/system/udev.te +++ b/policy/modules/system/udev.te @@ -96,9 +96,11 @@ kernel_rw_unix_dgram_sockets(udev_t) kernel_dgram_send(udev_t) kernel_signal(udev_t) kernel_search_debugfs(udev_t) +kernel_search_key(udev_t) #https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=235182 kernel_rw_net_sysctls(udev_t) +kernel_read_crypto_sysctls(udev_t) kernel_read_network_state(udev_t) kernel_read_software_raid_state(udev_t) kernel_dontaudit_search_unlabeled(udev_t) -- 2.14.3