linux/arch
Rik van Riel bf9eb54438 x86: ascii armor the x86_64 boot init stack canary
Use the ascii-armor canary to prevent unterminated C string overflows
from being able to successfully overwrite the canary, even if they
somehow obtain the canary value.

Inspired by execshield ascii-armor and Daniel Micay's linux-hardened
tree.

Link: http://lkml.kernel.org/r/20170524155751.424-4-riel@redhat.com
Signed-off-by: Rik van Riel <riel@redhat.com>
Acked-by: Kees Cook <keescook@chromium.org>
Cc: Daniel Micay <danielmicay@gmail.com>
Cc: "Theodore Ts'o" <tytso@mit.edu>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Andy Lutomirski <luto@amacapital.net>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2017-07-12 16:26:03 -07:00
..
alpha Merge branch 'uaccess.strlen' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2017-07-06 22:07:44 -07:00
arc Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-07-03 16:14:51 -07:00
arm arm: move ELF_ET_DYN_BASE to 4MB 2017-07-10 16:32:36 -07:00
arm64 include/linux/string.h: add the option of fortified string.h functions 2017-07-12 16:26:03 -07:00
blackfin kernel/watchdog: introduce arch_touch_nmi_watchdog() 2017-07-12 16:26:02 -07:00
c6x This is the first pull request for the new dma-mapping subsystem 2017-07-06 19:20:54 -07:00
cris Merge branch 'uaccess.strlen' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2017-07-06 22:07:44 -07:00
frv frv: cmpxchg: implement cmpxchg64() 2017-07-10 16:32:34 -07:00
h8300 Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-07-03 16:14:51 -07:00
hexagon Merge branch 'akpm' (patches from Andrew) 2017-07-06 22:27:08 -07:00
ia64 kexec: move vmcoreinfo out of the kernel's .bss section 2017-07-12 16:25:59 -07:00
m32r Merge branch 'uaccess.strlen' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2017-07-06 22:07:44 -07:00
m68k Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/gerg/m68knommu 2017-07-11 09:52:56 -07:00
metag Merge branch 'akpm' (patches from Andrew) 2017-07-06 22:27:08 -07:00
microblaze Merge branch 'uaccess.strlen' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2017-07-06 22:07:44 -07:00
mips lib/extable.c: use bsearch() library function in search_extable() 2017-07-10 16:32:35 -07:00
mn10300 kernel/watchdog: introduce arch_touch_nmi_watchdog() 2017-07-12 16:26:02 -07:00
nios2 Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-07-03 16:14:51 -07:00
openrisc OpenRISC fixes for 4.13 2017-07-07 13:58:49 -07:00
parisc Merge branch 'akpm' (patches from Andrew) 2017-07-06 22:27:08 -07:00
powerpc include/linux/string.h: add the option of fortified string.h functions 2017-07-12 16:26:03 -07:00
s390 kexec: move vmcoreinfo out of the kernel's .bss section 2017-07-12 16:25:59 -07:00
score Merge branch 'uaccess.strlen' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2017-07-06 22:07:44 -07:00
sh sh: mark end of BUG() implementation as unreachable 2017-07-12 16:26:03 -07:00
sparc kernel/watchdog: introduce arch_touch_nmi_watchdog() 2017-07-12 16:26:02 -07:00
tile Kbuild thin archives updates for v4.13 2017-07-07 15:11:12 -07:00
um Merge branch 'uaccess.strlen' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2017-07-06 22:07:44 -07:00
unicore32 signal: Remove non-uapi <asm/siginfo.h> 2017-06-04 15:11:47 +02:00
x86 x86: ascii armor the x86_64 boot init stack canary 2017-07-12 16:26:03 -07:00
xtensa Merge branch 'uaccess.strlen' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2017-07-06 22:07:44 -07:00
.gitignore
Kconfig include/linux/string.h: add the option of fortified string.h functions 2017-07-12 16:26:03 -07:00