lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Wed, 14 Jun 2023 12:28:18 -0700
From:   Kees Cook <keescook@...omium.org>
To:     John Paul Adrian Glaubitz <glaubitz@...sik.fu-berlin.de>
Cc:     ysato@...rs.sourceforge.jp, azeemshaikh38@...il.com,
        dalias@...c.org, linux-kernel@...r.kernel.org,
        rdunlap@...radead.org, linux-sh@...r.kernel.org,
        linux-hardening@...r.kernel.org
Subject: Re: [PATCH] sh: Replace all non-returning strlcpy with strscpy

On Wed, Jun 14, 2023 at 09:23:49PM +0200, John Paul Adrian Glaubitz wrote:
> On Wed, 2023-06-14 at 12:03 -0700, Kees Cook wrote:
> > On Wed, Jun 14, 2023 at 08:49:13PM +0200, John Paul Adrian Glaubitz wrote:
> > > Hi Kees!
> > > 
> > > On Wed, 2023-06-14 at 11:44 -0700, Kees Cook wrote:
> > > > On Tue, 30 May 2023 16:30:41 +0000, Azeem Shaikh wrote:
> > > > > strlcpy() reads the entire source buffer first.
> > > > > This read may exceed the destination size limit.
> > > > > This is both inefficient and can lead to linear read
> > > > > overflows if a source string is not NUL-terminated [1].
> > > > > In an effort to remove strlcpy() completely [2], replace
> > > > > strlcpy() here with strscpy().
> > > > > No return values were used, so direct replacement is safe.
> > > > > 
> > > > > [...]
> > > > 
> > > > Build tested with sh4 GCC 13.1 from:
> > > > https://mirrors.edge.kernel.org/pub/tools/crosstool/files/bin/x86_64/13.1.0/
> > > > 
> > > > with defconfig and:
> > > > 	CONFIG_CPU_SUBTYPE_SH7343=y
> > > > 	CONFIG_SH_DMA=y
> > > > 	CONFIG_SH_DMA_API=y
> > > > 
> > > > Applied to for-next/hardening, thanks!
> > > > 
> > > > [1/1] sh: Replace all non-returning strlcpy with strscpy
> > > >       https://git.kernel.org/kees/c/ca64da3052be
> > > > 
> > > 
> > > Apologies, this fell off my table. I should have acked and tested this being the
> > > SuperH maintainer. If you can still update the patch in your tree, I can both
> > > test and ack this patch.
> > 
> > Absolutely! Thanks for double-checking. :)
> 
> I have tested the patch on my SH-7785LCR board on top of Linus' tree and
> also acked it.

Awesome. :) I have updated the tags and will push out my tree shortly.

Thanks!

-Kees

-- 
Kees Cook

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