label some character device nodes
cover label some character device nodes
I am currently trying to get refpolicy to work in a nobase text kvm-guest, to see if i can come up with a better policy for systemd.
In the process is stumbled upon some unlabeled character device nodes.
Dominick Grift (2):
Declare a loop control device node type and label /dev/loop-control
accordingly
Declare a virtio port device type and label /dev/vport.* accordingly
policy/modules/kernel/devices.fc | 2 ++ policy/modules/kernel/devices.te | 6 ++++++ 2 files changed, 8 insertions(+)
Signature · 1 line
1.7.11.4
PATCH 1/2 Declare a loop control device node type and label /dev/loop-control accordingly
--- policy/modules/kernel/devices.fc | 1 + policy/modules/kernel/devices.te | 3 +++ 2 files changed, 4 insertions(+)
policy/modules/kernel/devices.fc +1 -0
@@ -57,6 +57,7 @@ /dev/lirc[0-9]+ -c gen_context(system_u:object_r:lirc_device_t,s0) /dev/lircm -c gen_context(system_u:object_r:mouse_device_t,s0) /dev/logibm -c gen_context(system_u:object_r:mouse_device_t,s0) +/dev/loop-control -c gen_context(system_u:object_r:loop_control_device_t,s0) /dev/lp.* -c gen_context(system_u:object_r:printer_device_t,s0) /dev/mcelog -c gen_context(system_u:object_r:kmsg_device_t,mls_systemhigh) /dev/mei -c gen_context(system_u:object_r:mei_device_t,s0)
policy/modules/kernel/devices.te +3 -0
@@ -115,6 +115,9 @@ dev_node(kvm_device_t) type lirc_device_t; dev_node(lirc_device_t) +type loop_control_device_t; +dev_node(loop_control_device_t) + # # Type for /dev/mapper/control #
Signature · 1 line
1.7.11.4
PATCH 1/2 Declare a loop control device node type and label /dev/loop-control accordingly
Quoted 24 lines · Dominick Grift
Signed-off-by Dominick Grift <[email protected]>--- policy/modules/kernel/devices.fc | 1 + policy/modules/kernel/devices.te | 3 +++ 2 files changed, 4 insertions(+)policy/modules/kernel/devices.fc +1
-0@@ -57,6 +57,7 @@ /dev/lirc[0-9]+ -c gen_context(system_u:object_r:lirc_device_t,s0) /dev/lircm -c gen_context(system_u:object_r:mouse_device_t,s0) /dev/logibm -c gen_context(system_u:object_r:mouse_device_t,s0) +/dev/loop-control -c gen_context(system_u:object_r:loop_control_device_t,s0) /dev/lp.* -c gen_context(system_u:object_r:printer_device_t,s0) /dev/mcelog -c gen_context(system_u:object_r:kmsg_device_t,mls_systemhigh) /dev/mei -c gen_context(system_u:object_r:mei_device_t,s0)policy/modules/kernel/devices.te +0
-0
policy/modules/kernel/devices.te dev_node(kvm_device_t) · line 123
Quoted 9 lines
policy/modules/kernel/devices.te +3
-0@@ -115,6 +115,9 @@ dev_node(kvm_device_t) type lirc_device_t; dev_node(lirc_device_t) +type loop_control_device_t; +dev_node(loop_control_device_t) + # # Type for /dev/mapper/control #
Merged.
Signature · 3 lines
Chris PeBenito Tresys Technology, LLC www.tresys.com | oss.tresys.com
PATCH 2/2 Declare a virtio port device type and label /dev/vport.* accordingly
In reply to Dominick Grift--- policy/modules/kernel/devices.fc | 1 + policy/modules/kernel/devices.te | 3 +++ 2 files changed, 4 insertions(+)
policy/modules/kernel/devices.fc +1 -0
@@ -124,6 +124,7 @@ ifdef(`distro_suse', ` /dev/vmmon -c gen_context(system_u:object_r:vmware_device_t,s0) /dev/vmnet.* -c gen_context(system_u:object_r:vmware_device_t,s0) /dev/video.* -c gen_context(system_u:object_r:v4l_device_t,s0) +/dev/vport.* -c gen_context(system_u:object_r:virtio_device_t,s0) /dev/vrtpanel -c gen_context(system_u:object_r:mouse_device_t,s0) /dev/vttuner -c gen_context(system_u:object_r:v4l_device_t,s0) /dev/vtx.* -c gen_context(system_u:object_r:v4l_device_t,s0)
policy/modules/kernel/devices.te +3 -0
@@ -272,6 +272,9 @@ dev_node(v4l_device_t) type vhost_device_t; dev_node(vhost_device_t) +type virtio_device_t; +dev_node(virtio_device_t) + # Type for vmware devices. type vmware_device_t; dev_node(vmware_device_t)
Signature · 1 line
1.7.11.4
PATCH 2/2 Declare a virtio port device type and label /dev/vport.* accordingly
Quoted 23 lines · Dominick Grift
Signed-off-by Dominick Grift <[email protected]>--- policy/modules/kernel/devices.fc | 1 + policy/modules/kernel/devices.te | 3 +++ 2 files changed, 4 insertions(+)policy/modules/kernel/devices.fc +1
-0@@ -124,6 +124,7 @@ ifdef(`distro_suse', ` /dev/vmmon -c gen_context(system_u:object_r:vmware_device_t,s0) /dev/vmnet.* -c gen_context(system_u:object_r:vmware_device_t,s0) /dev/video.* -c gen_context(system_u:object_r:v4l_device_t,s0) +/dev/vport.* -c gen_context(system_u:object_r:virtio_device_t,s0) /dev/vrtpanel -c gen_context(system_u:object_r:mouse_device_t,s0) /dev/vttuner -c gen_context(system_u:object_r:v4l_device_t,s0) /dev/vtx.* -c gen_context(system_u:object_r:v4l_device_t,s0)policy/modules/kernel/devices.te +0
-0
policy/modules/kernel/devices.te dev_node(v4l_device_t) · line 280
Quoted 9 lines
policy/modules/kernel/devices.te +3
-0@@ -272,6 +272,9 @@ dev_node(v4l_device_t) type vhost_device_t; dev_node(vhost_device_t) +type virtio_device_t; +dev_node(virtio_device_t) + # Type for vmware devices. type vmware_device_t; dev_node(vmware_device_t)
We declare it in terminal.* policy files.
Also I think base access interfaces should be part of this patch?
PATCH 2/2 Declare a virtio port device type and label /dev/vport.* accordingly
Quoted 27 lines · Miroslav Grepl
Quoted 26 lines · Dominick Grift
Signed-off-by Dominick Grift <[email protected]>--- policy/modules/kernel/devices.fc | 1 + policy/modules/kernel/devices.te | 3 +++ 2 files changed, 4 insertions(+)policy/modules/kernel/devices.fc +1
-0@@ -124,6 +124,7 @@ ifdef(`distro_suse', ` /dev/vmmon -c gen_context(system_u:object_r:vmware_device_t,s0) /dev/vmnet.* -c gen_context(system_u:object_r:vmware_device_t,s0) /dev/video.* -c gen_context(system_u:object_r:v4l_device_t,s0) +/dev/vport.* -c gen_context(system_u:object_r:virtio_device_t,s0) /dev/vrtpanel -c gen_context(system_u:object_r:mouse_device_t,s0) /dev/vttuner -c gen_context(system_u:object_r:v4l_device_t,s0) /dev/vtx.* -c gen_context(system_u:object_r:v4l_device_t,s0)policy/modules/kernel/devices.te +0
-0@@ -272,6 +272,9 @@ dev_node(v4l_device_t) type vhost_device_t; dev_node(vhost_device_t)
Quoted 7 lines
policy/modules/kernel/devices.te dev_node(v4l_device_t) · line 280
Quoted 6 lines
policy/modules/kernel/devices.te +3
-0+type virtio_device_t; +dev_node(virtio_device_t) + # Type for vmware devices. type vmware_device_t; dev_node(vmware_device_t)We declare it in terminal.* policy files.
must be new then, last time i tried (a week ago on f18?) it was still mislabeled (device_t)
Quoted 1 line
Also I think base access interfaces should be part of this patch?
i don't see that requirement. i also haven't encountered any process trying to access it yet.
PATCH 2/2 Declare a virtio port device type and label /dev/vport.* accordingly
Quoted 36 lines · Dominick Grift
Quoted 27 lines · Miroslav Grepl
Quoted 26 lines · Dominick Grift
Signed-off-by Dominick Grift <[email protected]>--- policy/modules/kernel/devices.fc | 1 + policy/modules/kernel/devices.te | 3 +++ 2 files changed, 4 insertions(+)policy/modules/kernel/devices.fc +1
-0@@ -124,6 +124,7 @@ ifdef(`distro_suse', ` /dev/vmmon -c gen_context(system_u:object_r:vmware_device_t,s0) /dev/vmnet.* -c gen_context(system_u:object_r:vmware_device_t,s0) /dev/video.* -c gen_context(system_u:object_r:v4l_device_t,s0) +/dev/vport.* -c gen_context(system_u:object_r:virtio_device_t,s0) /dev/vrtpanel -c gen_context(system_u:object_r:mouse_device_t,s0) /dev/vttuner -c gen_context(system_u:object_r:v4l_device_t,s0) /dev/vtx.* -c gen_context(system_u:object_r:v4l_device_t,s0)policy/modules/kernel/devices.te +0
-0@@ -272,6 +272,9 @@ dev_node(v4l_device_t) type vhost_device_t; dev_node(vhost_device_t)Quoted 7 lines
policy/modules/kernel/devices.te dev_node(v4l_device_t) · line 280
Quoted 6 lines
policy/modules/kernel/devices.te +3
-0+type virtio_device_t; +dev_node(virtio_device_t) + # Type for vmware devices. type vmware_device_t; dev_node(vmware_device_t)We declare it in terminal.* policy files.
Quoted 2 lines
must be new then, last time i tried (a week ago on f18?) it was still mislabeled (
device_t)
We have
/dev/vport[0-9]p[0-9]+ -c gen_context(system_u:object_r:virtio_device_t,s0)
maybe it needs to be fixed.
And then
rhev.te:term_use_virtio_console(rhev_agentd_t)
rhev.te: term_use_virtio_console(rhev_agentd_consolehelper_t)
vdagent.te:term_use_virtio_console(vdagent_t)
Quoted 5 lines
Quoted 2 lines
Also I think base access interfaces should be part of this patch?
i don't see that requirement. i also haven't encountered any process trying to access it yet.
PATCH 2/2 Declare a virtio port device type and label /dev/vport.* accordingly
Quoted 10 lines · Miroslav Grepl
/dev/vport[0-9]p[0-9]+ -c
gen_context(system_u:object_r:virtio_device_t,s0)maybe it needs to be fixed.
And then
rhev.te:term_use_virtio_console(rhev_agentd_t)
rhev.te:term_use_virtio_console(rhev_agentd_consolehelper_t)
vdagent.te:term_use_virtio_console(vdagent_t)
could you please create a patch for refpolicy that fixes this issue? I would do it but i screwed up my refpolicy repository and cant undo it right now because i am in the middle of a project.
But if you do , please double check the file context spec becuase i suspect that it may not catch the interface. (i submitted this patch because the device was mislabeled)
Quoted 6 lines
Quoted 5 lines
Quoted 2 lines
Also I think base access interfaces should be part of this patch?
i don't see that requirement. i also haven't encountered any process trying to access it yet.
PATCH 2/2 Declare a virtio port device type and label /dev/vport.* accordingly
In reply to Miroslav GreplQuoted 43 lines · Miroslav Grepl
Quoted 36 lines · Dominick Grift
Quoted 27 lines · Miroslav Grepl
Quoted 26 lines · Dominick Grift
Signed-off-by Dominick Grift <[email protected]>--- policy/modules/kernel/devices.fc | 1 + policy/modules/kernel/devices.te | 3 +++ 2 files changed, 4 insertions(+)policy/modules/kernel/devices.fc +1
-0@@ -124,6 +124,7 @@ ifdef(`distro_suse', ` /dev/vmmon -c gen_context(system_u:object_r:vmware_device_t,s0) /dev/vmnet.* -c gen_context(system_u:object_r:vmware_device_t,s0) /dev/video.* -c gen_context(system_u:object_r:v4l_device_t,s0) +/dev/vport.* -c gen_context(system_u:object_r:virtio_device_t,s0) /dev/vrtpanel -c gen_context(system_u:object_r:mouse_device_t,s0) /dev/vttuner -c gen_context(system_u:object_r:v4l_device_t,s0) /dev/vtx.* -c gen_context(system_u:object_r:v4l_device_t,s0)policy/modules/kernel/devices.te +0
-0@@ -272,6 +272,9 @@ dev_node(v4l_device_t) type vhost_device_t; dev_node(vhost_device_t)Quoted 7 lines
policy/modules/kernel/devices.te dev_node(v4l_device_t) · line 280
Quoted 6 lines
policy/modules/kernel/devices.te +3
-0+type virtio_device_t; +dev_node(virtio_device_t) + # Type for vmware devices. type vmware_device_t; dev_node(vmware_device_t)We declare it in terminal.* policy files.
Quoted 2 lines
must be new then, last time i tried (a week ago on f18?) it was still mislabeled (
device_t)We have
/dev/vport[0-9]p[0-9]+ -c
gen_context(system_u:object_r:virtio_device_t,s0)
Quoted 14 lines
maybe it needs to be fixed.
And then
rhev.te:term_use_virtio_console(rhev_agentd_t)
rhev.te:term_use_virtio_console(rhev_agentd_consolehelper_t)
vdagent.te:term_use_virtio_console(vdagent_t)Quoted 5 lines
Quoted 2 lines
Also I think base access interfaces should be part of this patch?
i don't see that requirement. i also haven't encountered any process trying to access it yet.
never mind, this patch was not merged.
so just ignore this patch