Extend user-space ASLR range
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest0 of 6 patches 0 repliesNew
Patches in v1 No applies recorded yet
None of the 6 patches the cover letter announces are in this archive.
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [cip-dev] [PATCH 4.4-cip 0/6] Extend user-space ASLR range
Hi,
Quoted 74 lines · Kees Cook
Quoted 60 lines · Jan Kiszka
Quoted 53 lines · Jan Kiszka
Quoted 42 lines · Ben Hutchings
This is a backport of changes in 4.5 to extend the range of Address Space Layout Randomisation for user-space processes. When enabled, this should make some user-space vulnerabilities harder to exploit, but it can also cause some applications to fail if they currently use a large proportion of the virtual address space.
The default ASLR range remains the same, but it can be changed through kernel config (
CONFIG_ARCH_MMAP_RND_BITS) or at run-time through sysctl (vm.mmap_rnd_bits). (For 32-bit compat tasks, the range is controlled throughCONFIG_ARCH_MMAP_RND_COMPAT_BITSand vm.mmap_rnd_compat_bits.)This includes support for arm, arm64 and x86 (32- and 64-bit). (arm64 is not currently supported by CIP, but it was easier to include it in the backport than to leave it out.)
For this and other backports, I'm looking for feedback like:
- Did I miss a follow-up fix or an earlier dependency?
- Does this cause a regression (other than as explained above)?
- Are you likely to use it?
- Are there related features you want in 4.4?Ben.
Daniel Cashman (6):
mm: mmap: add new /proc tunable formmap_baseASLR
arm: mm: supportARCH_MMAP_RND_BITS
arm64: mm: supportARCH_MMAP_RND_BITS
x86: mm: supportARCH_MMAP_RND_BITS
drivers: char: random: addget_random_long()
mm: ASLR: useget_random_long()Documentation/sysctl/vm.txt | 29 +++++++++++++++++ arch/Kconfig | 68 ++++++++++++++++++++++++++++++++++++++++ arch/arm/Kconfig | 9 ++++++ arch/arm/mm/mmap.c | 3 +- arch/arm64/Kconfig | 29 +++++++++++++++++ arch/arm64/mm/mmap.c | 8 +++-- arch/mips/mm/mmap.c | 4 +-- arch/powerpc/kernel/process.c | 4 +-- arch/powerpc/mm/mmap.c | 4 +-- arch/sparc/kernel/sys_sparc_64.c | 2 +- arch/x86/Kconfig | 16 ++++++++++Quoted 9 lines
arch/x86/mm/mmap.c | 12 +++---- drivers/char/random.c | 22 +++++++++++++ fs/binfmt_elf.c | 2 +- include/linux/mm.h | 11 +++++++ include/linux/random.h | 1 + kernel/sysctl.c | 22 +++++++++++++ mm/mmap.c | 12 +++++++ 18 files changed, 240 insertions(+), 18 deletions(-)Quoted 5 lines
Did you try to discuss the back-port topic with the KSPP folks or other key persons involved in these patches? In the ideal case, the authors can be CC'ed, do not get annoyed by "these crazy people doing legacy stuff", and may even do some reviews.
Quoted 4 lines
I've chatted with Elena over this last week, and she talked to Kees who pointed out that the Android people are also doing KSPP backports to 4.4 (thanks, folks!). I didn't check any details, just a heads-up to avoid duplicate work.
Hi!
The Android common kernel tree is visible here:
https://android.googlesource.com/kernel/common/
In the android-4.4 branch, the backport are these:
Quoted 8 lines
b471fcd FROMLIST: mm: ASLR: use
get_random_long()
9a3fe39 FROMLIST: drivers: char: random: addget_random_long()d51891f FROMLIST: x86: mm: supportARCH_MMAP_RND_BITS. e2240a1 FROMLIST: arm64: mm: supportARCH_MMAP_RND_BITS. 25106ff FROMLIST: arm: mm: supportARCH_MMAP_RND_BITS. d49d887 FROMLIST: mm: mmap: Add new /proc tunable formmap_baseASLR.Hopefully that helps!
It does, thanks. I sent Dmitry Shmidt a mail this morning asking for this. Thanks.
Quoted 12 lines
-Kees
Quoted 6 lines
Jan
--
Siemens AG, Corporate Technology, CT RDA ITP SES-DE Corporate Competence Center Embedded Linux
Signature · 3 lines
Agustin Benito Bethencourt Principal Consultant - FOSS at Codethink agustin.benito at codethink.co.uk