Re: [PATCH 2/2] user namespaces: require cap_set{ug}id for CLONE_NEWUSER

Serge E. Hallyn
2008-12-05T16:46:22Z

Quoting Eric W. Biederman (ebiederm@xmission.com):
> "Serge E. Hallyn" <serue@us.ibm.com> writes:
>
> > While ideally CLONE_NEWUSER will eventually require no
> > privilege, the required permission checks are currently
> > not there. As a result, CLONE_NEWUSER has the same effect
> > as a setuid(0)+setgroups(1,"0"). While we already require
> > CAP_SYS_ADMIN, requiring CAP_SETUID and CAP_SETGID seems
> > appropriate.
>
> This looks reasonable. For the short term we will need a greater
> set of caps to be able to do all of the interesting things.

Could you ack the patch? Stephen explicitly doesn't want patches
in linux-next which haven't been acked, and security-next feeds
into linux-next, so I don't want to ask James to take the patch
without an ack :)

> Personally the user namespace only becomes interesting when we
> start to be able to move in the other direction and remove the
> set of capabilities requires to create it.
>
> Eric

Agreed. Now the thing is I don't think we need full userns
support to get there. We just need the targeted capabilities
and the basic dummy fs support - that is, init_user_ns owns
all vfsmounts, and anyone not in init_user_ns only gets
user other access to files under those mounts.

Of course complete support for targeted caps will in itself
be a huge effort :)

So my roadmap is: next address the per-user keyring, then
the targeted caps.

-serge