|
From: Dmitry K. <dmi...@gm...> - 2015-09-10 19:18:42
|
FYI
---------- Forwarded message ----------
From: Dmitry Kasatkin <dmi...@gm...>
Date: Thu, Sep 10, 2015 at 10:06 PM
Subject: [PATCH 1/1] integrity: prevent loading untrusted certificates
to IMA trusted keyring
To: zo...@li..., lin...@vg...,
lin...@vg...
Cc: Dmitry Kasatkin <dmi...@hu...>, st...@vg...
If IMA_LOAD_X509 is enabled either directly or indirectly via
IMA_APPRAISE_SIGNED_INIT, it enables certificate loading to the IMA trusted
keyring from the kernel. Due to the overlook, KEY_ALLOC_TRUSTED was used in the
key_create_or_update() to create keys within the kernel, which caused
overriding certificate verification result and allowed to load self-signed or
wrongly signed certificates.
This patch just removes this option.
Signed-off-by: Dmitry Kasatkin <dmi...@hu...>
Cc: <st...@vg...> # 3.19+
---
security/integrity/digsig.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/security/integrity/digsig.c b/security/integrity/digsig.c
index 36fb6b5..5be9ffb 100644
--- a/security/integrity/digsig.c
+++ b/security/integrity/digsig.c
@@ -105,7 +105,7 @@ int __init integrity_load_x509(const unsigned int
id, const char *path)
rc,
((KEY_POS_ALL & ~KEY_POS_SETATTR) |
KEY_USR_VIEW | KEY_USR_READ),
- KEY_ALLOC_NOT_IN_QUOTA | KEY_ALLOC_TRUSTED);
+ KEY_ALLOC_NOT_IN_QUOTA);
if (IS_ERR(key)) {
rc = PTR_ERR(key);
pr_err("Problem loading X.509 certificate (%d): %s\n",
--
2.1.4
--
Thanks,
Dmitry
|