Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Wed, 4 Oct 2017 16:31:20 -0700
From: Kees Cook <>
To: Alexander Popov <>
Cc: "" <>, PaX Team <>, 
	Brad Spengler <>, Tycho Andersen <>, 
	Laura Abbott <>, Mark Rutland <>, 
	Ard Biesheuvel <>, Andy Lutomirski <>, 
	"" <>
Subject: Re: [PATCH RFC v4 1/3] gcc-plugins: Add STACKLEAK erasing the kernel
 stack at the end of syscalls

On Wed, Oct 4, 2017 at 3:55 PM, Alexander Popov <> wrote:
> The STACKLEAK feature erases the kernel stack before returning from
> syscalls. That reduces the information which a kernel stack leak bug can
> reveal and blocks some uninitialized stack variable attacks. Moreover,
> STACKLEAK provides runtime checks for kernel stack overflow detection.
> This feature consists of:
>  - the architecture-specific code filling the used part of the kernel
>     stack with a poison value before returning to the userspace;
>  - the STACKLEAK gcc plugin. It instruments the kernel code inserting
>     the track_stack() call for tracking the lowest border of the kernel
>     stack and check_alloca() call for checking alloca size.
> The STACKLEAK feature is ported from grsecurity/PaX. More information at:
> This code is modified from Brad Spengler/PaX Team's code in the last
> public patch of grsecurity/PaX based on our understanding of the code.
> Changes or omissions from the original code are ours and don't reflect
> the original grsecurity/PaX code.
> Signed-off-by: Alexander Popov <>

Thanks for the continuing work on this!

If I can get some review from Andy or other x86 folks, I'd appreciate
it. If they're happy, I'll add this to the gcc-plugins tree...


Kees Cook
Pixel Security

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.