Re: [PATCH] remove CONFIG_SECURITY_FILE_CAPABILITIES compile option

From: Serge E. Hallyn
Date: Mon Nov 23 2009 - 18:13:08 EST


Quoting Randy Dunlap (randy.dunlap@xxxxxxxxxx):
> Serge E. Hallyn wrote:
> > As far as I know, all distros currently ship kernels with default
> > CONFIG_SECURITY_FILE_CAPABILITIES=y. Since having the option on
> > leaves a 'no_file_caps' option to boot without file capabilities,
> > the main reason to keep the option is that turning it off saves
> > you (on my s390x partition) 5k. In particular, vmlinux sizes
> > came to:
> >
> > without patch fscaps=n: 53598392
> > without patch fscaps=y: 53603406
> > with this patch applied: 53603342
> >
> > with the security-next tree.
> >
> > Against this we must weigh the fact that there is no simple way for
> > userspace to figure out whether file capabilities are supported,
> > while things like per-process securebits, capability bounding
> > sets, and adding bits to pI if CAP_SETPCAP is in pE are not supported
> > with SECURITY_FILE_CAPABILITIES=n, leaving a bit of a problem for
> > applications wanting to know whether they can use them and/or why
> > something failed.
> >
> > It also adds another subtly different set of semantics which we must
> > maintain at the risk of severe security regressions.
>
> Hi,
>
> This is or is not the same security option that is referred to in
> (new:) http://bugzilla.kernel.org/show_bug.cgi?id=14675 ?

I don't know. I would assume he meant 'CONFIG_SECURITY', but that
wouldn't make sense since it should make no difference if no specific
LSM is turned on.

I will subscribe to the bug so I can see his response. If it is in
fact CONFIG_SECURITY_FILE_CAPABILITIES, then a binary which is setuid-root
may be installed with some file capabilities, but without enough caps
to do what it needs.

thanks,
-serge
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/