All of lore.kernel.org
 help / color / mirror / Atom feed
* determine least upper bound
@ 2010-04-13 16:56 michel m
  2010-04-13 20:21 ` Stephen Smalley
  0 siblings, 1 reply; 5+ messages in thread
From: michel m @ 2010-04-13 16:56 UTC (permalink / raw)
  To: selinux

[-- Attachment #1: Type: text/plain, Size: 178 bytes --]

dear all,
is there any way to determine least upper bound among security contexts?
that is,if I got two secuirty contexts, how can I determine their least
upper bound?

regards.

[-- Attachment #2: Type: text/html, Size: 191 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: determine least upper bound
  2010-04-13 16:56 determine least upper bound michel m
@ 2010-04-13 20:21 ` Stephen Smalley
  2010-05-05 15:42   ` Joe Nall
  0 siblings, 1 reply; 5+ messages in thread
From: Stephen Smalley @ 2010-04-13 20:21 UTC (permalink / raw)
  To: michel m; +Cc: selinux

On Tue, 2010-04-13 at 21:26 +0430, michel m wrote:
> dear all,
> is there any way to determine least upper bound among security
> contexts? that is,if I got two secuirty contexts, how can I determine
> their least upper bound?

I presume you want the least upper bound of two MLS levels?  It doesn't
make sense to talk about the least upper bound of two contexts, as the
values for the other fields of the context (user, role, type) are
unordered.

The first question is why do you need to compute a lub or how do you
intend to use the result.  We would prefer to abstract the desired
computation in a way that can be meaningful independent of policy model
and hide it behind a policy-neutral interface, similar to how we're
previously dealt with range subset tests by introducing the context
contains permission check. 

The logic for computing the lub would be provided as a function in the
security server, which is the only component that knows the ordering.
That can be done either as a libsepol interface if you want to compute
it based on a particular policy file or as a kernel security server
interface (via selinuxfs), depending on whether you want to always
compute it against the active kernel policy or against a specific policy
file.

-- 
Stephen Smalley
National Security Agency


--
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.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: determine least upper bound
  2010-04-13 20:21 ` Stephen Smalley
@ 2010-05-05 15:42   ` Joe Nall
  2010-05-05 18:01     ` Andy Warner
  2010-05-07 13:40     ` Stephen Smalley
  0 siblings, 2 replies; 5+ messages in thread
From: Joe Nall @ 2010-05-05 15:42 UTC (permalink / raw)
  To: Stephen Smalley; +Cc: michel m, selinux


On Apr 13, 2010, at 3:21 PM, Stephen Smalley wrote:

> On Tue, 2010-04-13 at 21:26 +0430, michel m wrote:
>> dear all,
>> is there any way to determine least upper bound among security
>> contexts? that is,if I got two secuirty contexts, how can I determine
>> their least upper bound?
> 
> I presume you want the least upper bound of two MLS levels?  It doesn't
> make sense to talk about the least upper bound of two contexts, as the
> values for the other fields of the context (user, role, type) are
> unordered.
> 
> The first question is why do you need to compute a lub or how do you
> intend to use the result.

Sorry for responding so late. We do this to compute a shared level
to communicate with a community of users.

We have application level bit twiddling code to do lub computation.
We then pass the result through mcstrans to see if the resulting
raw context converts. The code isn't really portable outside our
code base and assumes all kinds of things about the structure of
the range portion of the context.

joe

>  We would prefer to abstract the desired
> computation in a way that can be meaningful independent of policy model
> and hide it behind a policy-neutral interface, similar to how we're
> previously dealt with range subset tests by introducing the context
> contains permission check. 
> 
> The logic for computing the lub would be provided as a function in the
> security server, which is the only component that knows the ordering.
> That can be done either as a libsepol interface if you want to compute
> it based on a particular policy file or as a kernel security server
> interface (via selinuxfs), depending on whether you want to always
> compute it against the active kernel policy or against a specific policy
> file.
> 
> -- 
> Stephen Smalley
> National Security Agency
> 
> 
> --
> 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.



--
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.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: determine least upper bound
  2010-05-05 15:42   ` Joe Nall
@ 2010-05-05 18:01     ` Andy Warner
  2010-05-07 13:40     ` Stephen Smalley
  1 sibling, 0 replies; 5+ messages in thread
