Currently PR_SET_MM_* require the global CAP_SYS_RESOURCE, which is absent in a non-root userns.
Here are three groups of attributes: 1. PR_SET_MM_START_*_DATA, PR_SET_MM_*BRK, PR_SET_MM_*_STACK These attributes can affect resource limits, so here is no sense to restrict them if a proper limit is unlimited. 2. PR_MM_SET_EXE_FILE. We have not found other way than add a secure bit. This bit is set from a root userns and inhereted by children. Thanks to Pavel Emelyanov for the idea. 3. All other attributes don't affect other tasks or limits, so can be changed without special permissions. Andrey Vagin (3): prctl: reduce permissions to change boundaries of data, brk and stack capabilities: add a secure bit to allow changing a task exe link prctl: allow to use PR_MM_SET_* which affect only a current task include/uapi/linux/securebits.h | 9 ++++++++- kernel/sys.c | 21 +++++++++++++++++++-- kernel/user_namespace.c | 3 ++- security/commoncap.c | 7 +++++++ 4 files changed, 36 insertions(+), 4 deletions(-) Cc: Andrew Morton <a...@linux-foundation.org> Cc: Oleg Nesterov <o...@redhat.com> Cc: Al Viro <v...@zeniv.linux.org.uk> Cc: Kees Cook <keesc...@chromium.org> Cc: "Eric W. Biederman" <ebied...@xmission.com> Cc: Stephen Rothwell <s...@canb.auug.org.au> Cc: Pavel Emelyanov <xe...@parallels.com> Cc: Aditya Kali <adityak...@google.com> -- 1.8.5.3 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/