[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAMuHMdXEVLcn3=76H5zk9LNOPZLfV1XfuQ1EtrNjoZ3J3i2Nyg@mail.gmail.com>
Date: Wed, 24 May 2017 13:57:52 +0200
From: Geert Uytterhoeven <geert@...ux-m68k.org>
To: Kees Cook <keescook@...omium.org>
Cc: Rik van Riel <riel@...hat.com>,
LKML <linux-kernel@...r.kernel.org>,
Daniel Micay <danielmicay@...il.com>,
"Ted Ts'o" <tytso@....edu>, "H. Peter Anvin" <hpa@...or.com>,
Andy Lutomirski <luto@...capital.net>,
Ingo Molnar <mingo@...nel.org>,
"x86@...nel.org" <x86@...nel.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
Catalin Marinas <catalin.marinas@....com>,
linux-sh <linux-sh@...r.kernel.org>,
Yoshinori Sato <ysato@...rs.sourceforge.jp>
Subject: Re: stackprotector: ascii armor the stack canary
On Fri, May 19, 2017 at 11:32 PM, Kees Cook <keescook@...omium.org> wrote:
> On Fri, May 19, 2017 at 2:26 PM, <riel@...hat.com> wrote:
>> Zero out the first byte of the stack canary value on 64 bit systems,
>> in order to prevent unterminated C string overflows from being able
>> to successfully overwrite the canary, even if an attacker somehow
>> guessed or obtained the canary value.
>
> This also stops string functions from being able to read the canary.
>
> It might also be worth mentioning that the reduction in entropy for
> 64-bit to gain this corner-case protection is worth it, but on 32-bit,
> it is not. (Which is especially true given that the 64-bit canary was
> only 32-bits in some cases until recently.)
+1
It took me a while to deduce that myself, when I started wondering why
this was not done for 32-bit.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@...ux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
Powered by blists - more mailing lists