Re: [PATCH 00/10] Control Flow Enforcement - Part (3)

From: Jann Horn
Date: Mon Jun 25 2018 - 22:46:26 EST


On Tue, Jun 26, 2018 at 4:45 AM Yu-cheng Yu <yu-cheng.yu@xxxxxxxxx> wrote:
>
> This series introduces CET - Shadow stack
>
> At the high level, shadow stack is:
>
> Allocated from a task's address space with vm_flags VM_SHSTK;
> Its PTEs must be read-only and dirty;
> Fixed sized, but the default size can be changed by sys admin.
>
> For a forked child, the shadow stack is duplicated when the next
> shadow stack access takes place.
>
> For a pthread child, a new shadow stack is allocated.
>
> The signal handler uses the same shadow stack as the main program.
>
> Yu-cheng Yu (10):
> x86/cet: User-mode shadow stack support
> x86/cet: Introduce WRUSS instruction
> x86/cet: Signal handling for shadow stack
> x86/cet: Handle thread shadow stack
> x86/cet: ELF header parsing of Control Flow Enforcement
> x86/cet: Add arch_prctl functions for shadow stack
> mm: Prevent mprotect from changing shadow stack
> mm: Prevent mremap of shadow stack
> mm: Prevent madvise from changing shadow stack
> mm: Prevent munmap and remap_file_pages of shadow stack

Shouldn't patches like these be CC'ed to linux-api@xxxxxxxxxxxxxxx?