All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Moore <paul.moore@hp.com>
To: Eric Paris <eparis@redhat.com>
Cc: Stephen Smalley <sds@tycho.nsa.gov>,
	Daniel J Walsh <dwalsh@redhat.com>,
	"Daniel P. Berrange" <berrange@redhat.com>,
	SELinux <selinux@tycho.nsa.gov>
Subject: Re: svirt on MLS has strange AVC.
Date: Fri, 26 Mar 2010 15:54:23 -0400	[thread overview]
Message-ID: <201003261554.23667.paul.moore@hp.com> (raw)
In-Reply-To: <1269612002.2980.69.camel@dhcp231-113.rdu.redhat.com>

On Friday 26 March 2010 10:00:02 am Eric Paris wrote:
> On Thu, 2010-03-25 at 18:06 -0400, Paul Moore wrote:
> > I thought QEMU/KVM was creating the socket and libvirtd was trying to
> > connect to it?  If this is the case wouldn't it be a random virtual
> > machine ...
> > 
> > 	svirt_t:s3:c156
> > 
> > ... and a not-so-random libvirtd ...
> > 
> > 	libvirtd_t:s0-s15:c0-c1023
> > 
> > ... trying to talk over a UNIX socket which is labeled svirt_t:s0 (on the
> > QEMU/KVM side) and libvirtd_t:s0-s15:c0-c1023 (on the libvirtd side)?  I
> > agree, that could be a little wierd on the QEMU/KVM side, but if we use
> > the full MLS range for the child socket we end up with
> > svirt:s0-s15:c0-c1023 on the QEMU/KVM side and
> > libvirtd_t:s0-s15:c0-c1023 on the libvirtd side; you'll probably still
> > need some MLS overrides on the QEMU/KVM side but you could at least do
> > something using the range.
> 
> Yes, that is exactly what is happening.  I find the label
> svirt:s0-s15:c0-c1023 abhorrent, but that's neither here nor there.  MLS
> as an 'other' class citizen in the label makes me .... unhappy.

Me too.  I work hard to deal in "labels" whenever possible, sadly (or 
unhappily) this isn't always possible.

> So today we have:
> 
> QEMU/KVM process: svirt_t:s3:c156
> QEMU/KVM socket:  svirt_t:s0-s15:c0-c1023

Well, if it is working correctly, I think we established that there were some 
bugs ... but honestly at this point I've forgotten, I need to re-read what we 
wrote ...

> sds suggested we only copy the low part of the MLS context to the server
> label, which gives us:
> 
> QEMU/KVM process: svirt_t:s3:c156
> QEMU/KVM socket:  svirt_t:s0:c0
> 
> which I don't think is any better as we still have to needlessly use MLS
> overrides which pretty much destroys the whole usefulness of vm
> isolation here.

Well, either way you are going to need to use some MLS override attributes, 
but one of the nice things about SELinux is you can restrict those overrides 
to specific object classes and permissions, e.g. you can create MLS overrides 
which only target specific UNIX domain socket operations.  It really isn't as 
bleak as it sounds; vm isolation is not lost.

> This is why I suggested an mls_copy_subset function so things could
> 'work' if you have ranged objects on either the client or server side.
> It only 'works' today if the ranged object is on the server side.....

Look at the MLS constraints, yes I know they are scary, but they are quite 
flexible and I believe they will allow you to do what you want.

-- 
paul moore
linux @ hp

--
This message was distributed to subscribers of the selinux mailing list.
If you no longer wish to subscribe, send mail to majordomo@tycho.nsa.gov with
the words "unsubscribe selinux" without quotes as the message.

  parent reply	other threads:[~2010-03-26 19:54 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-22 21:44 svirt on MLS has strange AVC Daniel J Walsh
2010-03-22 23:47 ` Eric Paris
2010-03-23 11:35   ` Daniel J Walsh
2010-03-23 11:44     ` Daniel P. Berrange
2010-03-25  2:42       ` Eric Paris
2010-03-25  9:45         ` Daniel P. Berrange
2010-03-25 14:02         ` Stephen Smalley
2010-03-25 16:49           ` Paul Moore
2010-03-25 18:00             ` Daniel J Walsh
2010-03-25 18:17               ` Stephen Smalley
2010-03-25 19:02                 ` Eric Paris
2010-03-25 22:06                   ` Paul Moore
2010-03-25 22:09                     ` Daniel P. Berrange
     [not found]                     ` <1269612002.2980.69.camel@dhcp231-113.rdu.redhat.com>
2010-03-26 19:54                       ` Paul Moore [this message]
2010-03-29 17:06                     ` Eric Paris
2010-03-25 18:06             ` Stephen Smalley
2010-03-25 18:11               ` Daniel J Walsh
2010-03-25 18:19                 ` Stephen Smalley
2010-03-25 18:23                 ` Eric Paris
2010-03-25 18:34                   ` Stephen Smalley
2010-03-25 18:45                     ` Eric Paris
2010-03-25 21:36                       ` Paul Moore
     [not found]                         ` <1269610923.2980.51.camel@dhcp231-113.rdu.redhat.com>
2010-03-26 19:47                           ` Paul Moore
2010-03-29 18:29                             ` Eric Paris
2010-03-29 17:05                         ` Eric Paris
2010-03-25 18:29                 ` Eric Paris
     [not found] ` <201003291600.06024.paul.moore@hp.com>
     [not found]   ` <4BB20E8D.7030207@redhat.com>
2010-03-30 18:07     ` Paul Moore
2010-03-30 18:20       ` Eric Paris
2010-03-30 18:23         ` Daniel J Walsh
2010-03-30 18:39           ` Paul Moore
2010-03-30 18:56             ` Paul Moore
2010-03-30 19:13               ` Daniel J Walsh
2010-03-30 19:22                 ` Paul Moore
2010-03-30 19:31                   ` Daniel J Walsh
2010-03-30 19:38                     ` Stephen Smalley
     [not found]   ` <1269959533.2941.9.camel@dhcp235-240.rdu.redhat.com>
2010-03-30 18:23     ` Paul Moore
2010-03-30 19:20   ` Stephen Smalley
2010-03-30 20:17     ` Eric Paris
2010-03-30 20:23       ` Stephen Smalley
2010-03-30 20:30       ` Paul Moore

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=201003261554.23667.paul.moore@hp.com \
    --to=paul.moore@hp.com \
    --cc=berrange@redhat.com \
    --cc=dwalsh@redhat.com \
    --cc=eparis@redhat.com \
    --cc=sds@tycho.nsa.gov \
    --cc=selinux@tycho.nsa.gov \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.