Re: Are we on the wrong track?

Chris PeBenito <[email protected]>
Newsgroups org.kernel.vger.selinux-refpolicy
Message-ID <[email protected]>
I realized that I missed this.

On 6/12/20 10:03 AM, bauen1 wrote:
> Hi,
> 
> I also agree with most things already said.
> 
> I would like to add that the way documentation is currently handled
> involves too much copy + paste of almost meaningless descriptions, but I
> haven't found a very good alternative either. (maybe adding a type
> attribute to the param xml and generating a summary based on that could
> work in the most common cases)

The original intent with the XML-based docs was for tools to use (see 
policy.xml).  As far as I know, the only tool that ever used it is long-dead 
(SLIDE).  If we can come up with with a better solution that doesn't rule-out 
the potential for tools, I'd be fine with that.  It may go better with a proper 
HLL and named interface parameters.

> On 6/12/20 3:02 PM, Russell Coker wrote:
>> Does staff_r even make sense when you could just use
>>>> different MCS categories for different users?
>>> Yes, as user_r cannot reach admin roles whereas staff_r can.
>> The user identity has a permitted list of roles, you can have users who are
>> permitted user_r and sysadm_r and users who are only permitted user_r.  The
>> original benefit of staff_r was to protect staff from attacks by user_r
>> accounts, but we can do that protection with the identity based constraints.
> 
> I would propose replacing user based constraints with role based
> constraints:
> The user part of the context (normally) doesn't change after login, this
> means that files edited by a staff_u user become inaccessible by anyone
> else, even if sudo is used to change to staff_u:sysadm_r:sysadm_t, but
> reducing the user based constraints for staff_u is undesirable.

This behavior depends on the type of the file. If you end up with a 
staff_u:object_r:etc_t context, the user separations don't apply since this is 
not a user file.

We used to have role based separations but it was encoded into the TE rules and 
generated an enormous amount of rule duplication.  There are some remaining 
examples of this, e.g. in the su and sudo policies (staff_su_t, sysadm_su_t).

When the default_* statements were implemented I started to reimplement the 
role-based separations using the role, but then I lost the work before I 
finished.  I don't think it is too involved, since it may be as simple copying 
the UBAC infrastructure and tweaking it to work on roles.


-- 
Chris PeBenito
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.