Re: Generating policy for embedded platforms.

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

 



On Thu, 2011-04-14 at 09:07 -0700, Sam Gandhi wrote:
> Hello,
> 
> Hopefully this is appropriate mailing list for this type of email, if
> not please do let what is the appropriate forum for questions below.
> 
> I am trying to enable SELinux on a embedded platform running linux 2.6.35.
> 
> One of the idea we have is to run seLinux is permissive mode and
> gather the AVC messages as our programs start and convert those
> messages to 'allow' policy and deny everything else, much like what is
> done in IP packet forwarding, allow only traffic you know you want to
> process and deny everything else.
> 
> Now the question are: is how does one generate deny-all policy for SELinux?
> 
> I have come across mdp program in kernel source code and
> install_policy.sh script is that the right way to get started on
> building the most minimum policy set for embedded system, where large
> desktop policy may not be appropriate?
> 
> Below is the script I am trying to use to setup the dummy policy (as
> described in Documentation/SELinux.txt), and booting kernel with
> enforcing=0 selinux=1 kernel parameters.
> 
> problem is I don't see any of the avc messages as my applications
> start and open files/sockets etc. What am I doing wrong?

First, are you loading the policy into the kernel at boot?  That is the
responsibility of early userspace, typically handled from /sbin/init or
the initramfs script.  Look for messages from SELinux in dmesg output
beyond the initial ones, along the lines of:
SELinux: 2048 avtab hash slots, 215487 rules.
SELinux: 2048 avtab hash slots, 215487 rules.
SELinux:  9 users, 14 roles, 3521 types, 184 bools, 1 sens, 1024 cats
SELinux:  81 classes, 215487 rules
SELinux:  Completing initialization.
SELinux:  Setting up existing superblocks.
SELinux: initialized (dev sysfs, type sysfs), uses genfs_contexts
...

Second, if you use the policy generated by mdp, you'll have a policy
with exactly one type that is allowed to do everything.  So you'll see
no denials at all until you start adding further types to the policy.
New types are not automatically generated by audit2allow - you have to
create them.  A type is a security equivalence class, so you don't need
one for every individual program or file, only where you need to
distinguish permissions.

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