From 85c5fc21c8a6259ec74686d62cf2c9a3fe01a56e Mon Sep 17 00:00:00 2001 From: William Roberts <wroberts@tresys.com> Date: Sun, 6 Oct 2013 15:36:11 -0400 Subject: [PATCH] Start confining ueventd * Keep ueventd in permissive * Drop unconfined macro to collect logs * Restore allow rules to current NSA maintained policy Change-Id: Ic4ee8e24ccd8887fed151ae1e4f197512849f57b --- domain.te | 4 ++-- ueventd.te | 19 ++++++++++++++++++- 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/domain.te b/domain.te index bfe8a9cc5..6e5e83cc6 100644 --- a/domain.te +++ b/domain.te @@ -139,8 +139,8 @@ neverallow { domain -relabeltodomain } *:dir_file_class_set relabelto; # Only init should be able to load SELinux policies neverallow { domain -init } kernel:security load_policy; -# Only init and system_server should be able to access HW RNG -neverallow { domain -init -system_server -unconfineddomain } hw_random_device:chr_file *; +# Only init, ueventd and system_server should be able to access HW RNG +neverallow { domain -init -system_server -ueventd -unconfineddomain } hw_random_device:chr_file *; # Ensure that all entrypoint executables are in exec_type. neverallow domain { file_type -exec_type }:file entrypoint; diff --git a/ueventd.te b/ueventd.te index 6e1a4a82b..1562c0e88 100644 --- a/ueventd.te +++ b/ueventd.te @@ -3,5 +3,22 @@ type ueventd, domain; permissive ueventd; tmpfs_domain(ueventd) -unconfined_domain(ueventd) +write_klog(ueventd) +security_access_policy(ueventd) +relabelto_domain(ueventd) allow ueventd rootfs:file entrypoint; +allow ueventd init:process sigchld; +allow ueventd self:capability { chown mknod net_admin setgid fsetid sys_rawio dac_override fowner }; +allow ueventd device:file create_file_perms; +allow ueventd device:chr_file rw_file_perms; +allow ueventd sysfs:file rw_file_perms; +allow ueventd sysfs:file setattr; +allow ueventd sysfs_type:file { relabelfrom relabelto }; +allow ueventd tmpfs:chr_file rw_file_perms; +allow ueventd dev_type:dir create_dir_perms; +allow ueventd dev_type:lnk_file { create unlink }; +allow ueventd dev_type:chr_file { create setattr unlink }; +allow ueventd dev_type:blk_file { create setattr unlink }; +allow ueventd self:netlink_kobject_uevent_socket *; +allow ueventd efs_file:dir search; +allow ueventd efs_file:file r_file_perms; -- GitLab