Re: [RFC PATCH] make CONFIG_STRICT_DEVMEM a core non-debug feature

2014-11-04 Thread Kees Cook
RICTED_DEVMEM > + default y > + help > + If this option is disabled, you allow userspace (root) access to all > + of memory, including kernel and userspace memory. Accidental > + access to this is obviously disastrous, but specific access can > + be used by people debugging the kernel. > + > + If this option is switched on, the /dev/mem file restricts userspace > + access to an architecture-specific subset of the physical address > + space. Great consolidation, thanks! I would probably expand this help text a bit to include some of details mentioned in the x86 portion of the option. For example: If this option is switched on, the /dev/mem file restricts userspace access to an architecture-specific subset of the physical address space. For example on x86, PCI space and BIOS code and data regions. This is sufficient for things like dosemu and non-KMS Xorg and all common users of /dev/mem. Thanks! -Kees > + > + If in doubt, say Y. > + > config DEVKMEM > bool "/dev/kmem virtual device support" > default y > -- > 1.7.10.4 > -- Kees Cook Chrome OS Security ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev

Re: [RFC PATCH] make CONFIG_STRICT_DEVMEM a core non-debug feature

2014-11-04 Thread Kees Cook
On Tue, Nov 4, 2014 at 11:59 AM, Leif Lindholm wrote: > On Tue, Nov 04, 2014 at 10:43:00AM -0800, Kees Cook wrote: >> > diff --git a/drivers/char/Kconfig b/drivers/char/Kconfig >> > index efefd12..39f7817 100644 >> > --- a/drivers/char/Kconfig >> > +++ b/

Re: [PATCH 3/3] powerpc/pseries: Support compression of oops text via pstore

