[refpolicy] MLS unix socket sendto/connectto
chanson at TrustedCS.com
chanson at TrustedCS.com
Fri Nov 5 08:53:39 CDT 2010
Thanks, Chris for the clarification. I tend to agree that we should have
something different as we don't want this on a process per your proc pid
example. Let me think about this a little bit.
-Chad
> -----Original Message-----
> From: Christopher J. PeBenito [mailto:cpebenito at tresys.com]
> Sent: Friday, November 05, 2010 8:44 AM
> To: Paul Moore
> Cc: Stephen Smalley; Daniel J Walsh; Chad Hanson;
> refpolicy at oss.tresys.com
> Subject: Re: MLS unix socket sendto/connectto
>
> On 11/05/10 08:39, Paul Moore wrote:
> > On Fri, 2010-11-05 at 08:04 -0400, Christopher J. PeBenito wrote:
> >> On 11/04/10 10:46, Paul Moore wrote:
> >>> On Thu, 2010-11-04 at 09:19 -0400, Christopher J. PeBenito wrote:
> >>>> The current MLS constraints for unix socket sendto/connectto are:
> >>>>
> >>>> # UNIX domain socket ops
> >>>> mlsconstrain unix_stream_socket connectto
> >>>> (( l1 eq l2 ) or
> >>>> (( t1 == mlsnetwriteranged ) and ( l1 dom l2 ) and ( l1
> >>>> domby
> >>>> h2 )) or
> >>>> (( t1 == mlsnetwritetoclr ) and ( h1 dom l2 ) and ( l1
> >>>> domby l2
> >>>> )) or
> >>>> ( t1 == mlsnetwrite ) or
> >>>> ( t2 == mlstrustedobject ));
> >>>>
> >>>> mlsconstrain unix_dgram_socket sendto
> >>>> (( l1 eq l2 ) or
> >>>> (( t1 == mlsnetwriteranged ) and ( l1 dom l2 ) and ( l1
> >>>> domby
> >>>> h2 )) or
> >>>> (( t1 == mlsnetwritetoclr ) and ( h1 dom l2 ) and ( l1
> >>>> domby l2
> >>>> )) or
> >>>> ( t1 == mlsnetwrite ) or
> >>>> ( t2 == mlstrustedobject ));
> >>>>
> >>>> These were added earlier this year (except the last t2 exception
> >>>> which was added more recently). My concern is with the
> mlstrustedobject part.
> >>>> We need an exception like this to handle domains such
> as syslog,
> >>>> so they can receive messages from any level. But I
> think we need a
> >>>> different attribute since domain types are used for the process
> >>>> itself and also it's /proc/pid files, so by making the domain a
> >>>> trusted object, the /proc/pid become trusted objects
> too. Opinions?
> >>>
> >>> Is there a reason why we don't have transition rules for
> things like
> >>> sockets? Granted, they are probably only useful for unix
> sockets,
> >>> but I think they could come in handy for things like this
> where we
> >>> don't want to start messing around with adding setsockcreatecon()
> >>> calls to the code.
> >>
> >> I don't understand; how would a transition help here?
> >
> > I was thinking that a type transition could be used when
> /dev/log was
> > created so that it could be created with a new type which we could
> > assign to the mlstrustedobject attribute.
>
> Wrong check. The check on /dev/log is a sock_file check (eg
> foo_t to devlog_t). The above constraints are for foo_t to
> syslogd_t, as an example.
>
>
>
> --
> Chris PeBenito
> Tresys Technology, LLC
> www.tresys.com | oss.tresys.com
>
More information about the refpolicy
mailing list