From: Eric Biggers <ebiggers@kernel.org>
To: Corentin Labbe <clabbe.montjoie@gmail.com>
Cc: Tianchu Chen <tianchu.chen@linux.dev>,
herbert@gondor.apana.org.au, davem@davemloft.net,
wens@kernel.org, jernej.skrabec@gmail.com, samuel@sholland.org,
linux-crypto@vger.kernel.org,
linux-arm-kernel@lists.infradead.org,
linux-sunxi@lists.linux.dev, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v2] crypto: sun4i-ss - clamp PRNG seed length to prevent heap overflow
Date: Mon, 1 Jun 2026 15:47:40 +0000 [thread overview]
Message-ID: <20260601154740.GA17375@google.com> (raw)
In-Reply-To: <ah2d0RyZcVp614_k@Red>
On Mon, Jun 01, 2026 at 04:57:21PM +0200, Corentin Labbe wrote:
> Le Fri, May 29, 2026 at 05:33:41PM +0000, Eric Biggers a écrit :
> > On Fri, May 29, 2026 at 07:10:06PM +0200, Corentin Labbe wrote:
> > > Le Fri, May 29, 2026 at 09:10:57AM -0700, Eric Biggers a écrit :
> > > > On Fri, May 29, 2026 at 08:08:01AM +0000, Tianchu Chen wrote:
> > > > > From: Tianchu Chen <flynnnchen@tencent.com>
> > > > >
> > > > > sun4i_ss_prng_seed() copies the user-supplied seed into ss->seed
> > > > > using the user-provided length with no bounds check. The crypto core
> > > > > does not enforce slen <= seedsize before calling into the driver, so a
> > > > > userspace caller via AF_ALG setsockopt(ALG_SET_KEY) can pass up to
> > > > > sysctl_optmem_max bytes, overflowing the fixed-size buffer and
> > > > > corrupting adjacent heap memory.
> > > > >
> > > > > Clamp the copy length to the buffer size, matching the approach used by
> > > > > loongson-rng for oversized seeds.
> > > > >
> > > > > Discovered by Atuin - Automated Vulnerability Discovery Engine.
> > > > >
> > > > > Fixes: 6298e948215f ("crypto: sunxi-ss - Add Allwinner Security System crypto accelerator")
> > > > > Cc: stable@vger.kernel.org
> > > > > Signed-off-by: Tianchu Chen <flynnnchen@tencent.com>
> > > > > ---
> > > > > v2: Silently clamp oversized seeds with min_t instead of returning
> > > > > -EINVAL (Herbert Xu).
> > > >
> > > > sun4i-ss-prng.c is useless, is still broken, and should just be deleted.
> > >
> > > Hello
> > >
> > > useless ? clearly no, it helped a lot on devices where it is.
> >
> > The only way this code is reachable is via "rng" algorithm type in
> > AF_ALG, which is almost never used. Everyone just uses the regular
> > Linux RNG (/dev/random etc) instead, as they should.
> >
> > In fact, anyone were to accidentally use this it would be a security
> > vulnerability, seeing as sun4i_ss_prng_generate() doesn't actually fill
> > in all the bytes that were requested. It also doesn't wait for the FIFO
> > to be ready when reading data from it.
> >
> > Is it possible that there's a misunderstanding here and you think this
> > provides entropy to the regular Linux RNG? It doesn't. hwrng does
> > that, crypto_rng does not.
> >
>
> I believe to have used rngd for that. ( or something like that)
>
> Anyway, I understand why want to remove it.
rngd doesn't use AF_ALG. So no, it couldn't have used this driver.
- Eric
prev parent reply other threads:[~2026-06-01 15:47 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-28 14:53 [PATCH] crypto: sun4i-ss: restrict PRNG seed length to prevent heap overflow Tianchu Chen
2026-05-28 15:29 ` sashiko-bot
2026-05-29 3:03 ` Tianchu Chen
2026-05-29 6:11 ` Herbert Xu
2026-05-29 7:05 ` Tianchu Chen
2026-05-29 8:08 ` [PATCH v2] crypto: sun4i-ss - clamp " Tianchu Chen
2026-05-29 8:42 ` sashiko-bot
2026-05-29 16:10 ` Eric Biggers
2026-05-29 17:10 ` Corentin Labbe
2026-05-29 17:33 ` Eric Biggers
2026-05-29 19:41 ` Eric Biggers
2026-06-01 14:57 ` Corentin Labbe
2026-06-01 15:47 ` Eric Biggers [this message]
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=20260601154740.GA17375@google.com \
--to=ebiggers@kernel.org \
--cc=clabbe.montjoie@gmail.com \
--cc=davem@davemloft.net \
--cc=herbert@gondor.apana.org.au \
--cc=jernej.skrabec@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-crypto@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sunxi@lists.linux.dev \
--cc=samuel@sholland.org \
--cc=tianchu.chen@linux.dev \
--cc=wens@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.