2013-06-24 Thread Kees Cook
oops_data_sz = oops_log_partition.size - sizeof(struct oops_log_info); > > - rc = nvram_pstore_init(); > - > - if (!rc) > - return; > - > /* > * Figure compression (preceded by elimination of each line's > * severity prefix) will reduce the oops/panic report to at most > @@ -759,6 +858,11 @@ static void __init nvram_init_oops_partition(int > rtas_partition_exists) > stream.workspace = NULL; > } > > + rc = nvram_pstore_init(); > + > + if (!rc) > + return; > + > rc = kmsg_dump_register(&nvram_kmsg_dumper); > if (rc != 0) { > pr_err("nvram: kmsg_dump_register() failed; returned %d\n", > rc); > -- Kees Cook Chrome OS Security ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev

Re: [PATCH 3/3] powerpc/pseries: Support compression of oops text via pstore

2013-06-25 Thread Kees Cook
On Tue, Jun 25, 2013 at 12:04 AM, Aruna Balakrishnaiah wrote: > Hi Kees, > > > On Monday 24 June 2013 11:27 PM, Kees Cook wrote: >> >> On Sun, Jun 23, 2013 at 11:23 PM, Aruna Balakrishnaiah >> wrote: >>> >>> The patch set supports compression of oo

Re: [PATCH v2 0/3] Nvram-to-pstore: compression support for oops data

2013-06-27 Thread Kees Cook
ing to ponder if we need to have some kind of regular header structure that backends can extend, but that doesn't need to be part of this series. :) Acked-by: Kees Cook Thanks, -Kees -- Kees Cook Chrome OS Security ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev

Re: [PATCH 0/2] Consolidate redundant register/stack access code

2015-06-15 Thread Kees Cook
nel/ptrace.c | 39 +- > include/linux/ptrace.h | 51 > kernel/ptrace.c| 38 ++ > 16 files changed, 116 insertions(+), 363 deletions(-) > delete mode 100644 arch/sh/kernel/pt

Re: [PATCH 1/2] Move the pt_regs_offset struct definition from arch to common include file

2015-06-19 Thread Kees Cook
haustive > test one could repeat this sequence for every register in the architecture. > > This should work the same on all architectures supporting kprobes. You just > have to use the appropriate register names for your architecture after the > "%"

Re: [RFC PATCH 09/12] powerpc/kernel: Add SIG_SYS support for compat tasks

2015-07-15 Thread Kees Cook
nfo; > static volatile int TRAP_nr; > static void TRAP_action(int nr, siginfo_t *info, void *void_context) > { > + fprintf(stderr, "in TRAP_action\n"); > + fprintf(stderr, "info->si_call_addr %p\n", i

Re: [RFC PATCH 11/12] selftests/seccomp: Make seccomp tests work on big endian

2015-07-15 Thread Kees Cook
" > +#endif Ah-ha! Yes, thanks. Could you change the #error to something that describes the particular (impossible) failure condition? "wut? Unknown __BYTE_ORDER?!". Not a huge deal, but I always like verbose errors. :) Especially for "impossible" situations. :) -Kees > >

Re: [RFC PATCH 12/12] selftests/seccomp: Add powerpc support

2015-07-15 Thread Kees Cook
On Wed, Jul 15, 2015 at 12:37 AM, Michael Ellerman wrote: > Wire up the syscall number and regs so the tests work on powerpc. > > Signed-off-by: Michael Ellerman Acked-by: Kees Cook -Kees > --- > tools/testing/selftests/seccomp/seccomp_bpf.c | 9 - > 1 file cha

Re: [PATCH 01/11] powerpc/kernel: Switch to using MAX_ERRNO

2015-07-27 Thread Kees Cook
been updated to > use force_successful_syscall_return(). > > I have also checked all the powerpc specific syscalls, and believe that > none of them expect to return a non-error value between -MAX_ERRNO and > -516. So this change should be safe ... > > Acked-by: Benjamin Herren

Re: [PATCH 02/11] powerpc/kernel: Change the do_syscall_trace_enter() API

2015-07-27 Thread Kees Cook
t; is given. > > Signed-off-by: Michael Ellerman Reviewed-by: Kees Cook -Kees > --- > arch/powerpc/kernel/entry_32.S | 4 > arch/powerpc/kernel/entry_64.S | 23 ++-- > arch/powerpc/kernel/ptrace.c | 48 > -- >

Re: [PATCH 03/11] powerpc: Drop unused syscall_get_error()

2015-07-27 Thread Kees Cook
ompat, and doesn't deal with TIF_NOERROR. > > Although we could fix those, until it has a caller and it's clear what > semantics the caller wants it's just untested code. So drop it. > > Signed-off-by: Michael Ellerman Reviewed-by: Kees Cook -Kees > --- > ar

Re: [PATCH 04/11] powerpc: Don't negate error in syscall_set_return_value()

2015-07-27 Thread Kees Cook
hough the value passed > in is already negative. > > So remove the negation in syscall_set_return_value(), and expect the > caller to do it like all other implementations do. > > Also add a comment about the ccr handling. > > Signed-off-by: Michael Ellerman Reviewed-by: K

Re: [PATCH 05/11] powerpc: Rework syscall_get_arguments() so there is only one loop

2015-07-27 Thread Kees Cook
ce to update. > > Signed-off-by: Michael Ellerman Reviewed-by: Kees Cook -Kees > --- > arch/powerpc/include/asm/syscall.h | 19 --- > 1 file changed, 8 insertions(+), 11 deletions(-) > > diff --git a/arch/powerpc/include/asm/syscall.h > b/arch/p

Re: [PATCH 06/11] powerpc: Use orig_gpr3 in syscall_get_arguments()

2015-07-27 Thread Kees Cook
d never modify it. > > Update syscall_set_arguments() while we're here, even though it's never > used. > > Signed-off-by: Michael Ellerman Reviewed-by: Kees Cook -Kees > --- > arch/powerpc/include/asm/syscall.h | 16 +--- > 1 file changed, 13 insert

Re: [PATCH 08/11] powerpc/kernel: Add SIG_SYS support for compat tasks

2015-07-27 Thread Kees Cook
e only > user of SIGSYS in the kernel is seccomp filter, which we don't support > yet. > > So before we enable seccomp filter, add compat handling for SIGSYS. > > Signed-off-by: Michael Ellerman Reviewed-by: Kees Cook -Kees > --- > arch/powerpc/include/asm/compat.h

Re: [PATCH 09/11] powerpc/kernel: Enable seccomp filter

2015-07-27 Thread Kees Cook
> parameter again. We do this restore using orig_gpr3, which may have been > modified by seccomp, which allows seccomp to modify the first syscall > paramater and allow the syscall to proceed. > > Signed-off-by: Michael Ellerman Reviewed-by: Kees Cook -Kees > --- >

Re: [PATCH 10/11] selftests/seccomp: Make seccomp tests work on big endian

2015-07-27 Thread Kees Cook
hack from samples/seccomp/bpf-helper.h which changes the offset > on big endian to account for this. > > Signed-off-by: Michael Ellerman Acked-by: Kees Cook Thanks for fixing the error message! :) -Kees > --- > tools/testing/selftests/seccomp/seccomp_bpf.c | 6 ++ > 1 file cha

Re: [PATCH 07/11] powerpc: Change syscall_get_nr() to return int

2015-07-27 Thread Kees Cook
call > through seccomp. > > Signed-off-by: Michael Ellerman Reviewed-by: Kees Cook -Kees > --- > arch/powerpc/include/asm/syscall.h | 11 --- > 1 file changed, 8 insertions(+), 3 deletions(-) > > diff --git a/arch/powerpc/include/asm/syscall.h > b/arc

Re: [PATCH 11/11] selftests/seccomp: Add powerpc support

2015-07-27 Thread Kees Cook
ses syscall_restart? Seems like ARM remains the odd-arch-out on this. :P) Thanks! -Kees > > Acked-by: Kees Cook > Signed-off-by: Michael Ellerman > --- > tools/testing/selftests/seccomp/seccomp_bpf.c | 9 - > 1 file changed, 8 insertions(+), 1 deletion(-) > >

Re: [PATCH v2] powerpc/kernel: Enable seccomp filter

2015-07-30 Thread Kees Cook
> parameter again. We do this restore using orig_gpr3, which may have been > modified by seccomp, which allows seccomp to modify the first syscall > paramater and allow the syscall to proceed. > > We need to #ifdef the the additional handling of r3 for seccomp, so move > it all out

Re: [RFC PATCH v2 11/11] pstore/ram: Read and write to the 'compressed' flag of pstore

2013-08-17 Thread Kees Cook
g accordingly. > > Signed-off-by: Aruna Balakrishnaiah Nice work! Acked-by: Kees Cook -- Kees Cook Chrome OS Security ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev

Re: [RFC PATCH v2 00/11] Add (de)compression support to pstore

2013-08-17 Thread Kees Cook
r addressing my issues from v1 Yeah, this is great. While I haven't tested it myself yet, the code seems to be in good shape. I acked the ram piece separately, but consider the entire series: Reviewed-by: Kees Cook Thanks! -Kees -- Kees Cook Chrome OS Security

Re: [PATCH v2 7/8] powerpc/pseries: Read of-config partition via pstore

2013-04-24 Thread Kees Cook
t; + case PSTORE_TYPE_PPC_OF: > + sprintf(name, "of-%s-%lld", psname, id); > + break; > case PSTORE_TYPE_UNKNOWN: > sprintf(name, "unknown-%s-%lld", psname, id); > break; > diff --git a

Re: [PATCH v2 0/8] powerpc/pseries: Nvram-to-pstore

2013-04-24 Thread Kees Cook
- > fs/pstore/inode.c |9 + > include/linux/pstore.h |4 > 3 files changed, 313 insertions(+), 53 deletions(-) This series looks good! Other than the naming conventions (are these new pstore typ

[PATCH] powerpc/xmon: avoid format string leaking to printk

2014-06-10 Thread Kees Cook
This makes sure format strings cannot leak into printk (the string has already been correctly processed for format arguments). Signed-off-by: Kees Cook --- arch/powerpc/xmon/nonstdio.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/powerpc/xmon/nonstdio.c b/arch

Re: [PATCH v5 0/4] powerpc/pstore: Add pstore support for nvram partitions

2015-02-05 Thread Kees Cook
ake timestamp related code y2038-safe Thanks! I skimmed this, and it looks good to me. Reviewed-by: Kees Cook -Kees > > > arch/powerpc/include/asm/nvram.h| 50 ++ > arch/powerpc/include/asm/rtas.h |5 > arch/powerpc/kernel/nvram_64.c

Re: [PATCH] Fix offset2lib issue for x86*, ARM*, PowerPC and MIPS

2015-02-23 Thread Kees Cook
PIE linked application is loaded in a different area. Thanks for working on this! > > We updated the "Fixing Offset2lib weakness" page: > http://cybersecurity.upv.es/solutions/aslrv2/aslrv2.html > > > Signed-off-by: Hector Marco-Gisbert > Signed-off-by: Ismael Ripoll

Re: [PATCH] Fix offset2lib issue for x86*, ARM*, PowerPC and MIPS

2015-02-26 Thread Kees Cook
it ... and will define mmap_rnd. > > Someone tell me how important Hector's patch is? I consider it a reasonable improvement to userspace ASLR. I look at it more as a new feature than a bug fix, but it could be argued as a bug fix too. > > > From: Andrew Morton > Subject:

Re: [PATCH] Fix offset2lib issue for x86*, ARM*, PowerPC and MIPS

2015-02-26 Thread Kees Cook
On Thu, Feb 26, 2015 at 4:11 PM, Kees Cook wrote: > On Thu, Feb 26, 2015 at 4:06 PM, Andrew Morton > wrote: >> On Thu, 26 Feb 2015 15:37:37 -0800 Kees Cook wrote: >> >>> Agh, no, please let's avoid the CONFIG addition. >> >> That is precisely how we

[PATCH 1/5] arm: factor out mmap ASLR into mmap_rnd

2015-02-26 Thread Kees Cook
Move logic for mmap ASLR into separate function. Signed-off-by: Kees Cook --- arch/arm/mm/mmap.c | 13 ++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/arch/arm/mm/mmap.c b/arch/arm/mm/mmap.c index 5e85ed371364..0f8bc158f2c6 100644 --- a/arch/arm/mm/mmap.c +++ b/arch

[PATCH 3/5] mm: move randomize_et_dyn into ELF_ET_DYN_BASE

2015-02-26 Thread Kees Cook
This moves s390's randomize_et_dyn base into ELF_ET_DYN_BASE, and removes an unused arm64 extern. Signed-off-by: Kees Cook --- arch/arm64/include/asm/elf.h | 1 - arch/s390/include/asm/elf.h | 9 + arch/s390/mm/mmap.c | 11 --- 3 files changed, 5 insertions(+

[PATCH 4/5] mm: split ET_DYN ASLR from mmap ASLR

2015-02-26 Thread Kees Cook
This moves arch_mmap_rnd() into the ELF loader for handling ET_DYN ASLR in a separate region from mmap ASLR, as already done on s390. Removes CONFIG_BINFMT_ELF_RANDOMIZE_PIE. Reported-by: Hector Marco-Gisbert Signed-off-by: Kees Cook --- arch/arm/Kconfig| 1 - arch/arm64/Kconfig

[PATCH 5/5] mm: fold arch_randomize_brk into ARCH_HAS_ELF_RANDOMIZE

2015-02-26 Thread Kees Cook
On architectures that define CONFIG_ARCH_HAS_ELF_RANDOMIZE, collapse the function declarations while continuing to handle CONFIG_COMPAT_BRK. Signed-off-by: Kees Cook --- arch/Kconfig | 1 + arch/arm/include/asm/elf.h | 4 arch/arm64/include/asm/elf.h | 4

[PATCH 2/5] mm: expose arch_mmap_rnd when available

2015-02-26 Thread Kees Cook
When an architecture fully supports randomizing the ELF load location, the arch_mmap_rnd() function becomes available. Rename and expose these functions where they exist. Introduces CONFIG_ARCH_HAS_ELF_RANDOMIZE. Signed-off-by: Kees Cook --- arch/Kconfig | 7 +++ arch/arm

[PATCH 0/5] split ET_DYN ASLR from mmap ASLR

2015-02-26 Thread Kees Cook
This separates ET_DYN ASLR from mmap ASLR, as already done on s390. The various architectures that are already randomizing mmap (arm, arm64, mips, powerpc, s390, and x86), have their various forms of arch_mmap_rnd() made available via the new CONFIG_ARCH_HAS_ELF_RANDOMIZE. For these architectures,

[PATCH] seccomp: switch to using asm-generic for seccomp.h

2015-02-27 Thread Kees Cook
Most architectures don't need to do anything special for the strict seccomp syscall entries. Remove the redundant headers and reduce the others. Signed-off-by: Kees Cook --- arch/arm/include/asm/seccomp.h | 12 +--- arch/microblaze/include/asm/seccomp.h

Re: [PATCH] seccomp: switch to using asm-generic for seccomp.h

2015-02-27 Thread Kees Cook
On Fri, Feb 27, 2015 at 5:36 PM, Stephen Rothwell wrote: > Hi Kees, > > On Fri, 27 Feb 2015 16:52:29 -0800 Kees Cook wrote: >> >> diff --git a/arch/arm/include/asm/seccomp.h b/arch/arm/include/asm/seccomp.h >> index 52b156b341f5..66ca6a30bf5c 100644 >> ---

Re: [PATCH 0/5] split ET_DYN ASLR from mmap ASLR

2015-03-02 Thread Kees Cook
On Mon, Mar 2, 2015 at 1:26 PM, Andrew Morton wrote: > On Thu, 26 Feb 2015 19:07:09 -0800 Kees Cook wrote: > >> This separates ET_DYN ASLR from mmap ASLR, as already done on s390. The >> various architectures that are already randomizing mmap (arm, arm64, mips, >> power

[PATCH v2] seccomp: switch to using asm-generic for seccomp.h

2015-03-02 Thread Kees Cook
Most architectures don't need to do anything special for the strict seccomp syscall entries. Remove the redundant headers and reduce the others. Signed-off-by: Kees Cook --- v2: - use Kbuild "generic-y" instead of explicit #include lines (sfr) --- arch/arm/include/asm/Kbuild

[PATCH 1/5] arm: factor out mmap ASLR into mmap_rnd

2015-03-02 Thread Kees Cook
In preparation for exporting per-arch mmap randomization functions, this moves the ASLR calculations for mmap on ARM into a separate routine. Signed-off-by: Kees Cook --- arch/arm/mm/mmap.c | 13 ++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/arch/arm/mm/mmap.c b

[PATCH v2 0/5] split ET_DYN ASLR from mmap ASLR

2015-03-02 Thread Kees Cook
To address the "offset2lib" ASLR weakness[1], this separates ET_DYN ASLR from mmap ASLR, as already done on s390. The architectures that are already randomizing mmap (arm, arm64, mips, powerpc, s390, and x86), have their various forms of arch_mmap_rnd() made available via the new CONFIG_ARCH_HAS_EL

[PATCH 5/5] mm: fold arch_randomize_brk into ARCH_HAS_ELF_RANDOMIZE

2015-03-02 Thread Kees Cook
igned-off-by: Kees Cook --- arch/Kconfig | 1 + arch/arm/include/asm/elf.h | 4 arch/arm64/include/asm/elf.h | 4 arch/mips/include/asm/elf.h| 4 arch/powerpc/include/asm/elf.h | 4 arch/s390/include/asm/elf.h| 3 --- arch/x86/include/asm/

[PATCH 4/5] mm: split ET_DYN ASLR from mmap ASLR

2015-03-02 Thread Kees Cook
loader for handling ET_DYN ASLR in a separate region from mmap ASLR, as already done on s390. Removes CONFIG_BINFMT_ELF_RANDOMIZE_PIE, which is no longer needed. Reported-by: Hector Marco-Gisbert Signed-off-by: Kees Cook --- arch/arm/Kconfig| 1 - arch/arm64/Kconfig | 1 -

[PATCH 2/5] mm: expose arch_mmap_rnd when available

2015-03-02 Thread Kees Cook
(). Additionally introduces CONFIG_ARCH_HAS_ELF_RANDOMIZE for describing this feature on architectures that support it (which is a superset of ARCH_BINFMT_ELF_RANDOMIZE_PIE, since s390 already does this witout the ARCH_BINFMT_ELF_RANDOMIZE_PIE logic). Signed-off-by: Kees Cook --- arch/Kconfig

[PATCH 3/5] mm: move randomize_et_dyn into ELF_ET_DYN_BASE

2015-03-02 Thread Kees Cook
n the same ET_DYN randomization on s390. Additionally removes a copy/pasted unused arm64 extern. Signed-off-by: Kees Cook --- arch/arm64/include/asm/elf.h | 1 - arch/s390/include/asm/elf.h | 9 + arch/s390/mm/mmap.c | 11 --- 3 files changed, 5 insertions(+), 16 dele

Re: [PATCH v2] seccomp: switch to using asm-generic for seccomp.h

2015-03-03 Thread Kees Cook
On Tue, Mar 3, 2015 at 12:30 AM, Ingo Molnar wrote: > > * Kees Cook wrote: > >> Most architectures don't need to do anything special for the strict >> seccomp syscall entries. Remove the redundant headers and reduce the >> others. > >> 19 files

Re: [PATCH v2 0/5] split ET_DYN ASLR from mmap ASLR

2015-03-03 Thread Kees Cook
On Mon, Mar 2, 2015 at 11:31 PM, Ingo Molnar wrote: > > * Kees Cook wrote: > >> To address the "offset2lib" ASLR weakness[1], this separates ET_DYN >> ASLR from mmap ASLR, as already done on s390. The architectures >> that are already randomizing mmap (arm, a

[PATCH v3 0/10] split ET_DYN ASLR from mmap ASLR

2015-03-03 Thread Kees Cook
To address the "offset2lib" ASLR weakness[1], this separates ET_DYN ASLR from mmap ASLR, as already done on s390. The architectures that are already randomizing mmap (arm, arm64, mips, powerpc, s390, and x86), have their various forms of arch_mmap_rnd() made available via the new CONFIG_ARCH_HAS_EL

[PATCH v3 08/10] s390: redefine randomize_et_dyn for ELF_ET_DYN_BASE

2015-03-03 Thread Kees Cook
In preparation for moving ET_DYN randomization into the ELF loader (which requires a static ELF_ET_DYN_BASE), this redefines s390's existing ET_DYN randomization in a call to arch_mmap_rnd(). This refactoring results in the same ET_DYN randomization on s390. Signed-off-by: Kees Cook ---

[PATCH v3 05/10] powerpc: standardize mmap_rnd() usage

2015-03-03 Thread Kees Cook
In preparation for splitting out ET_DYN ASLR, this refactors the use of mmap_rnd() to be used similarly to arm and x86. Signed-off-by: Kees Cook --- Can mmap ASLR be safely enabled in the legacy mmap case here? Other archs use "mm->mmap_base = TASK_UNMAPPED_BASE + random_factor&quo

[PATCH v3 01/10] arm: factor out mmap ASLR into mmap_rnd

2015-03-03 Thread Kees Cook
In preparation for splitting out ET_DYN ASLR, this moves the ASLR calculations for mmap on ARM into a separate routine, similar to x86. This also removes the redundant check of personality (PF_RANDOMIZE is already set before calling arch_pick_mmap_layout). Signed-off-by: Kees Cook --- arch/arm

[PATCH v3 02/10] x86: standardize mmap_rnd() usage

2015-03-03 Thread Kees Cook
In preparation for splitting out ET_DYN ASLR, this refactors the use of mmap_rnd() to be used similarly to arm, and extracts the checking of PF_RANDOMIZE. Signed-off-by: Kees Cook --- arch/x86/mm/mmap.c | 36 1 file changed, 20 insertions(+), 16 deletions

[PATCH v3 10/10] mm: fold arch_randomize_brk into ARCH_HAS_ELF_RANDOMIZE

2015-03-03 Thread Kees Cook
igned-off-by: Kees Cook --- arch/Kconfig | 1 + arch/arm/include/asm/elf.h | 4 arch/arm64/include/asm/elf.h | 4 arch/mips/include/asm/elf.h| 4 arch/powerpc/include/asm/elf.h | 4 arch/s390/include/asm/elf.h| 3 --- arch/x86/include/asm/

[PATCH v3 03/10] arm64: standardize mmap_rnd() usage

2015-03-03 Thread Kees Cook
declaration of an unused function. Signed-off-by: Kees Cook --- arch/arm64/include/asm/elf.h | 1 - arch/arm64/mm/mmap.c | 18 +++--- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/arch/arm64/include/asm/elf.h b/arch/arm64/include/asm/elf.h index 1f65be393139

[PATCH v3 07/10] mm: expose arch_mmap_rnd when available

2015-03-03 Thread Kees Cook
(). Additionally introduces CONFIG_ARCH_HAS_ELF_RANDOMIZE for describing this feature on architectures that support it (which is a superset of ARCH_BINFMT_ELF_RANDOMIZE_PIE, since s390 already supports a separated ET_DYN ASLR from mmap ASLR without the ARCH_BINFMT_ELF_RANDOMIZE_PIE logic). Signed-off-by: Kees

[PATCH v3 04/10] mips: extract logic for mmap_rnd()

2015-03-03 Thread Kees Cook
In preparation for splitting out ET_DYN ASLR, extract the mmap ASLR selection into a separate function. Signed-off-by: Kees Cook --- arch/mips/mm/mmap.c | 24 1 file changed, 16 insertions(+), 8 deletions(-) diff --git a/arch/mips/mm/mmap.c b/arch/mips/mm/mmap.c index

[PATCH v3 09/10] mm: split ET_DYN ASLR from mmap ASLR

2015-03-03 Thread Kees Cook
loader for handling ET_DYN ASLR in a separate region from mmap ASLR, as was already done on s390. Removes CONFIG_BINFMT_ELF_RANDOMIZE_PIE, which is no longer needed. Reported-by: Hector Marco-Gisbert Signed-off-by: Kees Cook --- arch/arm/Kconfig| 1 - arch/arm64/Kconfig |

[PATCH v3 06/10] s390: standardize mmap_rnd() usage

2015-03-03 Thread Kees Cook
In preparation for splitting out ET_DYN ASLR, this refactors the use of mmap_rnd() to be used similarly to arm and x86, and extracts the checking of PF_RANDOMIZE. Signed-off-by: Kees Cook --- arch/s390/mm/mmap.c | 34 +++--- 1 file changed, 23 insertions(+), 11

[PATCH v4 06/10] s390: standardize mmap_rnd() usage

2015-03-04 Thread Kees Cook
In preparation for splitting out ET_DYN ASLR, this refactors the use of mmap_rnd() to be used similarly to arm and x86, and extracts the checking of PF_RANDOMIZE. Signed-off-by: Kees Cook --- arch/s390/mm/mmap.c | 34 +++--- 1 file changed, 23 insertions(+), 11

[PATCH v4 02/10] x86: standardize mmap_rnd() usage

2015-03-04 Thread Kees Cook
In preparation for splitting out ET_DYN ASLR, this refactors the use of mmap_rnd() to be used similarly to arm, and extracts the checking of PF_RANDOMIZE. Signed-off-by: Kees Cook --- arch/x86/mm/mmap.c | 36 1 file changed, 20 insertions(+), 16 deletions

[PATCH v4 03/10] arm64: standardize mmap_rnd() usage

2015-03-04 Thread Kees Cook
declaration of an unused function. Signed-off-by: Kees Cook --- arch/arm64/include/asm/elf.h | 1 - arch/arm64/mm/mmap.c | 18 +++--- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/arch/arm64/include/asm/elf.h b/arch/arm64/include/asm/elf.h index 1f65be393139

[PATCH v4 04/10] mips: extract logic for mmap_rnd()

2015-03-04 Thread Kees Cook
In preparation for splitting out ET_DYN ASLR, extract the mmap ASLR selection into a separate function. Signed-off-by: Kees Cook --- It seems the entropy gets smaller as the PAGE_SIZE increases. Is this intentional? --- arch/mips/mm/mmap.c | 24 1 file changed, 16

[PATCH v4 10/10] mm: fold arch_randomize_brk into ARCH_HAS_ELF_RANDOMIZE

2015-03-04 Thread Kees Cook
igned-off-by: Kees Cook --- arch/Kconfig | 1 + arch/arm/include/asm/elf.h | 4 arch/arm64/include/asm/elf.h | 4 arch/mips/include/asm/elf.h| 4 arch/powerpc/include/asm/elf.h | 4 arch/s390/include/asm/elf.h| 3 --- arch/x86/include/asm/

[PATCH v4 05/10] powerpc: standardize mmap_rnd() usage

2015-03-04 Thread Kees Cook
In preparation for splitting out ET_DYN ASLR, this refactors the use of mmap_rnd() to be used similarly to arm and x86. Signed-off-by: Kees Cook Acked-by: Michael Ellerman --- Can mmap ASLR be safely enabled in the legacy mmap case here? Other archs use "mm->mmap_base = TASK_UNMAP

Re: [PATCH 4/5] mm: split ET_DYN ASLR from mmap ASLR

2015-03-04 Thread Kees Cook
On Tue, Mar 3, 2015 at 8:16 PM, Michael Ellerman wrote: > On Mon, 2015-03-02 at 16:19 -0800, Kees Cook wrote: >> This fixes the "offset2lib" weakness in ASLR for arm, arm64, mips, >> powerpc, and x86. The problem is that if there is a leak of ASLR from >> the execu

[PATCH v4 01/10] arm: factor out mmap ASLR into mmap_rnd

2015-03-04 Thread Kees Cook
In preparation for splitting out ET_DYN ASLR, this moves the ASLR calculations for mmap on ARM into a separate routine, similar to x86. This also removes the redundant check of personality (PF_RANDOMIZE is already set before calling arch_pick_mmap_layout). Signed-off-by: Kees Cook --- arch/arm

[PATCH v4 07/10] mm: expose arch_mmap_rnd when available

2015-03-04 Thread Kees Cook
(). Additionally introduces CONFIG_ARCH_HAS_ELF_RANDOMIZE for describing this feature on architectures that support it (which is a superset of ARCH_BINFMT_ELF_RANDOMIZE_PIE, since s390 already supports a separated ET_DYN ASLR from mmap ASLR without the ARCH_BINFMT_ELF_RANDOMIZE_PIE logic). Signed-off-by: Kees

[PATCH v4 0/10] split ET_DYN ASLR from mmap ASLR

2015-03-04 Thread Kees Cook
To address the "offset2lib" ASLR weakness[1], this separates ET_DYN ASLR from mmap ASLR, as already done on s390. The architectures that are already randomizing mmap (arm, arm64, mips, powerpc, s390, and x86), have their various forms of arch_mmap_rnd() made available via the new CONFIG_ARCH_HAS_EL

Re: [PATCH v4 0/10] split ET_DYN ASLR from mmap ASLR

2015-03-04 Thread Kees Cook
On Wed, Mar 4, 2015 at 1:54 PM, Ingo Molnar wrote: > > * Kees Cook wrote: > >> To address the "offset2lib" ASLR weakness[1], this separates ET_DYN >> ASLR from mmap ASLR, as already done on s390. The architectures >> that are already randomizing mmap (arm, a

[PATCH v4 09/10] mm: split ET_DYN ASLR from mmap ASLR

2015-03-04 Thread Kees Cook
ly created arch_mmap_rnd() into the ELF loader for handling ET_DYN ASLR in a separate region from mmap ASLR, as was already done on s390. Removes CONFIG_BINFMT_ELF_RANDOMIZE_PIE, which is no longer needed. Reported-by: Hector Marco-Gisbert Signed-off-by: Kees Cook --- arch/arm/Kconfig

[PATCH v4 08/10] s390: redefine randomize_et_dyn for ELF_ET_DYN_BASE

2015-03-04 Thread Kees Cook
In preparation for moving ET_DYN randomization into the ELF loader (which requires a static ELF_ET_DYN_BASE), this redefines s390's existing ET_DYN randomization in a call to arch_mmap_rnd(). This refactoring results in the same ET_DYN randomization on s390. Signed-off-by: Kees Cook ---

[PATCH v3 2/8] arm: use asm-generic for seccomp.h

2015-03-04 Thread Kees Cook
Switch to using the newly created asm-generic/seccomp.h for the seccomp strict mode syscall definitions. Definitions were identical. Signed-off-by: Kees Cook --- arch/arm/include/asm/Kbuild| 1 + arch/arm/include/asm/seccomp.h | 11 --- 2 files changed, 1 insertion(+), 11 deletions

[PATCH v3 3/8] microblaze: use asm-generic for seccomp.h

2015-03-04 Thread Kees Cook
identical. Signed-off-by: Kees Cook --- arch/microblaze/include/asm/seccomp.h | 8 +--- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/arch/microblaze/include/asm/seccomp.h b/arch/microblaze/include/asm/seccomp.h index 0d912758a0d7..204618a2ce84 100644 --- a/arch/microblaze/include

[PATCH v3 7/8] sparc: switch to using asm-generic for seccomp.h

2015-03-04 Thread Kees Cook
Switch to using the newly created asm-generic/seccomp.h for the seccomp strict mode syscall definitions. The obsolete sigreturn in COMPAT mode is retained as an override. Remaining definitions are identical. Also corrected missing #define for header reinclusion protection. Signed-off-by: Kees

[PATCH v3 4/8] mips: switch to using asm-generic for seccomp.h

2015-03-04 Thread Kees Cook
Switch to using the newly created asm-generic/seccomp.h for the seccomp strict mode syscall definitions. COMPAT definitions retain their overrides and the remaining definitions were identical. Signed-off-by: Kees Cook --- arch/mips/include/asm/seccomp.h | 7 ++- 1 file changed, 2 insertions

[PATCH v3 6/8] powerpc: switch to using asm-generic for seccomp.h

2015-03-04 Thread Kees Cook
Switch to using the newly created asm-generic/seccomp.h for the seccomp strict mode syscall definitions. The obsolete sigreturn in COMPAT mode is retained as an override. Remaining definitions are identical, though they incorrectly appeared in uapi, which has been corrected. Signed-off-by: Kees

[PATCH v3 1/8] seccomp: allow COMPAT sigreturn overrides

2015-03-04 Thread Kees Cook
Some architectures may need to override the compat sigreturn definition, as is already possible in the non-compat case. Signed-off-by: Kees Cook --- include/asm-generic/seccomp.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/include/asm-generic/seccomp.h b/include/asm-generic/seccomp.h

[PATCH v3 5/8] parisc: switch to using asm-generic for seccomp.h

2015-03-04 Thread Kees Cook
Switch to using the newly created asm-generic/seccomp.h for the seccomp strict mode syscall definitions. Definitions were identical. Signed-off-by: Kees Cook --- arch/parisc/include/asm/Kbuild| 1 + arch/parisc/include/asm/seccomp.h | 16 2 files changed, 1 insertion

[PATCH v3 0/8] switch to using asm-generic for seccomp.h

2015-03-04 Thread Kees Cook
Most architectures don't need to do much special for the strict-mode seccomp syscall entries. Remove the redundant headers and reduce the others. Signed-off-by: Kees Cook --- v3: - split patch series by architecture - fix up architectures that need sigreturn overrides (ingo) v2: - use K

[PATCH v3 8/8] x86: switch to using asm-generic for seccomp.h

2015-03-04 Thread Kees Cook
Switch to using the newly created asm-generic/seccomp.h for the seccomp strict mode syscall definitions. The obsolete sigreturn syscall override is retained in 32-bit mode, and the ia32 syscall overrides are used in the compat case. Remaining definitions were identical. Signed-off-by: Kees Cook

Re: [PATCH v3 0/10] split ET_DYN ASLR from mmap ASLR

2015-03-09 Thread Kees Cook
On Mon, Mar 9, 2015 at 9:19 AM, Russell King - ARM Linux wrote: > On Tue, Mar 03, 2015 at 06:10:15PM -0800, Kees Cook wrote: >> To address the "offset2lib" ASLR weakness[1], this separates ET_DYN >> ASLR from mmap ASLR, as already done on s390. The architectures >&g

Re: [PATCH v3 0/8] switch to using asm-generic for seccomp.h

2015-03-11 Thread Kees Cook
On Wed, Mar 4, 2015 at 5:27 PM, Kees Cook wrote: > Most architectures don't need to do much special for the strict-mode > seccomp syscall entries. Remove the redundant headers and reduce the > others. > > Signed-off-by: Kees Cook Hi Andrew, Just a quick ping: are you

Re: [PATCH v4 03/10] arm64: standardize mmap_rnd() usage

2015-03-17 Thread Kees Cook
On Tue, Mar 17, 2015 at 7:47 AM, Will Deacon wrote: > On Wed, Mar 04, 2015 at 09:10:47PM +0000, Kees Cook wrote: >> In preparation for splitting out ET_DYN ASLR, this refactors the use of >> mmap_rnd() to be used similarly to arm and x86. This additionally enables >> mma

Re: [PATCH 4/4] x86_64: enable text relative kallsyms for 64-bit targets

2016-01-20 Thread Kees Cook
400 KB for a KALLSYMS_ALL build, and about 100 KB > reduction in compressed size. (with CONFIG_RELOCATABLE=y) > > Signed-off-by: Ard Biesheuvel Tested-by: Kees Cook -Kees > --- > I tested this with my Ubuntu Wily box's config-4.2.0-23-generic, and > got the following resu

Re: [PATCH 1/4] kallsyms: add support for relative offsets in kallsyms address table

2016-01-20 Thread Kees Cook
racted from the runtime > address of _text to produce the actual address. Positive values are used as > they are found in the table. > > Support for the above is enabled by setting CONFIG_KALLSYMS_TEXT_RELATIVE. > > Signed-off-by: Ard Biesheuvel Reviewed-by: Kees Cook

Re: [PATCH v3] kallsyms: add support for relative offsets in kallsyms address table

2016-01-21 Thread Kees Cook
ubject to dynamic relocation when the build time and runtime > offsets of the kernel image are different"? IIUC, this means that the relocation work done after decompression now doesn't have to do relocation updates for all these values, which means a smaller relocation table

Re: [PATCH v4 0/3] kallsyms base relative series

2016-01-25 Thread Kees Cook
nges to this patch. > > Ard Biesheuvel (3): > x86: kallsyms: disable absolute percpu symbols on !SMP > kallsyms: don't overload absolute symbol type for percpu symbols > kallsyms: add support for relative offsets in kallsyms address table Still works for me! Reviewed-by:

[PATCH 1/3] lib: fix callers of strtobool to use char array

2016-01-28 Thread Kees Cook
Some callers of strtobool were passing a pointer to unterminated strings. This fixes the issue and consolidates some logic in cifs. Signed-off-by: Kees Cook Cc: Amitkumar Karwar Cc: Nishant Sarmukadam Cc: Kalle Valo Cc: Steve French Cc: linux-c...@vger.kernel.org --- drivers/net/wireless

[PATCH 0/3] lib: add "on" and "off" to strtobool

2016-01-28 Thread Kees Cook
This consolidates logic for handling "on"/"off" parsing for bools into the existing strtobool function. This requires making sure callers are passing NULL-terminated strings. -Kees ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://list

[PATCH 2/3] lib: add "on" and "off" to strtobool

2016-01-28 Thread Kees Cook
Several places in the kernel expect to use "on" and "off" for their boolean signifiers, so add them to strtobool. Signed-off-by: Kees Cook Cc: Rasmus Villemoes Cc: Daniel Borkmann --- lib/string.c | 24 +--- 1 file changed, 21 insertions(+), 3 deleti

[PATCH 3/3] param: convert some "on"/"off" users to strtobool

2016-01-28 Thread Kees Cook
This changes several users of manual "on"/"off" parsing to use strtobool. Signed-off-by: Kees Cook Cc: x...@kernel.org Cc: linuxppc-dev@lists.ozlabs.org Cc: linux-s...@vger.kernel.org --- arch/powerpc/kernel/rtasd.c | 10 +++--- arch/powerpc/platforms/p

Re: [PATCH 1/3] lib: fix callers of strtobool to use char array

2016-02-04 Thread Kees Cook
On Mon, Feb 1, 2016 at 5:17 AM, Andy Shevchenko wrote: > On Thu, Jan 28, 2016 at 4:17 PM, Kees Cook wrote: >> Some callers of strtobool were passing a pointer to unterminated strings. >> This fixes the issue and consolidates some logic in cifs. > > My comments below. >

[PATCH v2 3/4] lib: add "on"/"off" support to kstrtobool

2016-02-04 Thread Kees Cook
Add support for "on" and "off" when converting to boolean. Signed-off-by: Kees Cook --- lib/kstrtox.c | 14 ++ 1 file changed, 14 insertions(+) diff --git a/lib/kstrtox.c b/lib/kstrtox.c index e18f088704d7..09e83a19a96d 100644 --- a/lib/kstrtox.c +++ b/lib

[PATCH v2 4/4] param: convert some "on"/"off" users to strtobool

2016-02-04 Thread Kees Cook
This changes several users of manual "on"/"off" parsing to use strtobool. (Which means they will now parse y/n/1/0 meaningfully too.) Signed-off-by: Kees Cook Acked-by: Heiko Carstens Acked-by: Michael Ellerman Cc: x...@kernel.org Cc: linuxppc-dev@lists.oz

[PATCH v2 0/4] lib: add "on" and "off" to strtobool

2016-02-04 Thread Kees Cook
This consolidates logic for handling "on"/"off" parsing for bools into the strtobool function, by way of moving it into kstrtobool (with helpers), and updating various callers. arch/powerpc/kernel/rtasd.c|9 --- arch/powerpc/platforms/pseries/hotplug-cpu.c | 10 a

[PATCH v2 1/4] lib: move strtobool to kstrtobool

2016-02-04 Thread Kees Cook
Create the kstrtobool_from_user helper and moves strtobool logic into the new kstrtobool (matching all the other kstrto* functions). Provides an inline wrapper for existing strtobool callers. Signed-off-by: Kees Cook --- include/linux/kernel.h | 3 +++ include/linux/string.h | 6 +- lib

[PATCH v2 2/4] lib: update single-char callers of strtobool

2016-02-04 Thread Kees Cook
Some callers of strtobool were passing a pointer to unterminated strings. In preparation of adding multi-character processing to kstrtobool, update the callers to not pass single-character pointers, and switch to using the new kstrtobool_from_user helper where possible. Signed-off-by: Kees Cook

Re: [PATCH v2 1/4] lib: move strtobool to kstrtobool

2016-02-04 Thread Kees Cook
On Thu, Feb 4, 2016 at 2:43 PM, Andy Shevchenko wrote: > On Thu, Feb 4, 2016 at 11:00 PM, Kees Cook wrote: >> Create the kstrtobool_from_user helper and moves strtobool logic into >> the new kstrtobool (matching all the other kstrto* functions). Provides >> an inline

  1   2   3   4   5   6   7   8   >