Re: [PATCH v5 2/2] KEYS: asymmetric: Copy sig and digest in public_key_verify_signature()

From: Eric Biggers
Date: Thu Feb 09 2023 - 13:53:49 EST


On Thu, Feb 09, 2023 at 11:49:19AM +0100, Roberto Sassu wrote:
> On Fri, 2023-01-27 at 09:27 +0100, Roberto Sassu wrote:
> > On Thu, 2022-12-29 at 14:39 -0800, Eric Biggers wrote:
> > > On Tue, Dec 27, 2022 at 03:27:40PM +0100, Roberto Sassu wrote:
> > > > From: Roberto Sassu <roberto.sassu@xxxxxxxxxx>
> > > >
> > > > Commit ac4e97abce9b8 ("scatterlist: sg_set_buf() argument must be in linear
> > > > mapping") checks that both the signature and the digest reside in the
> > > > linear mapping area.
> > > >
> > > > However, more recently commit ba14a194a434c ("fork: Add generic vmalloced
> > > > stack support") made it possible to move the stack in the vmalloc area,
> > > > which is not contiguous, and thus not suitable for sg_set_buf() which needs
> > > > adjacent pages.
> > > >
> > > > Always make a copy of the signature and digest in the same buffer used to
> > > > store the key and its parameters, and pass them to sg_init_one(). Prefer it
> > > > to conditionally doing the copy if necessary, to keep the code simple. The
> > > > buffer allocated with kmalloc() is in the linear mapping area.
> > > >
> > > > Cc: stable@xxxxxxxxxxxxxxx # 4.9.x
> > > > Fixes: ba14a194a434 ("fork: Add generic vmalloced stack support")
> > > > Link: https://lore.kernel.org/linux-integrity/Y4pIpxbjBdajymBJ@sol.localdomain/
> > > > Suggested-by: Eric Biggers <ebiggers@xxxxxxxxxx>
> > > > Signed-off-by: Roberto Sassu <roberto.sassu@xxxxxxxxxx>
> > > > ---
> > > > crypto/asymmetric_keys/public_key.c | 38 ++++++++++++++++-------------
> > > > 1 file changed, 21 insertions(+), 17 deletions(-)
> > >
> > > Reviewed-by: Eric Biggers <ebiggers@xxxxxxxxxx>
> >
> > Hi David
> >
> > could you please take this patch in your repo, if it is ok?
>
> Kindly ask your support here. Has this patch been queued somewhere?
> Wasn't able to find it, also it is not in linux-next.
>

The maintainer of asymmetric_keys (David Howells) is ignoring this patch, so
you'll need to find someone else to apply it. Herbert Xu, the maintainer of the
crypto subsystem, might be willing to apply it. Or maybe Jarkko Sakkinen, who
is a co-maintainer of the keyrings subsystem (but not asymmetric_keys, for some
reason; should that change?).

- Eric