From: Andy Warner @ 2010-05-05 18:01 UTC (permalink / raw)
  To: Joe Nall; +Cc: Stephen Smalley, michel m, selinux

[-- Attachment #1: Type: text/plain, Size: 2762 bytes --]

As an FYI, Trusted RUBIX DBMS also needs to compute the LUB/GLB as a 
feature of our database. We currently do this with custom code that 
makes assumptions (that it is BL MLS) about the level component of the 
context. As this is a directly accessible feature of our database (via 
modified SQL), there is no way for us to abstract it away.

On 5/5/2010 4:42 PM, Joe Nall wrote:
> On Apr 13, 2010, at 3:21 PM, Stephen Smalley wrote:
>
>    
>> On Tue, 2010-04-13 at 21:26 +0430, michel m wrote:
>>      
>>> dear all,
>>> is there any way to determine least upper bound among security
>>> contexts? that is,if I got two secuirty contexts, how can I determine
>>> their least upper bound?
>>>        
>> I presume you want the least upper bound of two MLS levels?  It doesn't
>> make sense to talk about the least upper bound of two contexts, as the
>> values for the other fields of the context (user, role, type) are
>> unordered.
>>
>> The first question is why do you need to compute a lub or how do you
>> intend to use the result.
>>      
> Sorry for responding so late. We do this to compute a shared level
> to communicate with a community of users.
>
> We have application level bit twiddling code to do lub computation.
> We then pass the result through mcstrans to see if the resulting
> raw context converts. The code isn't really portable outside our
> code base and assumes all kinds of things about the structure of
> the range portion of the context.
>
> joe
>
>    
>>   We would prefer to abstract the desired
>> computation in a way that can be meaningful independent of policy model
>> and hide it behind a policy-neutral interface, similar to how we're
>> previously dealt with range subset tests by introducing the context
>> contains permission check.
>>
>> The logic for computing the lub would be provided as a function in the
>> security server, which is the only component that knows the ordering.
>> That can be done either as a libsepol interface if you want to compute
>> it based on a particular policy file or as a kernel security server
>> interface (via selinuxfs), depending on whether you want to always
>> compute it against the active kernel policy or against a specific policy
>> file.
>>
>> -- 
>> Stephen Smalley
>> National Security Agency
>>
>>
>> --
>> 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.
>>      
>
>
> --
> 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.
>    

[-- Attachment #2: Type: text/html, Size: 3413 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: determine least upper bound
  2010-05-05 15:42   ` Joe Nall
  2010-05-05 18:01     ` Andy Warner
@ 2010-05-07 13:40     ` Stephen Smalley
  1 sibling, 0 replies; 5+ messages in thread
From: Stephen Smalley @ 2010-05-07 13:40 UTC (permalink / raw)
  To: Joe Nall; +Cc: michel m, selinux

On Wed, 2010-05-05 at 10:42 -0500, Joe Nall wrote:
> On Apr 13, 2010, at 3:21 PM, Stephen Smalley wrote:
> 
> > On Tue, 2010-04-13 at 21:26 +0430, michel m wrote:
> >> dear all,
> >> is there any way to determine least upper bound among security
> >> contexts? that is,if I got two secuirty contexts, how can I determine
> >> their least upper bound?
> > 
> > I presume you want the least upper bound of two MLS levels?  It doesn't
> > make sense to talk about the least upper bound of two contexts, as the
> > values for the other fields of the context (user, role, type) are
> > unordered.
> > 
> > The first question is why do you need to compute a lub or how do you
> > intend to use the result.
> 
> Sorry for responding so late. We do this to compute a shared level
> to communicate with a community of users.
> 
> We have application level bit twiddling code to do lub computation.
> We then pass the result through mcstrans to see if the resulting
> raw context converts. The code isn't really portable outside our
> code base and assumes all kinds of things about the structure of
> the range portion of the context.

Yes, so we'd prefer to see that implemented as a libsepol function or
selinuxfs interface.

-- 
Stephen Smalley
National Security Agency


--
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.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2010-05-07 13:40 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-04-13 16:56 determine least upper bound michel m
2010-04-13 20:21 ` Stephen Smalley
2010-05-05 15:42   ` Joe Nall
2010-05-05 18:01     ` Andy Warner
2010-05-07 13:40     ` Stephen Smalley

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.