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

From: Eric Snowberg
Date: Tue Sep 07 2021 - 12:05:03 EST


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;
+ if (id != INTEGRITY_KEYRING_MACHINE)
+ perm |= KEY_USR_WRITE;

out:
return __integrity_init_keyring(id, perm, restriction);
--
2.18.4