lkml.org 
[lkml]   [2012]   [Dec]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 3/4] userns: Add a more complete capability subset test to commit_creds
Quoting Eric W. Biederman (ebiederm@xmission.com):
> "Serge E. Hallyn" <serge@hallyn.com> writes:
>
> > Quoting Eric W. Biederman (ebiederm@xmission.com):
> >>
> >> When unsharing a user namespace we reduce our credentials to just what
> >> can be done in that user namespace. This is a subset of the credentials
> >> we previously had. Teach commit_creds to recognize this is a subset
> >> of the credentials we have had before and don't clear the dumpability flag.
> >>
> >> This allows an unprivileged program to do:
> >> unshare(CLONE_NEWUSER);
> >> fd = open("/proc/self/uid_map", O_RDWR);
> >>
> >> Where previously opening the uid_map writable would fail because
> >> the the task had been made non-dumpable.
> >>
> >> Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
> >
> > Acked-by: Serge Hallyn <serge.hallyn@canonical.com>
> >
> >> ---
> >> kernel/cred.c | 26 +++++++++++++++++++++++++-
> >> 1 files changed, 25 insertions(+), 1 deletions(-)
> >>
> >> diff --git a/kernel/cred.c b/kernel/cred.c
> >> index 48cea3d..993a7ea41 100644
> >> --- a/kernel/cred.c
> >> +++ b/kernel/cred.c
> >> @@ -455,6 +455,30 @@ error_put:
> >> return ret;
> >> }
> >>
> >
> > Do you think we need to warn that this can only be used for
> > commit_creds? (i.e. if someone tried ot use this in some
> > other context, the 'creds are subset of target ns is a child
> > of current_ns' assumption would be wrong)
>
> This function should be a general test valid at any time.
>
> Except that I forgot the bit of the test that asks is the original cred
> the owner of the subset user namespace.

Ok, with that change that'll be fine :)

> I will respin this patch.

Cool, thanks.


\
 
 \ /
  Last update: 2012-12-15 02:21    [W:0.117 / U:0.120 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site