Re: [RFC PATCH v3 00/13] Clavis LSM

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> On Feb 28, 2025, at 9:14 AM, Paul Moore <paul@xxxxxxxxxxxxxx> wrote:
> 
> On Fri, Feb 28, 2025 at 9:09 AM Mimi Zohar <zohar@xxxxxxxxxxxxx> wrote:
>> On Thu, 2025-02-27 at 17:22 -0500, Paul Moore wrote:
>>> 
>>> I'd still also like to see some discussion about moving towards the
>>> addition of keyrings oriented towards usage instead of limiting
>>> ourselves to keyrings that are oriented on the source of the keys.
>>> Perhaps I'm missing some important detail which makes this
>>> impractical, but it seems like an obvious improvement to me and would
>>> go a long way towards solving some of the problems that we typically
>>> see with kernel keys.

The intent is not to limit ourselves to the source of the key.  The main 
point of Clavis is to allow the end-user to determine what kernel keys 
they want to trust and for what purpose, irrespective of the originating 
source (.builtin_trusted, .secondary, .machine, or .platform). If we could 
go back in time, individual keyrings could be created that are oriented 
toward usage.   The idea for introducing Clavis is to bridge what we 
have today with kernel keys and allow them to be usage based.

>> 
>> The proliferation of keyrings won't solve the key usage problem for IMA-
>> appraisal.  IMA-appraisal can be used to verify the kexec image, kernel modules,
>> firwmare, etc, but it also verifies file signatures contained in userspace
>> packages.
> 
> To be clear I don't think the usage oriented keyring idea will solve
> every keyring problem, but it seems like it solves a fair number of
> things that I've heard lately.
> 
>> To support the latter case, keyrings would need to be application
>> specific.  (This version of Clavis doesn't solve the latter key usage for IMA-
>> appraisal either.)
> 
> Application specific keyrings are more-or-less what I've been trying
> to describe.
> 
>> The keys baked into the kernel are trusted because the kernel itself was signed
>> and verified (secure boot).  Anyone building a kernel can build a key into the
>> kernel image, which establishes a "root of trust".  That key can then be used to
>> verify and load other keys onto the IMA keyring.
> 
> Sure, I'm not saying that trust isn't important, and that there are
> varying levels of trust.  My argument is that having additional,
> usage/application oriented keyrings which contain links back to keys
> imported and stored in the traditional trust oriented keyrings could
> neatly solve a number of keyring access control issues.

I'm not sure I completely follow this. If a user space application wants to 
use system kernel keys in this manner, can't this be  done today? (I'm 
not talking about IMA here).  The keyctl has both the "link" and 
"restrict_keyring". 

Or do you mean take things further with Clavis?  Meaning when usage is
setup for a key, it is then populated in a new usage based keyring?





[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux