Re: [refpolicy] [PATCH] refpolicy: Add missing network related MLSconstraints

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

 



Paul Moore wrote:
On Friday 13 February 2009 02:36:17 pm chanson@xxxxxxxxxxxxx wrote:
Traditionally network objects in a MLS system are not usually subject to
the usual privilege overrides. I would propose something like the below:

mlsconstrain { netif } { egress ingress }
	((( l1 dom l2 ) and ( l1 domby h2 )) or
	 ( t1 == mlsnetflow ));
mlsconstrain { node } { recvfrom sendto }
	((( l1 dom l2 ) and ( l1 domby h2 )) or
	 ( t1 == mlsnetflow ));
mlsconstrain { packet } { forward_in forward_out }
	((( l1 dom l2 ) and ( l1 domby h2 )) or
	 ( t1 == mlsnetflow ));

"mlsnetflow" would be a new attribute useful for special cases like
unlabeled_t or kernel_t.

Why were network objects not subject to privilege overrides in legacy/traditional MLS systems?

I ask because I think we are best off keeping the MLS constraints as consistent as possible. If there is a sound reason for avoiding policy overrides for just the network controls than perhaps we should consider "fixing" the rest of the constraints and not just the new ones.
I can provide a bit of history about some legacy systems. In Trusted Solaris 8 there was a privilege, net_mac_read, that allowed a server to accept connections from clients with labels it didn't dominate. In order to reply, the server either needed to set the socket label to match the incoming client's label, or assert the privilege net_reply_equal. There was no corresponding net_mac_write privilege, because privilege programs were expected to use the network API to set their socket labels appropriately.

In Solaris Trusted Extensions, neither the net_mac_read, net_mac_write, nor net_repy_equal privileges are implemented. It was viewed as a weakness in Trusted Solaris that MAC could be overridden by privilege. Instead, the administrator (who configures the system network policy) can enumerate multilevel network ports, and appropriately privileged services can bind to them.

Since MLS constraints are relatively new to UNIX, there isn't a compatibility requirement that the superuser should be able to override it. So don't provide any more rope than you need to.

--Glenn

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