[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20221118040343.2958-1-linux@weissschuh.net>
Date: Fri, 18 Nov 2022 05:03:40 +0100
From: Thomas Weißschuh <linux@...ssschuh.net>
To: Mickaël Salaün <mic@...ikod.net>,
David Howells <dhowells@...hat.com>,
David Woodhouse <dwmw2@...radead.org>,
Jarkko Sakkinen <jarkko@...nel.org>,
Eric Snowberg <eric.snowberg@...cle.com>
Cc: Thomas Weißschuh <linux@...ssschuh.net>,
keyrings@...r.kernel.org, linux-kernel@...r.kernel.org,
Mark Pearson <markpearson@...ovo.com>,
linux-integrity@...r.kernel.org,
linux-security-module@...r.kernel.org
Subject: [PATCH v3 0/3] certs: Prevent spurious errors on repeated blacklisting
When the blacklist keyring was changed to allow updates from the root
user it gained an ->update() function that disallows all updates.
When the a hash is blacklisted multiple times from the builtin or
firmware-provided blacklist this spams prominent logs during boot:
[ 0.890814] blacklist: Problem blacklisting hash (-13)
This affects the firmware of various vendors. Reported have been at least:
* Samsung: https://askubuntu.com/questions/1436856/
* Acer: https://ubuntuforums.org/showthread.php?t=2478840
* MSI: https://forum.archlabslinux.com/t/blacklist-problem-blacklisting-hash-13-errors-on-boot/6674/7
* Micro-Star: https://bbs.archlinux.org/viewtopic.php?id=278860
* Lenovo: https://lore.kernel.org/lkml/c8c65713-5cda-43ad-8018-20f2e32e4432@t-8ch.de/
Changelog:
v1: https://lore.kernel.org/all/20221104014704.3469-1-linux@weissschuh.net/
v1 -> v2:
* Improve logging message to include the failed hash
* Add key_create() function without update semantics
* Use key_create() from mark_raw_hash_blacklisted() and log specific message
on -EEXIST
v2: https://lore.kernel.org/lkml/20221109025019.1855-1-linux@weissschuh.net/
v2 -> v3:
* Clarify commit titles and messages
* Drop the change to BLACKLIST_KEY_PERM from patch 3, as it was an artifact
of some obsolete version of the patch and not needed
Only the first patch has been marked for stable as otherwise the whole of
key_create() would need to be applied to stable.
Thomas Weißschuh (3):
certs: log hash value on blacklist error
KEYS: Add key_create()
certs: don't try to update blacklist keys
certs/blacklist.c | 21 ++++---
include/linux/key.h | 8 +++
security/keys/key.c | 149 +++++++++++++++++++++++++++++++++-----------
3 files changed, 132 insertions(+), 46 deletions(-)
base-commit: 84368d882b9688bfac77ce48d33b1e20a4e4a787
--
2.38.1
Powered by blists - more mailing lists