|
Message-Id: <20190514143537.10435-1-glider@google.com> Date: Tue, 14 May 2019 16:35:33 +0200 From: Alexander Potapenko <glider@...gle.com> To: akpm@...ux-foundation.org, cl@...ux.com, keescook@...omium.org Cc: kernel-hardening@...ts.openwall.com Subject: [PATCH v2 0/4] RFC: add init_on_alloc/init_on_free boot options Provide init_on_alloc and init_on_free boot options. These are aimed at preventing possible information leaks and making the control-flow bugs that depend on uninitialized values more deterministic. Enabling either of the options guarantees that the memory returned by the page allocator and SL[AOU]B is initialized with zeroes. Enabling init_on_free also guarantees that pages and heap objects are initialized right after they're freed, so it won't be possible to access stale data by using a dangling pointer. Alexander Potapenko (4): mm: security: introduce init_on_alloc=1 and init_on_free=1 boot options lib: introduce test_meminit module gfp: mm: introduce __GFP_NO_AUTOINIT net: apply __GFP_NO_AUTOINIT to AF_UNIX sk_buff allocations .../admin-guide/kernel-parameters.txt | 8 + drivers/infiniband/core/uverbs_ioctl.c | 2 +- include/linux/gfp.h | 13 +- include/linux/mm.h | 22 ++ include/net/sock.h | 5 + kernel/kexec_core.c | 5 +- lib/Kconfig.debug | 8 + lib/Makefile | 1 + lib/test_meminit.c | 205 ++++++++++++++++++ mm/dmapool.c | 2 +- mm/page_alloc.c | 68 +++++- mm/slab.c | 18 +- mm/slab.h | 16 ++ mm/slob.c | 23 +- mm/slub.c | 28 ++- net/core/sock.c | 31 ++- net/unix/af_unix.c | 13 +- security/Kconfig.hardening | 14 ++ 18 files changed, 443 insertions(+), 39 deletions(-) create mode 100644 lib/test_meminit.c -- 2.21.0.1020.gf2820cf01a-goog
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.