From: Jarkko Sakkinen <jarkko@kernel.org>
To: Eric Biggers <ebiggers@kernel.org>
Cc: David Howells <dhowells@redhat.com>,
keyrings@vger.kernel.org, stable@vger.kernel.org,
Paul Moore <paul@paul-moore.com>,
James Morris <jmorris@namei.org>,
"Serge E. Hallyn" <serge@hallyn.com>,
open list <linux-kernel@vger.kernel.org>,
"open list:SECURITY SUBSYSTEM"
<linux-security-module@vger.kernel.org>
Subject: Re: [PATCH v3 2/3] KEYS: Reject @desclen values >= KEY_MAX_DESC_SIZE in key_alloc()
Date: Tue, 20 Oct 2026 13:57:15 +0300 [thread overview]
Message-ID: <atdJC3-PsaNh9PCA@kernel.org> (raw)
In-Reply-To: <20261020022832.GA3727@sol>
On Mon, Oct 19, 2026 at 07:28:32PM -0700, Eric Biggers wrote:
> On Tue, Oct 20, 2026 at 04:47:43AM +0300, Jarkko Sakkinen wrote:
> > On Tue, Oct 20, 2026 at 04:38:56AM +0300, Jarkko Sakkinen wrote:
> > > @desclen in key_alloc() is saved to the 16-bit wide desc_len field in
> > > struct keyring_index_key.
> > >
> > > Reject @desclen values at or above KEY_MAX_DESC_SIZE with -EINVAL in order
> > > to match the userspace limit. The constraints inherits from the one byte
> > > required for the NULL character.
> > >
> > > Cc: stable@vger.kernel.org
> > > Assisted-by: LLM
> > > Fixes: f771fde82051 ("keys: Simplify key description management")
> > > Reviewed-by: David Howells <dhowells@redhat.com>
> > > Signed-off-by: Jarkko Sakkinen <jarkko@kernel.org>
> >
> > This is now the only one, which does not have keyutils script in the
> > commit message so in that sense I think these fixes look pretty good.
>
> Sure, this fix is still incomplete though, as I mentioned.
>
> Turns out Sashiko found this too; see the comment on
> https://sashiko.dev/#/patchset/20261020013903.1244157-1-jarkko%40kernel.org
I did not ignore what you said honestly but I overlooked generated
descriptions.
By comparing your v2 response and Sashiko's response and going through the
code this is the list that I have where similar check should be placed:
- key_alloc(): before quota calculation (in place)
- __key_create_or_update(): before assigning index_key.desc_len
- keyring_search(): before match_preparse
- request_key_and_link(): before match_preparse
- request_key_rcu(): before check_cached_key()
Some sites might require some minor changes I just wrote the around the
ballpark locations.
Did I miss any site that you are aware of?
Because there are so many, despite simple check I also wonder, should
we have a macro for this check?
>
> - Eric
Br, Jarkko
next prev parent reply other threads:[~2026-10-20 10:57 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-20 1:38 [PATCH v3 0/3] KEYS: rhashtable bug fixes Jarkko Sakkinen
2026-10-20 1:38 ` [PATCH v3 1/3] KEYS: Expand key->{datalen,quotalen} to unsigned int Jarkko Sakkinen
2026-10-20 1:46 ` sashiko-bot
2026-10-20 15:47 ` Eric Biggers
2026-10-20 15:56 ` Jarkko Sakkinen
2026-10-20 1:38 ` [PATCH v3 2/3] KEYS: Reject @desclen values >= KEY_MAX_DESC_SIZE in key_alloc() Jarkko Sakkinen
2026-10-20 1:47 ` Jarkko Sakkinen
2026-10-20 2:28 ` Eric Biggers
2026-10-20 10:57 ` Jarkko Sakkinen [this message]
2026-10-20 13:00 ` Jarkko Sakkinen
2026-10-20 15:50 ` Eric Biggers
2026-10-20 16:09 ` Jarkko Sakkinen
2026-10-20 1:51 ` sashiko-bot
2026-10-20 1:38 ` [PATCH v3 3/3] KEYS: Verify the key identity in __key_unlink_begin Jarkko Sakkinen
2026-10-20 1:44 ` sashiko-bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=atdJC3-PsaNh9PCA@kernel.org \
--to=jarkko@kernel.org \
--cc=dhowells@redhat.com \
--cc=ebiggers@kernel.org \
--cc=jmorris@namei.org \
--cc=keyrings@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-security-module@vger.kernel.org \
--cc=paul@paul-moore.com \
--cc=serge@hallyn.com \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.