[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAGXu5jKw-=hQUgPUd5E9Rgt-mSD+aDWBDfyJdKbu6xCOzM5p5g@mail.gmail.com>
Date: Fri, 3 Nov 2017 18:41:48 -0700
From: Kees Cook <keescook@...omium.org>
To: Al Viro <viro@...iv.linux.org.uk>
Cc: Laura Abbott <labbott@...hat.com>,
kernel-hardening@...ts.openwall.com,
LKML <linux-kernel@...r.kernel.org>,
Mark Rutland <mark.rutland@....com>, X86 ML <x86@...nel.org>
Subject: Re: [RFC PATCH 2/2] x86: Allow paranoid __{get,put}_user
On Fri, Nov 3, 2017 at 6:39 PM, Kees Cook <keescook@...omium.org> wrote:
> On Fri, Nov 3, 2017 at 5:24 PM, Al Viro <viro@...iv.linux.org.uk> wrote:
>> On Fri, Nov 03, 2017 at 05:14:05PM -0700, Kees Cook wrote:
>>> > x86 turns out to be easier since the safe and unsafe paths are mostly
>>> > disjoint so we don't have to worry about gcc optimizing out access_ok.
>>> > I tweaked the Kconfig to someting a bit more generic.
>>> >
>>> > The size increase was ~8K in text with a config I tested.
>>>
>>> Specifically, this feature would have caught the waitid() bug in 4.13
>>> immediately.
>>
>> You mean, as soon as waitid() was given a kernel address. At which point
>> you'd get a shiny way to generate a BUG(), and if something like that
>> happened under a mutex - it's even more fun...
>
> Nope, any usage at all would BUG. This would have been immediately noticed. :)
Sorry, ignore that; yes, on any kernel address. But as always
reduction of impact is important: from exploitable flaw to DoS. Much
better!
-Kees
--
Kees Cook
Pixel Security
Powered by blists - more mailing lists