On 10/02/2018 07:54 PM, Kees Cook wrote:
On Tue, Oct 2, 2018 at 4:46 PM, John Johansen
<john.johansen@xxxxxxxxxxxxx> wrote:
On 10/02/2018 04:06 PM, Kees Cook wrote:
I think the current proposal (in the other thread) is likely the
sanest approach:
- Drop CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE
- Drop CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE
- All enabled LSMs are listed at build-time in CONFIG_LSM_ENABLE
Hrrmmm isn't this a Kconfig selectable list, with each built-in LSM
available to be enabled by default at boot.
That's not how I have it currently. It's a comma-separated a string,
including the reserved name "all". The default would just be
"CONFIG_LSM_ENABLE=all". Casey and I wanted this to have a way to
capture new LSMs by default at build-time.
- Boot time enabling for selinux= and apparmor= remain
- lsm.enable= is explicit: overrides above and omissions are disabled
wfm
Okay, this is closer to v3 than v4. Paul or Stephen, how do you feel
about losing the SELinux bootparam CONFIG? (i.e. CONFIG_LSM_ENABLE
would be replacing its functionality.)
I'd like to know how distro kernel maintainers feel about it. They would
need to understand that if they were previously setting
CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE to 0 and want to preserve that
behavior, then they must set CONFIG_LSM_ENABLE explicitly to a list of
security modules (that does not include selinux, of course). In
practice, this means that even the distros that choose to build all
security modules into their kernels must explicitly set
CONFIG_LSM_ENABLE to a specific list of security modules. So no one
would use "all" in practice.