From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kees Cook Subject: [PATCH v4 0/10] split ET_DYN ASLR from mmap ASLR Date: Wed, 4 Mar 2015 13:10:44 -0800 Message-ID: <1425503454-7531-1-git-send-email-keescook@chromium.org> Cc: Kees Cook , Ingo Molnar , Michael Ellerman , Hector Marco-Gisbert , Ismael Ripoll , Russell King , Catalin Marinas , Will Deacon , Ralf Baechle , Benjamin Herrenschmidt , Paul Mackerras , Martin Schwidefsky , Heiko Carstens , linux390@de.ibm.com, x86@kernel.org, Alexander Viro , Andy Lutomirski , Oleg Nesterov , "David A. Long" , Andrey Ryabinin , Arun Chandran To: akpm@linux-foundation.org Return-path: Sender: linux-mips-bounce@linux-mips.org Errors-to: linux-mips-bounce@linux-mips.org List-help: List-unsubscribe: List-software: Ecartis version 1.0.0 List-subscribe: List-owner: List-post: List-archive: List-Id: linux-fsdevel.vger.kernel.org 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_ELF_RANDOMIZE. For these architectures, arch_randomize_brk() is collapsed as well. This is an alternative to the solutions in: https://lkml.org/lkml/2015/2/23/442 I've been able to test x86 and arm, and the buildbot (so far) seems happy with building the rest. Thanks! -Kees [1] http://cybersecurity.upv.es/attacks/offset2lib/offset2lib.html v4: - added Ack on powerpc (mpe) - fixed mmap_base argument convention to be the same on all archs - corrected paste-o in mips variable names (buildbot) - clarified ET_DYN vs mmap ASLR regions in 9/10 (mpe) v3: - split change on a per-arch basis for easier review - moved PF_RANDOMIZE check out of per-arch code (ingo) v2: - verbosified the commit logs, especially 4/5 (akpm)