Re: [PATCH v5 02/12] integrity: Do not allow machine keyring updates following init

From: Jarkko Sakkinen
Date: Thu Sep 09 2021 - 09:46:56 EST


On Tue, 2021-09-07 at 12:01 -0400, Eric Snowberg wrote:
> The machine keyring is setup during init. No additional keys should be
> allowed to be added afterwards. Leave the permission as read only.
>
> Signed-off-by: Eric Snowberg <eric.snowberg@xxxxxxxxxx>
> ---
> v2: Initial version
> v4: Unmodified from v2
> v5: Rename to machine keyring
> ---
> security/integrity/digsig.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/security/integrity/digsig.c b/security/integrity/digsig.c
> index 8c315be8ad99..5a75ac2c4dbe 100644
> --- a/security/integrity/digsig.c
> +++ b/security/integrity/digsig.c
> @@ -140,7 +140,8 @@ int __init integrity_init_keyring(const unsigned int id)
> return -ENOMEM;
>
> restriction->check = restrict_link_to_ima;
> - perm |= KEY_USR_WRITE;

I would add here inline comment to say mostly the same as the commit
message does.

> + if (id != INTEGRITY_KEYRING_MACHINE)
> + perm |= KEY_USR_WRITE;
>
> out:
> return __integrity_init_keyring(id, perm, restriction);

I checked patch 01 but I lost the email somewhere. The keyring definition
looks now sane.

/Jarkko