Re: Not quite MLS.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 2009-08-17 at 07:40 -0400, Stephen Smalley wrote:
> On Fri, 2009-08-14 at 17:30 -0400, rob myers wrote:
> > I would like to create a login that has access to one category at the
> > highest sensitivity level, but in another category only has access at a
> > lower sensitivity level.  For example, on a system where SystemHigh is
> > s0-s3:c0.c3, one login could be defined as something similar to:
> > s0-s1:c0.c3, s2:c2.c3, s3:c3, while another login could be defined as
> > s0-s2:c0.c3, s3:c0.c2 .
> > 
> > Am I correct that MLS policy cannot support this scenario?
> > 
> > Is this possible under any old, current, or developmental SELinux
> > policy?
> > 
> > Would it be possible to write such a policy with the existing SELinux
> > user/kernel land?
> > 
> > Thanks for any pointers,
> 
> I'm not clear on what you are trying to achieve

Let me try and be more clear, or at least state things in a different
way.

I want to build a system that stores category 0 (c0) data at each
sensitivity level (s0-s3).  The system also stores category 1 (c1),
category 2 (c2), and category 3 (c3) data at each sensitivity level
(s0-s3).  Therefore the data on the system falls into the s0-s3:c0.c3
range.

Next, I want to add users to this system.  UserA has access to all
categories at the s0 and s1 levels.  At the s2 level UserA has access to
categories 2 and 3.  At the s3 level UserA has access to category 3
data.  UserA's access to data could be thought of as this set of
{ s0-s1:c0.c3, s2:c2.c3, s3:c3 } ranges.  As you can see, UserA should
not be able to read category 0 or 1 data at the s2 level even though
UserA can read category 3 data at the s3 range.

Similarly UserB has access to all categories at the s0, s1 and s2
sensitivity levels.  At the s3 level UserB has access to categories 0,
1, and 2.  UserB's access to data could be thought of as this set of
{ s0-s2:c0.c3, s3:c0.c2 } ranges.  As you can see, UserB should not be
able to read category 3 data at the s3 level even though UserB has
access to category 3 data at lower sensitivity levels and has access to
other sensitivity level 3 data.

Perhaps a better way to express this is on a per category per user
basis:

UserA's access matrix:

category, sl0, sl1, sl2, sl3
       0, yes, yes, no , no 
       1, yes, yes, no , no 
       2, yes, yes, yes, no 
       3, yes, yes, yes, yes 

UserB's access matrix:

category, sl0, sl1, sl2, sl3
       0, yes, yes, yes, yes
       1, yes, yes, yes, yes
       2, yes, yes, yes, yes
       3, yes, yes, yes, no 


I believe the difference between SELinux with MLS policy and what I am
trying to build is that I want higher sensitivity levels to dominate
lower sensitivity levels only on a per category basis.

For example, it is my understanding that under MLS UserB must have
sensitivity level 3 access to category 3 because UserB has access to
sensitivity level 3 access to other categories.  Another possibility
under MLS would be to remove UserB's access to category 3 for all
sensitivities.  Neither of these is what I want the system to do.

Is that more clear about what my goals are?

> At present, the kernel policy configuration specifies a default level
> and a (single) range for each SELinux user identity defined in the
> policy.  It also defines what categories can be associated with what
> sensitivities, so that you could specify that e.g. c3 can only ever be
> associated with s3, although the current refpolicy merely automatically
> generates a list of all categories for each sensitivity.

Ok, thanks for pointing that out.

> The userland configuration specifies a SELinux user and a (single) range
> for each Linux user / login.  That range has to be a subset of the one
> authorized for the SELinux user.  That lets you specify subranges for
> individual Linux users without having to define each of them within the
> kernel policy.

Perhaps what I'm describing is multiple ranges for each user / login.
Could that be achieved with user space modifications only?

Thanks for reading this far,

rob.


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

[Index of Archives]     [Selinux Refpolicy]     [Linux SGX]     [Fedora Users]     [Fedora Desktop]     [Yosemite Photos]     [Yosemite Camping]     [Yosemite Campsites]     [KDE Users]     [Gnome Users]

  Powered by Linux