[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20141203153721.30b32472145aa560921bdc1e@linux-foundation.org>
Date: Wed, 3 Dec 2014 15:37:21 -0800
From: Andrew Morton <akpm@...ux-foundation.org>
To: Andy Lutomirski <luto@...capital.net>
Cc: Richard Weinberger <richard@....at>,
David Miller <davem@...emloft.net>,
Thomas Gleixner <tglx@...utronix.de>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
linux-arch <linux-arch@...r.kernel.org>,
Al Viro <viro@...iv.linux.org.uk>,
richard -rw- weinberger <richard.weinberger@...il.com>,
"H. Peter Anvin" <hpa@...or.com>, Ingo Molnar <mingo@...nel.org>,
Kees Cook <keescook@...omium.org>
Subject: Re: [PATCH v2] all arches, signal: Move restart_block to struct
task_struct
On Mon, 1 Dec 2014 06:55:01 -0800 Andy Lutomirski <luto@...capital.net> wrote:
> On Tue, Nov 11, 2014 at 2:52 AM, Richard Weinberger <richard@....at> wrote:
> > Am 11.11.2014 um 03:13 schrieb David Miller:
> >> From: Andy Lutomirski <luto@...capital.net>
> >> Date: Mon, 10 Nov 2014 14:03:23 -0800
> >>
> >>> On Wed, Oct 29, 2014 at 11:12 AM, Thomas Gleixner <tglx@...utronix.de> wrote:
> >>>> On Wed, 29 Oct 2014, Andy Lutomirski wrote:
> >>>>
> >>>>> If an attacker can cause a controlled kernel stack overflow,
> >>>>> overwriting the restart block is a very juicy exploit target.
> >>>>> Moving the restart block to struct task_struct prevents this
> >>>>> exploit.
> >>>>>
> >>>>> Note that there are other fields in thread_info that are also easy
> >>>>> targets, at least on some architectures.
> >>>>>
> >>>>> It's also a decent simplification, since the restart code is more or
> >>>>> less identical on all architectures.
> >>>>
> >>>> I think that's the most important change. Moving common stuff into
> >>>> common code. The side effect of slightly reducing the attack surface
> >>>> is nice, but as Al pointed out not really the big win here.
> >>>
> >>> Having gotten exactly zero feedback from any arch maintainer outside
> >>> of x86, am I supposed to pester people further?
> >>
> >> No objections wrt. sparc and if things break I'll help fix it.
> >
> > Same for UML.
> > Acked-by: Richard Weinberger <richard@....at>
>
> akpm, do you consider this appropriate for either 3.19 or 3.20? If
> so, can you add it to the appropriate part of -mm?
Yes, I can grab it. Probably for .20, as the lag times for exposing
issues in obscures architectures are lengthy.
One clarification:
: If an attacker can cause a controlled kernel stack overflow,
: overwriting the restart block is a very juicy exploit target.
This is because the thread_info actually resides in the memory which
was allocated for the kernel stack, yes? Whereas the task_struct is
separately allocated and is harder to find?
Spelling this out in the changelog would be useful for the ignorant and
the forgetful ;)
: Moving the restart block to struct task_struct prevents this
: exploit.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists