From: pebenito@ieee.org (Chris PeBenito) Date: Tue, 17 Apr 2018 20:15:18 -0400 Subject: [refpolicy] [PATCH] Fix problems booting with fips=1 In-Reply-To: <20180416200855.10290-1-dsugar@tresys.com> References: <20180416200855.10290-1-dsugar@tresys.com> Message-ID: To: refpolicy@oss.tresys.com List-Id: refpolicy.oss.tresys.com On 04/16/2018 04:08 PM, Dave Sugar via refpolicy wrote: > 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) Merged. -- Chris PeBenito