mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Serge Hallyn <serge.hallyn@ubuntu.com>
To: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: "Theodore Ts'o" <tytso@mit.edu>,
	Andy Lutomirski <luto@amacapital.net>, Marian Marinov <mm@1h.com>,
	containers@lists.linux-foundation.org,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	lxc-devel <lxc-devel@lists.sourceforge.net>
Subject: Re: ioctl CAP_LINUX_IMMUTABLE is checked in the wrong namespace
Date: Wed, 30 Apr 2014 13:33:48 +0000	[thread overview]
Message-ID: <20140430133348.GB29994@ubuntumail> (raw)
In-Reply-To: <87ha5bntqm.fsf@x220.int.ebiederm.org>

Quoting Eric W. Biederman (ebiederm@xmission.com):
> Theodore Ts'o <tytso@mit.edu> writes:
> 
> > On Wed, Apr 30, 2014 at 12:16:41AM +0000, Serge Hallyn wrote:
> >> I forget the details, but there was another case where I wanted to
> >> have the userns which 'owns' the whole fs available.  I guess we'd
> >> have to check against that instead of using inode_capable.
> >
> > Yes, that sounds right.
> >
> > And *please* tell me that that under no circumstances can anyone other
> > than root@init_user_ns is allowed to use mknod....
> 
> Nope.  mknod not allowed.  capable(CAP_MKNOD) is required is required
> and I can't see any reason to change that.
> 
> As a rule of thumb, the only additional actions allowed in a user
> namespace above and beyond what an ordinary unpriviliged user would be
> allowed to do are those things which we only don't allow because they
> could confuse a setuid root executable.
> 
> 
> If we ever allow the creation of immutable files by unprivileged users
> those files would at least have to be kept completely separate from the
> files the global root encounters (aka a disjoint mount namespace).
> 
> I do not currently see a path to safely using immutable files with just
> user namespace root permission.

It's very far off, but I think the path is:

1. at first mount of a blockdev, note the cred (or just userns) which
mounted it
2. work on auditing superblock readers so we can start allowing some
blockdev mounts in user namespaces :)
3. check for privilege against the userns owning a superblock

-serge

      reply	other threads:[~2014-04-30 13:33 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-29 13:49 Marian Marinov
2014-04-29 18:35 ` Theodore Ts'o
2014-04-29 18:52   ` Serge Hallyn
2014-04-29 21:49     ` Marian Marinov
2014-04-29 22:02       ` Serge Hallyn
2014-04-29 22:24         ` Marian Marinov
2014-04-29 22:29           ` Serge Hallyn
2014-04-29 22:45             ` Andy Lutomirski
2014-04-29 23:06               ` Theodore Ts'o
2014-04-29 23:07                 ` Andy Lutomirski
2014-04-29 23:20               ` Marian Marinov
2014-04-29 23:22                 ` Andy Lutomirski
2014-04-29 23:47                   ` Stéphane Graber
2014-04-29 23:51                     ` Andy Lutomirski
2014-04-30  0:01                       ` Stéphane Graber
2014-04-30  0:10                         ` Marian Marinov
2014-04-30  0:12                           ` Andy Lutomirski
2014-04-30  0:11                         ` Andy Lutomirski
2014-04-30  0:21                           ` Serge Hallyn
2014-04-30  0:23                             ` Andy Lutomirski
2014-04-30  0:44                               ` Serge Hallyn
2014-04-30  1:03                                 ` Andy Lutomirski
2014-04-30  0:16               ` Serge Hallyn
2014-04-30  0:32                 ` Theodore Ts'o
2014-04-30  0:33                   ` Andy Lutomirski
2014-04-30  0:40                   ` Serge Hallyn
2014-04-30  7:48                   ` Eric W. Biederman
2014-04-30 13:33                     ` Serge Hallyn [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140430133348.GB29994@ubuntumail \
    --to=serge.hallyn@ubuntu.com \
    --cc=containers@lists.linux-foundation.org \
    --cc=ebiederm@xmission.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luto@amacapital.net \
    --cc=lxc-devel@lists.sourceforge.net \
    --cc=mm@1h.com \
    --cc=tytso@mit.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®