Re: X avcs

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

 



On Jan 10, 2008 2:27 PM, Eamon Walsh <ewalsh@xxxxxxxxxxxxx> wrote:
> Glenn Faden wrote:
> > This is my first posting to this alias, so let me start by introducing
> > myself. I'm a Distinguished Engineer in the Solaris security
> > organization, and I'm the original architect for Sun's multilevel X11
> > server. I have worked on this problem since 1990, and have designed
> > three multilevel desktops (Open Look, CDE, and GNOME)
> >
> > One of the biggest challenges in adding fine-grained policy to the X11
> > server is to make the policy transparent to existing X11 clients.
> > Probably the most critical design decision we made was with respect to
> > root window resources. By default, all root window properties are
> > polyinstantiated by both label and uid. For SELinux, the equivalent
> > policy would be polyinstantiation by security context (not just MLS
> > label). An exception list of single-instance root-window properties is
> > enumerated in a policy file.
> > We have found that the list of exceptions is much smaller than the list
> > that should be polyinstantiated.
> >
>
> Hello.  I am not opposed to the idea of polyinstantiated properties.
> Although our approach has always been to attempt to fix applications to
> work within the secure environment first, it looks like this is a case
> where polyinstantiated is needed.
>
> My first thought on the implementation is that a value-return parameter
> could be added to the PROPERTY_ACCESS hook so that security modules can
> return the actual PropertyPtr object they wish to be used.  The
> FindProperty function would then have to be upgraded to a general lookup
> function similar to dixLookupResource(), dixLookupDrawable(), etc. and
> the property code would have to be refactored to use it everywhere when
> looking up a property.  The semantics of the various property requests,
> in particular RotateProperties, might make this a little more difficult.
>

Yep, rotate, list, anything that traverses the property list, is a
problem. It seems like it would be better to have a property list per
context. How about a dixLookupProperties function on window that would
return a linked list (PropertyPtr) of properties that it gets from an
xace hook call?

> SELinux has a security_compute_member() interface that is intended to
> return the security context of the appropriate object for use, and this
> can be used to determine which object to return.
>
> > With respect to the root window drawable, it is protected at the lowest
> > label, so it is never modified. Applications like Nautilus are
> > polyinstantiated, too, and render their own background windows.
> >
> > Our implementation is all open-sourced using the Xorg license. A summary
> > of the X11 security policy implemented by Solaris Trusted Extensions is
> > described in Chapter 6 of the Developer's Guide,
> > http://docs.sun.com/app/docs/doc/819-0869/6n391u3ru?a=view
> >
> > The configuration file for the polyinstantiation policy is described in
> > the TrustedExtensionsPolicy man page,
> > http://docs.sun.com/app/docs/doc/819-7307/trustedextensionspolicy-4?a=view
> >
> > The source code which implements this policy can be viewed in the
> > OpenSolaris browser using this link:
> > http://src.opensolaris.org/source/xref/fox/fox-gate/XW_NV/open-src/xserver/xorg/sun-src/tsol/
> >
> > The hooks to the XACE extension layer (also used by SELinux) are in the
> > file tsolCompat.c, which can be viewed here:
> > http://src.opensolaris.org/source/xref/fox/fox-gate/XW_NV/open-src/xserver/xorg/sun-src/Xext/tsolCompat.c
> >
> > Although Trusted Extensions and SELinux have significant differences
> > with respect to their security models, both systems attempt to implement
> > MAC policy in a manner that is transparent to applications. This should
> > apply to the desktop, as well. In general, the user experience running
> > GNOME on Solaris (with or without Trusted Extensions) or on Linux (with
> > or without SELinux) should be almost identical. So the underlying
> > policies enforced by the X11 server should follow the same general
> > principles.
> >
>
> Our long-term goal is to make applications aware of and responsive to
> the security environment, particularly applications that could
> themselves be multi-level such as e-mail, web, office.
>
> --
>
> Eamon Walsh <ewalsh@xxxxxxxxxxxxx>
> 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@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