]> git.ipfire.org Git - people/stevee/selinux-policy.git/commitdiff
Add a boolean to turn off all instances of ptrace in the policy
authordwalsh <dwalsh@redhat.com>
Thu, 10 Nov 2011 13:50:05 +0000 (08:50 -0500)
committerdwalsh <dwalsh@redhat.com>
Thu, 10 Nov 2011 13:50:05 +0000 (08:50 -0500)
217 files changed:
policy/global_tunables
policy/modules/admin/kdump.if
policy/modules/admin/kismet.if
policy/modules/admin/kudzu.te
policy/modules/admin/logrotate.te
policy/modules/admin/ncftool.te
policy/modules/admin/rpm.te
policy/modules/admin/sectoolm.te
policy/modules/admin/shorewall.if
policy/modules/admin/shorewall.te
policy/modules/admin/sosreport.te
policy/modules/admin/usermanage.te
policy/modules/apps/chrome.te
policy/modules/apps/cpufreqselector.te
policy/modules/apps/gnome.if
policy/modules/apps/gnome.te
policy/modules/apps/irc.if
policy/modules/apps/kde.te
policy/modules/apps/livecd.te
policy/modules/apps/mono.if
policy/modules/apps/mono.te
policy/modules/apps/mozilla.if
policy/modules/apps/mozilla.te
policy/modules/apps/nsplugin.if
policy/modules/apps/nsplugin.te
policy/modules/apps/openoffice.if
policy/modules/apps/podsleuth.te
policy/modules/apps/uml.if
policy/modules/apps/uml.te
policy/modules/apps/vmware.te
policy/modules/apps/wine.if
policy/modules/kernel/domain.te
policy/modules/kernel/kernel.te
policy/modules/roles/dbadm.te
policy/modules/roles/logadm.te
policy/modules/roles/sysadm.te
policy/modules/roles/webadm.te
policy/modules/services/abrt.if
policy/modules/services/accountsd.if
policy/modules/services/accountsd.te
policy/modules/services/afs.if
policy/modules/services/aiccu.if
policy/modules/services/aide.if
policy/modules/services/aisexec.if
policy/modules/services/ajaxterm.if
policy/modules/services/amavis.if
policy/modules/services/apache.if
policy/modules/services/apcupsd.if
policy/modules/services/apm.te
policy/modules/services/arpwatch.if
policy/modules/services/asterisk.if
policy/modules/services/automount.if
policy/modules/services/avahi.if
policy/modules/services/bind.if
policy/modules/services/bitlbee.if
policy/modules/services/bluetooth.if
policy/modules/services/boinc.if
policy/modules/services/boinc.te
policy/modules/services/bugzilla.if
policy/modules/services/callweaver.if
policy/modules/services/canna.if
policy/modules/services/certmaster.if
policy/modules/services/certmonger.if
policy/modules/services/cgroup.if
policy/modules/services/cgroup.te
policy/modules/services/chronyd.if
policy/modules/services/clamav.if
policy/modules/services/cmirrord.if
policy/modules/services/cobbler.if
policy/modules/services/cobbler.te
policy/modules/services/collectd.if
policy/modules/services/consolekit.te
policy/modules/services/corosync.if
policy/modules/services/corosync.te
policy/modules/services/cron.if
policy/modules/services/cron.te
policy/modules/services/ctdbd.if
policy/modules/services/ctdbd.te
policy/modules/services/cups.if
policy/modules/services/cvs.if
policy/modules/services/cyrus.if
policy/modules/services/dbus.if
policy/modules/services/ddclient.if
policy/modules/services/denyhosts.if
policy/modules/services/devicekit.if
policy/modules/services/devicekit.te
policy/modules/services/dhcp.if
policy/modules/services/dictd.if
policy/modules/services/dnsmasq.if
policy/modules/services/dovecot.if
policy/modules/services/drbd.if
policy/modules/services/dspam.if
policy/modules/services/exim.if
policy/modules/services/fail2ban.if
policy/modules/services/fcoemon.if
policy/modules/services/fetchmail.if
policy/modules/services/firewalld.if
policy/modules/services/fprintd.te
policy/modules/services/ftp.if
policy/modules/services/git.if
policy/modules/services/glance.if
policy/modules/services/gnomeclock.te
policy/modules/services/gpsd.te
policy/modules/services/hadoop.if
policy/modules/services/hal.if
policy/modules/services/hal.te
policy/modules/services/hddtemp.if
policy/modules/services/icecast.if
policy/modules/services/ifplugd.if
policy/modules/services/ifplugd.te
policy/modules/services/inn.if
policy/modules/services/jabber.if
policy/modules/services/kerberos.if
policy/modules/services/kerneloops.if
policy/modules/services/ksmtuned.if
policy/modules/services/ksmtuned.te
policy/modules/services/l2tpd.if
policy/modules/services/ldap.if
policy/modules/services/lircd.if
policy/modules/services/lldpad.if
policy/modules/services/lpd.if
policy/modules/services/mailscanner.if
policy/modules/services/matahari.te
policy/modules/services/memcached.if
policy/modules/services/mock.if
policy/modules/services/mock.te
policy/modules/services/mojomojo.if
policy/modules/services/mpd.if
policy/modules/services/munin.if
policy/modules/services/mysql.if
policy/modules/services/mysql.te
policy/modules/services/nagios.if
policy/modules/services/networkmanager.te
policy/modules/services/nis.if
policy/modules/services/nscd.if
policy/modules/services/nscd.te
policy/modules/services/nslcd.if
policy/modules/services/ntp.if
policy/modules/services/oident.if
policy/modules/services/openvpn.if
policy/modules/services/pads.if
policy/modules/services/pingd.if
policy/modules/services/piranha.te
policy/modules/services/plymouthd.if
policy/modules/services/policykit.te
policy/modules/services/polipo.if
policy/modules/services/portreserve.if
policy/modules/services/postfix.if
policy/modules/services/postfixpolicyd.if
policy/modules/services/postgresql.if
policy/modules/services/postgrey.if
policy/modules/services/ppp.if
policy/modules/services/prelude.if
policy/modules/services/privoxy.if
policy/modules/services/psad.if
policy/modules/services/puppet.te
policy/modules/services/pyzor.if
policy/modules/services/qpid.if
policy/modules/services/radius.if
policy/modules/services/radvd.if
policy/modules/services/razor.if
policy/modules/services/rgmanager.if
policy/modules/services/rgmanager.te
policy/modules/services/rhsmcertd.if
policy/modules/services/ricci.if
policy/modules/services/roundup.if
policy/modules/services/rpcbind.if
policy/modules/services/rtkit.te
policy/modules/services/rwho.if
policy/modules/services/samba.if
policy/modules/services/samhain.if
policy/modules/services/sanlock.if
policy/modules/services/sasl.if
policy/modules/services/sblim.if
policy/modules/services/sblim.te
policy/modules/services/sendmail.if
policy/modules/services/setroubleshoot.if
policy/modules/services/smartmon.if
policy/modules/services/smokeping.if
policy/modules/services/snmp.if
policy/modules/services/snmp.te
policy/modules/services/snort.if
policy/modules/services/soundserver.if
policy/modules/services/spamassassin.if
policy/modules/services/squid.if
policy/modules/services/ssh.if
policy/modules/services/sssd.if
policy/modules/services/tcsd.if
policy/modules/services/tftp.if
policy/modules/services/tor.if
policy/modules/services/tuned.if
policy/modules/services/ulogd.if
policy/modules/services/uucp.if
policy/modules/services/uuidd.if
policy/modules/services/varnishd.if
policy/modules/services/vdagent.if
policy/modules/services/vhostmd.if
policy/modules/services/virt.if
policy/modules/services/virt.te
policy/modules/services/vnstatd.if
policy/modules/services/wdmd.if
policy/modules/services/xserver.te
policy/modules/services/zabbix.if
policy/modules/services/zebra.if
policy/modules/system/hotplug.te
policy/modules/system/init.if
policy/modules/system/init.te
policy/modules/system/ipsec.te
policy/modules/system/iscsi.te
policy/modules/system/locallogin.te
policy/modules/system/logging.if
policy/modules/system/mount.te
policy/modules/system/sysnetwork.te
policy/modules/system/udev.te
policy/modules/system/unconfined.if
policy/modules/system/userdomain.if
policy/modules/system/xen.te

index 262b5bad71420990bc693f616cea2c6ed2674df9..d9ffe778501d40b88693010800caf88c3f8de2e2 100644 (file)
@@ -4,6 +4,13 @@
 # file should be used.
 #
 
+## <desc>
+## <p>
+## Allow sysadm to debug or ptrace all processes.
+## </p>
+## </desc>
+gen_tunable(deny_ptrace, false)
+
 ## <desc>
 ## <p>
 ## Allow unconfined executables to make their heap memory executable.  Doing this is a really bad idea. Probably indicates a badly coded executable, but could indicate an attack. This executable should be reported in bugzilla
index a296bfaf8365e13c01e24ed1f226ff819424cb13..419c7a916cdac72301d527d4e8baed07c0d1c8b8 100644 (file)
@@ -140,8 +140,11 @@ interface(`kdump_admin',`
                type kdump_initrc_exec_t;
        ')
 
-       allow $1 kdump_t:process { ptrace signal_perms };
+       allow $1 kdump_t:process signal_perms;
        ps_process_pattern($1, kdump_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 kdump_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, kdump_initrc_exec_t)
        domain_system_change_exemption($1)
index c18c920c2b0936e033feba77ff468d11daf5eed0..582f7f3ecf03b0dc3c5f17397fa4872003684c54 100644 (file)
@@ -239,7 +239,10 @@ interface(`kismet_admin',`
        ')
 
        ps_process_pattern($1, kismet_t)
-       allow $1 kismet_t:process { ptrace signal_perms };
+       allow $1 kismet_t:process signal_perms;
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 kismet_t:process ptrace;
+       ')
 
        kismet_manage_pid_files($1)
        kismet_manage_lib($1)
index a29af21c9a7ec3f65337e243857b4b05021305c1..91433431eb52e6da3420733d04e918af97ececae 100644 (file)
@@ -20,7 +20,7 @@ files_pid_file(kudzu_var_run_t)
 # Local policy
 #
 
-allow kudzu_t self:capability { dac_override sys_admin sys_ptrace sys_rawio net_admin sys_tty_config mknod };
+allow kudzu_t self:capability { dac_override sys_admin sys_rawio net_admin sys_tty_config mknod };
 dontaudit kudzu_t self:capability sys_tty_config;
 allow kudzu_t self:process { signal_perms execmem };
 allow kudzu_t self:fifo_file rw_fifo_file_perms;
index c1ccc06037b22be368d960cec8b24cc83c4b3fdc..a2512aa2fc77fb77d013da0242d3d5a0df347225 100644 (file)
@@ -30,8 +30,6 @@ files_type(logrotate_var_lib_t)
 
 # Change ownership on log files.
 allow logrotate_t self:capability { chown dac_override dac_read_search kill fsetid fowner setuid setgid sys_resource sys_nice };
-# for mailx
-dontaudit logrotate_t self:capability { sys_ptrace };
 
 allow logrotate_t self:process ~{ ptrace setcurrent setexec setfscreate setrlimit execmem execstack execheap };
 
index b25d59a3a5b72db77d5d3c8773a6244edce62422..28c9672d159775784b1e3dbbeb067b1b627b6fce 100644 (file)
@@ -17,8 +17,7 @@ role system_r types ncftool_t;
 # ncftool local policy
 #
 
-allow ncftool_t self:capability { net_admin sys_ptrace };
-
+allow ncftool_t self:capability net_admin;
 allow ncftool_t self:process signal;
 
 allow ncftool_t self:fifo_file manage_fifo_file_perms;
index 4b78d5b86658ec2be5842fbfd33e1b9df678f575..87691b83f69f0bda90f7067b8557a6be1d6bb02d 100644 (file)
@@ -250,7 +250,8 @@ optional_policy(`
 # rpm-script Local policy
 #
 
-allow rpm_script_t self:capability { chown dac_override dac_read_search fowner fsetid setgid setuid ipc_lock sys_admin sys_chroot sys_ptrace sys_rawio sys_nice mknod kill net_admin };
+allow rpm_script_t self:capability { chown dac_override dac_read_search fowner fsetid setgid setuid ipc_lock sys_admin sys_chroot sys_rawio sys_nice mknod kill net_admin };
+
 allow rpm_script_t self:process ~{ ptrace setcurrent setexec setfscreate setrlimit execheap };
 allow rpm_script_t self:fd use;
 allow rpm_script_t self:fifo_file rw_fifo_file_perms;
index 40ceffb1a20f61f76bf67b854635570adee0449a..eb4bd0593e3a40f5558020aa0f89ccfcdbb9fb29 100644 (file)
@@ -23,7 +23,7 @@ files_tmp_file(sectool_tmp_t)
 # sectool local policy
 #
 
-allow sectoolm_t self:capability { dac_override net_admin sys_nice sys_ptrace };
+allow sectoolm_t self:capability { dac_override net_admin sys_nice };
 allow sectoolm_t self:process { getcap getsched        signull setsched };
 dontaudit sectoolm_t self:process { execstack execmem };
 allow sectoolm_t self:fifo_file rw_fifo_file_perms;
index 082f0c56cdb0de38e7c65933696c66968efbaebe..f7b888117ad0bec827e859878a89158d9e630453 100644 (file)
@@ -139,8 +139,11 @@ interface(`shorewall_admin',`
                type shorewall_tmp_t, shorewall_etc_t;
        ')
 
-       allow $1 shorewall_t:process { ptrace signal_perms };
+       allow $1 shorewall_t:process signal_perms;
        ps_process_pattern($1, shorewall_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 shorewall_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, shorewall_initrc_exec_t)
        domain_system_change_exemption($1)
index 1a53b7bc2d0bc468f2df6c3d4827abd187a676ba..95065c3d6ecdf578fd13b2de55c9fa4cedd1e853 100644 (file)
@@ -37,7 +37,7 @@ logging_log_file(shorewall_log_t)
 # shorewall local policy
 #
 
-allow shorewall_t self:capability { dac_override net_admin net_raw setuid setgid sys_nice sys_ptrace };
+allow shorewall_t self:capability { dac_override net_admin net_raw setuid setgid sys_nice };
 dontaudit shorewall_t self:capability sys_tty_config;
 allow shorewall_t self:fifo_file rw_fifo_file_perms;
 
index bedbb9b4fec4658f671fa9713862fa13e5baa992..724df484214854032a78f60108de5d2baed9a308 100644 (file)
@@ -21,7 +21,7 @@ files_tmpfs_file(sosreport_tmpfs_t)
 # sosreport local policy
 #
 
-allow sosreport_t self:capability { kill net_admin net_raw setuid sys_admin sys_nice sys_ptrace dac_override };
+allow sosreport_t self:capability { kill net_admin net_raw setuid sys_admin sys_nice dac_override };
 allow sosreport_t self:process { setsched signull };
 allow sosreport_t self:fifo_file rw_fifo_file_perms;
 allow sosreport_t self:tcp_socket create_stream_socket_perms;
index e454730010f98bb64a6e7b9ac1ce70eb0e5fb1e3..cc0406f6df4bf9e76dccc730abb2c1bb3d2c6648 100644 (file)
@@ -439,7 +439,8 @@ optional_policy(`
 # Useradd local policy
 #
 
-allow useradd_t self:capability { dac_override chown kill fowner fsetid setuid sys_resource sys_ptrace };
+allow useradd_t self:capability { dac_override chown kill fowner fsetid setuid sys_resource };
+
 dontaudit useradd_t self:capability sys_tty_config;
 allow useradd_t self:process ~{ ptrace setcurrent setexec setfscreate setrlimit execmem execstack execheap };
 allow useradd_t self:process setfscreate;
index 9dd77b47fc5ed9eb872740bc8046e900f5956bb4..6c642a2ce17c129a0e4b760bff8e1eefdea688e9 100644 (file)
@@ -26,7 +26,7 @@ role system_r types chrome_sandbox_nacl_t;
 #
 # chrome_sandbox local policy
 #
-allow chrome_sandbox_t self:capability { chown dac_override fsetid setgid setuid sys_admin sys_chroot sys_ptrace };
+allow chrome_sandbox_t self:capability { chown dac_override fsetid setgid setuid sys_admin sys_chroot };
 allow chrome_sandbox_t self:process { signal_perms setrlimit execmem execstack };
 allow chrome_sandbox_t self:process setsched;
 allow chrome_sandbox_t self:fifo_file manage_file_perms;
index 7db4a017ad04d87f2db554442082c56f9c40fe96..602678906a7881e0d67b118fd8d15327fa4269f2 100644 (file)
@@ -14,7 +14,7 @@ application_domain(cpufreqselector_t, cpufreqselector_exec_t)
 # cpufreq-selector local policy
 #
 
-allow cpufreqselector_t self:capability { sys_nice sys_ptrace };
+allow cpufreqselector_t self:capability sys_nice;
 allow cpufreqselector_t self:process getsched;
 allow cpufreqselector_t self:fifo_file rw_fifo_file_perms;
 allow cpufreqselector_t self:process getsched;
index 3f977fc0387421f3c40515ddfce20fc9dcfe9e6f..deab06c85876d57daad540c69fa73aab7cb2186c 100644 (file)
@@ -91,8 +91,7 @@ interface(`gnome_role_gkeyringd',`
        auth_use_nsswitch($1_gkeyringd_t)
 
        ps_process_pattern($3, $1_gkeyringd_t)
-       allow $3 $1_gkeyringd_t:process { ptrace signal_perms };
-
+       allow $3 $1_gkeyringd_t:process signal_perms;
        dontaudit $3 gkeyringd_exec_t:file entrypoint;
 
        stream_connect_pattern($3, gkeyringd_tmp_t, gkeyringd_tmp_t, $1_gkeyringd_t)
index c36544352f38f1c874ff76025ac9c081b30e84a8..45b4ca9a5f111df41c2d1c9aacd38fc052cda533 100644 (file)
@@ -119,7 +119,7 @@ optional_policy(`
 # gconf-defaults-mechanisms local policy
 #
 
-allow gconfdefaultsm_t self:capability { dac_override sys_nice sys_ptrace };
+allow gconfdefaultsm_t self:capability { dac_override sys_nice };
 allow gconfdefaultsm_t self:process getsched;
 allow gconfdefaultsm_t self:fifo_file rw_fifo_file_perms;
 
@@ -168,7 +168,7 @@ tunable_policy(`use_samba_home_dirs',`
 # gnome-system-monitor-mechanisms local policy
 #
 
-allow gnomesystemmm_t self:capability { sys_nice sys_ptrace };
+allow gnomesystemmm_t self:capability sys_nice;
 allow gnomesystemmm_t self:fifo_file rw_fifo_file_perms;
 
 kernel_read_system_state(gnomesystemmm_t)
index 8dc8a5ff870cf73c26b45bfeb39f1e2498f5ee9a..81a0fc62c24191641abd5329eb5e169067303fde 100644 (file)
@@ -33,7 +33,7 @@ interface(`irc_role',`
 
        domtrans_pattern($2, irssi_exec_t, irssi_t)
 
-       allow $2 irssi_t:process { ptrace signal_perms };
+       allow $2 irssi_t:process signal_perms;
        ps_process_pattern($2, irssi_t)
 
        manage_dirs_pattern($2, irssi_home_t, irssi_home_t)
index 6d0c9e3fb371f87c67df056edd07cf4543e1dc93..169421f45fb6d9854b55dd683bb5f0087b3782d5 100644 (file)
@@ -13,9 +13,6 @@ dbus_system_domain(kdebacklighthelper_t, kdebacklighthelper_exec_t)
 #
 # backlighthelper local policy
 #
-
-dontaudit kdebacklighthelper_t self:capability sys_ptrace;
-
 allow kdebacklighthelper_t self:fifo_file rw_fifo_file_perms;
 
 kernel_read_system_state(kdebacklighthelper_t)
index 9fcc9dfe87c752045669208b1b585777aeafc625..a3d8afd2b80f4a4521d9b346fc819b99c09b3c8d 100644 (file)
@@ -20,7 +20,10 @@ files_tmp_file(livecd_tmp_t)
 
 dontaudit livecd_t self:capability2 mac_admin;
 
-domain_ptrace_all_domains(livecd_t)
+tunable_policy(`deny_ptrace',`',`
+       domain_ptrace_all_domains(livecd_t)
+')
+
 domain_interactive_fd(livecd_t)
 
 manage_dirs_pattern(livecd_t, livecd_tmp_t, livecd_tmp_t)
index 1fa8573e218d91c6c22e4cc375926125aae9482f..b2b83ad9467ca1835e5dcae78e5b58d086e3b9f9 100644 (file)
@@ -40,8 +40,8 @@ template(`mono_role_template',`
        domain_interactive_fd($1_mono_t)
        application_type($1_mono_t)
 
-       allow $1_mono_t self:process { ptrace signal getsched execheap execmem execstack };
-       allow $3 $1_mono_t:process { getattr ptrace noatsecure signal_perms };
+       allow $1_mono_t self:process { signal getsched execheap execmem execstack };
+       allow $3 $1_mono_t:process { getattr noatsecure signal_perms };
 
        domtrans_pattern($3, mono_exec_t, $1_mono_t)
 
index dff0f12790f902946655a185f20d8e0c1bdf56b0..ecab36dc9c9d21f478e907a5dca1ca810b2fff67 100644 (file)
@@ -15,7 +15,7 @@ init_system_domain(mono_t, mono_exec_t)
 # Local policy
 #
 
-allow mono_t self:process { ptrace signal getsched execheap execmem execstack };
+allow mono_t self:process { signal getsched execheap execmem execstack };
 
 init_dbus_chat_script(mono_t)
 
index 8fe4551fc0fa7037a19af7ef976e336990da7ab3..b9b8ac255254efb9e2605f25c0af06cd380bca6d 100644 (file)
@@ -221,7 +221,7 @@ interface(`mozilla_domtrans_plugin',`
        allow mozilla_plugin_t $1:sem create_sem_perms;
 
        ps_process_pattern($1, mozilla_plugin_t)
-       allow $1 mozilla_plugin_t:process { ptrace signal_perms };
+       allow $1 mozilla_plugin_t:process signal_perms;
 ')
 
 ########################################
index 8768af4e7e21a8a6febf99a6583f626294b2eebd..96aa053b9c399f71a03dcfca2ba36283e6c2ebc2 100644 (file)
@@ -305,7 +305,7 @@ optional_policy(`
 # mozilla_plugin local policy
 #
 
-dontaudit mozilla_plugin_t self:capability { sys_ptrace sys_nice };
+dontaudit mozilla_plugin_t self:capability sys_nice;
 
 allow mozilla_plugin_t self:process { setsched signal_perms execmem };
 allow mozilla_plugin_t self:netlink_route_socket r_netlink_socket_perms;
index 1925bd99aea2c3602dc891e32ea32c2330c512b6..fce899ab8b08a366891abb4fff259d2fa0869e83 100644 (file)
@@ -93,7 +93,7 @@ ifdef(`hide_broken_symptoms', `
        dontaudit nsplugin_t $2:shm destroy;
        allow $2 nsplugin_t:sem rw_sem_perms;
 
-       allow $2 nsplugin_t:process { getattr ptrace signal_perms };
+       allow $2 nsplugin_t:process { getattr signal_perms };
        allow $2 nsplugin_t:unix_stream_socket connectto;
 
        # Connect to pulseaudit server
index f0773b44ec68a5130dc4665216ede3cad847a857..3b6b4cb3f710712e4b8470595faa6ae5ac1a4386 100644 (file)
@@ -54,7 +54,7 @@ application_executable_file(nsplugin_config_exec_t)
 #
 dontaudit nsplugin_t self:capability { sys_nice sys_tty_config };
 allow nsplugin_t self:fifo_file rw_file_perms;
-allow nsplugin_t self:process { ptrace setpgid getsched setsched signal_perms };
+allow nsplugin_t self:process { setpgid getsched setsched signal_perms };
 
 allow nsplugin_t self:sem create_sem_perms;
 allow nsplugin_t self:shm create_shm_perms;
index 0578e7ce45f895644ae97a7cbd02ac6b126d323a..792bf9c7871181d0084024d9bc55b6b4d51fe110 100644 (file)
@@ -69,7 +69,7 @@ interface(`openoffice_role_template',`
 
        allow $1_openoffice_t self:process { getsched sigkill execmem execstack };
 
-       allow $3 $1_openoffice_t:process { getattr ptrace signal_perms noatsecure siginh rlimitinh };
+       allow $3 $1_openoffice_t:process { getattr signal_perms noatsecure siginh rlimitinh };
        allow $1_openoffice_t $3:tcp_socket { read write };
 
        domtrans_pattern($3, openoffice_exec_t, $1_openoffice_t)
index ccc15aba7394464b3f3e5e324f3e8ad5efd81a28..9f88c3a35a18117d45ee1c846a7b234ee673c563 100644 (file)
@@ -27,7 +27,8 @@ ubac_constrained(podsleuth_tmpfs_t)
 # podsleuth local policy
 #
 allow podsleuth_t self:capability { kill dac_override sys_admin sys_rawio };
-allow podsleuth_t self:process { ptrace signal signull getsched execheap execmem execstack };
+allow podsleuth_t self:process { signal signull getsched execheap execmem execstack };
+
 allow podsleuth_t self:fifo_file rw_file_perms;
 allow podsleuth_t self:unix_stream_socket create_stream_socket_perms;
 allow podsleuth_t self:sem create_sem_perms;
index d2ab7cba7f05264f85f819b9df59cd6edaf7b0d1..ddb34f1fdf6b44c5e8bf6ff51eef34d7dd64af6d 100644 (file)
@@ -31,9 +31,9 @@ interface(`uml_role',`
        allow $2 uml_t:unix_dgram_socket sendto;
        allow uml_t $2:unix_dgram_socket sendto;
 
-       # allow ps, ptrace, signal
+       # allow ps, signal
        ps_process_pattern($2, uml_t)
-       allow $2 uml_t:process { ptrace signal_perms };
+       allow $2 uml_t:process signal_perms;
 
        allow $2 uml_ro_t:dir list_dir_perms;
        read_files_pattern($2, uml_ro_t, uml_ro_t)
index 7a11f39311ebb55f60b74c94957cb918d1560a79..c716960b4f5988eeba8213463e32d03b928e0a90 100644 (file)
@@ -53,7 +53,7 @@ files_pid_file(uml_switch_var_run_t)
 #
 
 allow uml_t self:fifo_file rw_fifo_file_perms;
-allow uml_t self:process { signal_perms ptrace };
+allow uml_t self:process signal_perms;
 allow uml_t self:unix_stream_socket create_stream_socket_perms;
 allow uml_t self:unix_dgram_socket create_socket_perms;
 # Use the network.
index 6aff3308f2757c4667b399d1d50f99e1ec62942c..dc7365247c13e3914415fb4924a5d25ff1c741c2 100644 (file)
@@ -72,7 +72,7 @@ ifdef(`enable_mcs',`
 # VMWare host local policy
 #
 
-allow vmware_host_t self:capability { setgid setuid net_raw sys_nice sys_time sys_ptrace kill dac_override };
+allow vmware_host_t self:capability { setgid setuid net_raw sys_nice sys_time kill dac_override };
 dontaudit vmware_host_t self:capability sys_tty_config;
 allow vmware_host_t self:process { execstack execmem signal_perms };
 allow vmware_host_t self:fifo_file rw_fifo_file_perms;
index e10101a962f5ba5cc741ef595f0220a2b21e91c6..00a98f17f3416854534493bc0cc61be8bf2f96f6 100644 (file)
@@ -100,7 +100,7 @@ template(`wine_role_template',`
        role $2 types $1_wine_t;
 
        allow $1_wine_t self:process { execmem execstack };
-       allow $3 $1_wine_t:process { getattr ptrace noatsecure signal_perms };
+       allow $3 $1_wine_t:process { getattr noatsecure signal_perms };
        domtrans_pattern($3, wine_exec_t, $1_wine_t)
        corecmd_bin_domtrans($1_wine_t, $1_t)
 
index e7679224427b466a200879cd18c0ccc14cc2df41..f9a1bccb30e0f8fcc16569ace7f1d1343b04f197 100644 (file)
@@ -181,7 +181,10 @@ allow unconfined_domain_type domain:fifo_file rw_file_perms;
 allow unconfined_domain_type unconfined_domain_type:dbus send_msg;
 
 # Act upon any other process.
-allow unconfined_domain_type domain:process ~{ transition dyntransition execmem execstack execheap };
+allow unconfined_domain_type domain:process ~{ ptrace transition dyntransition execmem execstack execheap };
+tunable_policy(`deny_ptrace',`',`
+       allow unconfined_domain_type domain:process ptrace;
+')
 
 # Create/access any System V IPC objects.
 allow unconfined_domain_type domain:{ sem msgq shm } *;
@@ -408,3 +411,4 @@ optional_policy(`
 ')
 
 dontaudit domain domain:process { noatsecure siginh rlimitinh } ;
+dontaudit domain self:capability sys_ptrace;
index c857dc06e97e7f21322ffd534f86bc8d2bea4f00..88525351c4a663de2f7e5662bda19611da15221b 100644 (file)
@@ -191,7 +191,11 @@ sid tcp_socket             gen_context(system_u:object_r:unlabeled_t,mls_systemhigh)
 # kernel local policy
 #
 
-allow kernel_t self:capability *;
+allow kernel_t self:capability ~{ sys_ptrace };
+tunable_policy(`deny_ptrace',`',`
+       allow kernel_t self:capability sys_ptrace;
+')
+
 allow kernel_t self:process ~{ ptrace setcurrent setexec setfscreate setrlimit execmem execstack execheap };
 allow kernel_t self:shm create_shm_perms;
 allow kernel_t self:sem create_sem_perms;
@@ -442,7 +446,7 @@ allow kern_unconfined unlabeled_t:dir_file_class_set *;
 allow kern_unconfined unlabeled_t:filesystem *;
 allow kern_unconfined unlabeled_t:association *;
 allow kern_unconfined unlabeled_t:packet *;
-allow kern_unconfined unlabeled_t:process ~{ transition dyntransition execmem execstack execheap };
+allow kern_unconfined unlabeled_t:process ~{ ptrace transition dyntransition execmem execstack execheap };
 
 gen_require(`
        bool secure_mode_insmod;
index e9c9277d72293ee1b8762fb98b5b482f25522b3e..2adc35f26bc76a1d9ca1a9386f9b29b6a5ae2749 100644 (file)
@@ -28,7 +28,7 @@ userdom_base_user_template(dbadm)
 # database admin local policy
 #
 
-allow dbadm_t self:capability { dac_override dac_read_search sys_ptrace };
+allow dbadm_t self:capability { dac_override dac_read_search };
 
 files_dontaudit_search_all_dirs(dbadm_t)
 files_delete_generic_locks(dbadm_t)
index 3a45a3ef0916010223c0897c649ccf5045e423aa..6b0816075933324c425398a59671bd94107664b3 100644 (file)
@@ -14,6 +14,5 @@ userdom_base_user_template(logadm)
 # logadmin local policy
 #
 
-allow logadm_t self:capability { dac_override dac_read_search kill sys_ptrace sys_nice };
-
+allow logadm_t self:capability { dac_override dac_read_search kill sys_nice };
 logging_admin(logadm_t, logadm_r)
index c6aa0bceed3fbbdefc94fdd175036b513d21cbff..86e7ab83120de08b0ae1baf8b23930ccf3e04b6f 100644 (file)
@@ -5,13 +5,6 @@ policy_module(sysadm, 2.2.1)
 # Declarations
 #
 
-## <desc>
-## <p>
-## Allow sysadm to debug or ptrace all processes.
-## </p>
-## </desc>
-gen_tunable(allow_ptrace, false)
-
 role sysadm_r;
 
 userdom_admin_user_template(sysadm)
@@ -90,7 +83,7 @@ ifndef(`enable_mls',`
        logging_stream_connect_syslog(sysadm_t)
 ')
 
-tunable_policy(`allow_ptrace',`
+tunable_policy(`deny_ptrace',`',`
        domain_ptrace_all_domains(sysadm_t)
 ')
 
index dbf27107e322f5ec0854424d299a20c5a42e7242..3e7e984f8b5e5940c1fffac9835a93f5c98c43cc 100644 (file)
@@ -28,7 +28,7 @@ userdom_base_user_template(webadm)
 # webadmin local policy
 #
 
-allow webadm_t self:capability { dac_override dac_read_search kill sys_ptrace sys_nice };
+allow webadm_t self:capability { dac_override dac_read_search kill sys_nice };
 
 files_dontaudit_search_all_dirs(webadm_t)
 files_manage_generic_locks(webadm_t)
index b2d6129355a7b8e4b49fa52ec824b5b35d24567a..d83d4dca77bf128f5ea27c6a7ecc6f66e8aa8dae 100644 (file)
@@ -336,9 +336,13 @@ interface(`abrt_admin',`
                type abrt_initrc_exec_t;
        ')
 
-       allow $1 abrt_t:process { ptrace signal_perms };
+       allow $1 abrt_t:process { signal_perms };
        ps_process_pattern($1, abrt_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 abrt_t:process ptrace;
+       ')
+
        init_labeled_script_domtrans($1, abrt_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 abrt_initrc_exec_t system_r;
index d639ae0726fdf020ce618aca63113b1724f87d28..5770f1a14fb990802cfec7570415994c5f0d03c2 100644 (file)
@@ -138,8 +138,12 @@ interface(`accountsd_admin',`
                type accountsd_t;
        ')
 
-       allow $1 accountsd_t:process { ptrace signal_perms };
+       allow $1 accountsd_t:process signal_perms;
        ps_process_pattern($1, accountsd_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 acountsd_t:process ptrace;
+       ')
+
        accountsd_manage_lib_files($1)
 ')
index 493bde2ea8173f661c8d2a09151d5420eb811bb8..a538582f215dc3090eb56b868bf1f8ddde6e5546 100644 (file)
@@ -19,7 +19,7 @@ files_type(accountsd_var_lib_t)
 # accountsd local policy
 #
 
-allow accountsd_t self:capability { dac_override setuid setgid sys_ptrace };
+allow accountsd_t self:capability { dac_override setuid setgid };
 allow accountsd_t self:process signal;
 allow accountsd_t self:fifo_file rw_fifo_file_perms;
 
index 49c0cc8c278cf5da81b7d387e55fd8afb12ac10d..641044e6ec24902890459e05f236ae15a8d05b70 100644 (file)
@@ -97,9 +97,13 @@ interface(`afs_admin',`
                type afs_t, afs_initrc_exec_t;
        ')
 
-       allow $1 afs_t:process { ptrace signal_perms };
+       allow $1 afs_t:process signal_perms;
        ps_process_pattern($1, afs_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 afs_t:process ptrace;
+       ')
+
        # Allow afs_admin to restart the afs service
        afs_initrc_domtrans($1)
        domain_system_change_exemption($1)
index 184c9a80bb7253d81959813736a2e603dd8509b6..8f77bf594769022e5ac1e3ed64225b9841e29864 100644 (file)
@@ -79,9 +79,13 @@ interface(`aiccu_admin',`
                type aiccu_var_run_t;
        ')
 
-       allow $1 aiccu_t:process { ptrace signal_perms };
+       allow $1 aiccu_t:process signal_perms;
        ps_process_pattern($1, aiccu_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 aiccu_t:process ptrace;
+       ')
+
        aiccu_initrc_domtrans($1)
        domain_system_change_exemption($1)
        role_transition $2 aiccu_initrc_exec_t system_r;
index 0b0db39f13f7d6d213f5ea3e66274a5b7e23831d..b84d045dd1ecc436c38bc38240bdcf0d44f381fc 100644 (file)
@@ -61,9 +61,13 @@ interface(`aide_admin',`
                type aide_t, aide_db_t, aide_log_t;
        ')
 
-       allow $1 aide_t:process { ptrace signal_perms };
+       allow $1 aide_t:process signal_perms;
        ps_process_pattern($1, aide_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 aide_t:process ptrace;
+       ')
+
        files_list_etc($1)
        admin_pattern($1, aide_db_t)
 
index af5d229996f8d0be6d85a2c192c7a42c2c70ec18..feea7e5dfc477a7a38c487cd64e700aeebfb0113 100644 (file)
@@ -82,9 +82,13 @@ interface(`aisexecd_admin',`
                type aisexec_initrc_exec_t;
        ')
 
-       allow $1 aisexec_t:process { ptrace signal_perms };
+       allow $1 aisexec_t:process signal_perms;
        ps_process_pattern($1, aisexec_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 aisexec_t:process ptrace;
+       ')
+
        init_labeled_script_domtrans($1, aisexec_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 aisexec_initrc_exec_t system_r;
index 0f3fc3631a9023ec1e146ee412f3be8e85ad573c..7abe946d429fe6e3b84f028122de6f13d68cd39a 100644 (file)
@@ -76,9 +76,13 @@ interface(`ajaxterm_admin',`
                type ajaxterm_t, ajaxterm_initrc_exec_t;
        ')
 
-       allow $1 ajaxterm_t:process { ptrace signal_perms };
+       allow $1 ajaxterm_t:process signal_perms;
        ps_process_pattern($1, ajaxterm_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 ajaxterm_t:process ptrace;
+       ')
+
        ajaxterm_initrc_domtrans($1)
        domain_system_change_exemption($1)
        role_transition $2 ajaxterm_initrc_exec_t system_r;
index e31d92a4564672556c62fc3fbfcdda3cad18d192..e515cb802da99b61cfd0da37d1b37f20e966021c 100644 (file)
@@ -231,9 +231,13 @@ interface(`amavis_admin',`
                type amavis_initrc_exec_t;
        ')
 
-       allow $1 amavis_t:process { ptrace signal_perms };
+       allow $1 amavis_t:process signal_perms;
        ps_process_pattern($1, amavis_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 amavis_t:process ptrace;
+       ')
+
        amavis_initrc_domtrans($1)
        domain_system_change_exemption($1)
        role_transition $2 amavis_initrc_exec_t system_r;
index 606323d4f34ee1738aee7037cee198e48b052826..2ad693adb980372cc3acac38d6b607e7ae302d11 100644 (file)
@@ -1297,9 +1297,13 @@ interface(`apache_admin',`
                type httpd_unit_file_t;
        ')
 
-       allow $1 httpd_t:process { ptrace signal_perms };
+       allow $1 httpd_t:process signal_perms;
        ps_process_pattern($1, httpd_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 httpd_t:process ptrace;
+       ')
+
        init_labeled_script_domtrans($1, httpd_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 httpd_initrc_exec_t system_r;
index e342775eb15097d3ca99490785230809924e061c..4ffdb80c97455cd17997ccda22131a42c871675d 100644 (file)
@@ -146,9 +146,13 @@ interface(`apcupsd_admin',`
                type apcupsd_initrc_exec_t;
        ')
 
-       allow $1 apcupsd_t:process { ptrace signal_perms };
+       allow $1 apcupsd_t:process signal_perms;
        ps_process_pattern($1, apcupsd_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 apcupsd_t:process ptrace;
+       ')
+
        apcupsd_initrc_domtrans($1, apcupsd_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 apcupsd_initrc_exec_t system_r;
index 21b91de5d56ce40e03dd3a2d7cda5f6edc0a0d46..f8de34e8c41390828a6ccef8ebe59510f1cfbd35 100644 (file)
@@ -60,7 +60,7 @@ logging_send_syslog_msg(apm_t)
 # mknod: controlling an orderly resume of PCMCIA requires creating device
 # nodes 254,{0,1,2} for some reason.
 allow apmd_t self:capability { sys_admin sys_nice sys_time kill mknod };
-dontaudit apmd_t self:capability { setuid dac_override dac_read_search sys_ptrace sys_tty_config };
+dontaudit apmd_t self:capability { setuid dac_override dac_read_search sys_tty_config };
 allow apmd_t self:process { signal_perms getsession };
 allow apmd_t self:fifo_file rw_fifo_file_perms;
 allow apmd_t self:netlink_socket create_socket_perms;
index bdefbe15e0ce88904acdce780a9764dfec855a3e..980cd5771ef7276be223a55e890008fc018389d9 100644 (file)
@@ -137,9 +137,13 @@ interface(`arpwatch_admin',`
                type arpwatch_initrc_exec_t;
        ')
 
-       allow $1 arpwatch_t:process { ptrace signal_perms };
+       allow $1 arpwatch_t:process signal_perms;
        ps_process_pattern($1, arpwatch_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 arpwatch_t:process ptrace;
+       ')
+
        arpwatch_initrc_domtrans($1)
        domain_system_change_exemption($1)
        role_transition $2 arpwatch_initrc_exec_t system_r;
index c1a2b964e63cb747277ae546d6f2d0081489e87c..a04a8af89d8c2949987901df52d03cba29477203 100644 (file)
@@ -64,9 +64,13 @@ interface(`asterisk_admin',`
                type asterisk_initrc_exec_t;
        ')
 
-       allow $1 asterisk_t:process { ptrace signal_perms };
+       allow $1 asterisk_t:process signal_perms;
        ps_process_pattern($1, asterisk_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 asterisk_t:process ptrace;
+       ')
+
        init_labeled_script_domtrans($1, asterisk_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 asterisk_initrc_exec_t system_r;
index 68b85e29d7774b8b294e28f0b01d7505f0f71343..4f2a53f4ce4b242cc9bb4ae09760de25d016df37 100644 (file)
@@ -150,9 +150,13 @@ interface(`automount_admin',`
                type automount_var_run_t, automount_initrc_exec_t;
        ')
 
-       allow $1 automount_t:process { ptrace signal_perms };
+       allow $1 automount_t:process signal_perms;
        ps_process_pattern($1, automount_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 automount_t:process ptrace;
+       ')
+
        init_labeled_script_domtrans($1, automount_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 automount_initrc_exec_t system_r;
index c6b0498da1e807053f8ee0b57dd97272d0914e5a..c7a0db2cc8b692bd688ad9847bace429391ab16c 100644 (file)
@@ -154,9 +154,13 @@ interface(`avahi_admin',`
                type avahi_t, avahi_var_run_t, avahi_initrc_exec_t;
        ')
 
-       allow $1 avahi_t:process { ptrace signal_perms };
+       allow $1 avahi_t:process signal_perms;
        ps_process_pattern($1, avahi_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 avahi_t:process ptrace;
+       ')
+
        init_labeled_script_domtrans($1, avahi_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 avahi_initrc_exec_t system_r;
index 7802b7b412ee1825fba33dc4edab06468925949c..7cc67eca48a3b65a9e9386655ce25d68d79b494c 100644 (file)
@@ -408,12 +408,20 @@ interface(`bind_admin',`
                type dnssec_t, ndc_t, named_keytab_t;
        ')
 
-       allow $1 named_t:process { ptrace signal_perms };
+       allow $1 named_t:process signal_perms;
        ps_process_pattern($1, named_t)
 
-       allow $1 ndc_t:process { ptrace signal_perms };
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 named_t:process ptrace;
+       ')
+
+       allow $1 ndc_t:process signal_perms;
        ps_process_pattern($1, ndc_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 ndc_t:process ptrace;
+       ')
+
        bind_run_ndc($1, $2)
 
        init_labeled_script_domtrans($1, named_initrc_exec_t)
index de0bd679341c683e40edad613668851d93aaeb6a..1df2048f4da2ada9f7a6fef137136562c832e8db 100644 (file)
@@ -43,9 +43,13 @@ interface(`bitlbee_admin',`
                type bitlbee_initrc_exec_t;
        ')
 
-       allow $1 bitlbee_t:process { ptrace signal_perms };
+       allow $1 bitlbee_t:process signal_perms;
        ps_process_pattern($1, bitlbee_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 bitlbee_t:process ptrace;
+       ')
+
        init_labeled_script_domtrans($1, bitlbee_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 bitlbee_initrc_exec_t system_r;
index 4aa8fb17ff1d3f37849beb25de60be688b6266a5..351354ea85a1556ff0387da5b678203da7e14627 100644 (file)
@@ -28,7 +28,11 @@ interface(`bluetooth_role',`
 
        # allow ps to show cdrecord and allow the user to kill it
        ps_process_pattern($2, bluetooth_helper_t)
-       allow $2 bluetooth_helper_t:process { ptrace signal_perms };
+       allow $2 bluetooth_helper_t:process signal_perms;
+
+       tunable_policy(`deny_ptrace',`',`
+               allow $2 bluetooth_helper_t:process ptrace;
+       ')
 
        manage_dirs_pattern($2, bluetooth_helper_tmp_t, bluetooth_helper_tmp_t)
        manage_files_pattern($2, bluetooth_helper_tmp_t, bluetooth_helper_tmp_t)
@@ -220,9 +224,13 @@ interface(`bluetooth_admin',`
                type bluetooth_conf_t, bluetooth_conf_rw_t;
        ')
 
-       allow $1 bluetooth_t:process { ptrace signal_perms };
+       allow $1 bluetooth_t:process signal_perms;
        ps_process_pattern($1, bluetooth_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 bluetooth_t:process ptrace;
+       ')
+
        init_labeled_script_domtrans($1, bluetooth_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 bluetooth_initrc_exec_t system_r;
index fa9b95a927d1dcec66bd518190464993033425fc..9fe3f9ef7de4c6858a347f8d9fd047c98714095e 100644 (file)
@@ -137,9 +137,13 @@ interface(`boinc_admin',`
                type boinc_t, boinc_initrc_exec_t, boinc_var_lib_t;
        ')
 
-       allow $1 boinc_t:process { ptrace signal_perms };
+       allow $1 boinc_t:process signal_perms;
        ps_process_pattern($1, boinc_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 boic_t:process ptrace;
+       ')
+
        boinc_initrc_domtrans($1)
        domain_system_change_exemption($1)
        role_transition $2 boinc_initrc_exec_t system_r;
index e841806a51017514a51d94281458c2dd3e8850f0..61db9092df187a590ff23cd565542fcc2e78b1a3 100644 (file)
@@ -121,9 +121,13 @@ mta_send_mail(boinc_t)
 domtrans_pattern(boinc_t, boinc_project_var_lib_t, boinc_project_t)
 allow boinc_t boinc_project_t:process sigkill;
 
-allow boinc_project_t self:process { ptrace setpgid setsched signal signull sigkill sigstop };
+allow boinc_project_t self:process { setpgid setsched signal signull sigkill sigstop };
 allow boinc_project_t self:process { execmem execstack };
 
+tunable_policy(`deny_ptrace',`',`
+       allow boinc_project_t self:process ptrace;
+')
+
 allow boinc_project_t self:fifo_file rw_fifo_file_perms;
 allow boinc_project_t self:sem create_sem_perms;
 
index 140f520c65d66d4b1c4fbeb01fc736c30b46b364..954e726d2b2e4fc27fc1dbba2c3c74517ad06fe4 100644 (file)
@@ -62,9 +62,13 @@ interface(`bugzilla_admin',`
         type httpd_bugzilla_htaccess_t, httpd_bugzilla_tmp_t;
     ')
 
-       allow $1 httpd_bugzilla_script_t:process { ptrace signal_perms };
+       allow $1 httpd_bugzilla_script_t:process signal_perms;
        ps_process_pattern($1, httpd_bugzilla_script_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 httpd_bugzilla_script_t:process ptrace;
+       ')
+
        files_list_tmp($1)
        admin_pattern($1, httpd_bugzilla_tmp_t)
 
index 564acbde44fdefadcd7b9c4ac51d62f0b3498518..512fcb9401e9c7b12be697fa0f04fa032b750b36 100644 (file)
@@ -336,9 +336,13 @@ interface(`callweaver_admin',`
                type callweaver_spool_t;
        ')
 
-       allow $1 callweaver_t:process { ptrace signal_perms };
+       allow $1 callweaver_t:process signal_perms;
        ps_process_pattern($1, callweaver_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 callweaver_t:process ptrace;
+       ')
+
        callweaver_initrc_domtrans($1)
        domain_system_change_exemption($1)
        role_transition $2 callweaver_initrc_exec_t system_r;
index 4a26b0cbedc5abf1bfb4f493ba55cb8f0282f73e..00b64dcb7505ab404234f0bff64b02d436c73fb7 100644 (file)
@@ -42,9 +42,13 @@ interface(`canna_admin',`
                type canna_var_run_t, canna_initrc_exec_t;
        ')
 
-       allow $1 canna_t:process { ptrace signal_perms };
+       allow $1 canna_t:process signal_perms;
        ps_process_pattern($1, canna_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 canna_t:process ptrace;
+       ')
+
        init_labeled_script_domtrans($1, canna_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 canna_initrc_exec_t system_r;
index ffd0da52e461d21654caf12973c9431b85b1a3b8..d61f61f2baa4b39f8488e6a2fe9aaf64ad09501d 100644 (file)
@@ -119,9 +119,13 @@ interface(`certmaster_admin',`
                type certmaster_etc_rw_t, certmaster_var_log_t, certmaster_initrc_exec_t;
        ')
 
-       allow $1 certmaster_t:process { ptrace signal_perms };
+       allow $1 certmaster_t:process signal_perms;
        ps_process_pattern($1, certmaster_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 certmaster_t:process ptrace;
+       ')
+
        init_labeled_script_domtrans($1, certmaster_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 certmaster_initrc_exec_t system_r;
index d664be8fa31790171d88016117a2d7ecfffbc110..e238dfded91ed06652309411a3e9f6514044b074 100644 (file)
@@ -158,7 +158,11 @@ interface(`certmonger_admin',`
        ')
 
        ps_process_pattern($1, certmonger_t)
-       allow $1 certmonger_t:process { ptrace signal_perms };
+       allow $1 certmonger_t:process signal_perms;
+
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 certmonger_t:process ptrace;
+       ')
 
        # Allow certmonger_t to restart the apache service
        certmonger_initrc_domtrans($1)
index e5cbcefda396c5779c4a0dbc26c04fa545201358..225e70cbdadda5047bfbf8775cb20741cb18aa55 100644 (file)
@@ -171,15 +171,27 @@ interface(`cgroup_admin',`
                type cgrules_etc_t, cgclear_t;
        ')
 
-       allow $1 cgclear_t:process { ptrace signal_perms };
+       allow $1 cgclear_t:process signal_perms;
        ps_process_pattern($1, cgclear_t)
 
-       allow $1 cgconfig_t:process { ptrace signal_perms };
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 cglear_t:process ptrace;
+       ')
+
+       allow $1 cgconfig_t:process signal_perms;
        ps_process_pattern($1, cgconfig_t)
 
-       allow $1 cgred_t:process { ptrace signal_perms };
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 cgconfig_t:process ptrace;
+       ')
+
+       allow $1 cgred_t:process signal_perms;
        ps_process_pattern($1, cgred_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 cgred_t:process ptrace;
+       ')
+
        admin_pattern($1, cgconfig_etc_t)
        admin_pattern($1, cgrules_etc_t)
        files_list_etc($1)
index 7617c533f21728e0c4ffcfbcf879550505a3f837..084063bc735c4cad9be69d58f9face1126a2389d 100644 (file)
@@ -76,7 +76,8 @@ fs_unmount_cgroup(cgconfig_t)
 # cgred personal policy.
 #
 
-allow cgred_t self:capability { chown fsetid net_admin sys_admin sys_ptrace dac_override };
+allow cgred_t self:capability { chown fsetid net_admin sys_admin dac_override };
+
 allow cgred_t self:netlink_socket { write bind create read };
 allow cgred_t self:unix_dgram_socket { write create connect };
 
index 714f905d572396a9fe5db2521957fa80a2289ebd..4d21fbd67a1a01856dedf953d75eedce402e7234 100644 (file)
@@ -217,9 +217,13 @@ interface(`chronyd_admin',`
                type chronyd_keys_t;
        ')
 
-       allow $1 chronyd_t:process { ptrace signal_perms };
+       allow $1 chronyd_t:process signal_perms;
        ps_process_pattern($1, chronyd_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 chronyd_t:process ptrace;
+       ')
+
        init_labeled_script_domtrans($1, chronyd_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 chronyd_initrc_exec_t system_r;
index 9eb2461e479e75e4eb78ab8d266f144892aad3db..717fb8d813c49eacc631a295f9033a1c67d837b0 100644 (file)
@@ -176,13 +176,19 @@ interface(`clamav_admin',`
                type freshclam_t, freshclam_var_log_t;
        ')
 
-       allow $1 clamd_t:process { ptrace signal_perms };
+       allow $1 clamd_t:process signal_perms;
        ps_process_pattern($1, clamd_t)
 
-       allow $1 clamscan_t:process { ptrace signal_perms };
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 clamd_t:process ptrace;
+               allow $1 clamscan_t:process ptrace;
+               allow $1 freshclam_t:process ptrace;
+       ')
+
+       allow $1 clamscan_t:process signal_perms;
        ps_process_pattern($1, clamscan_t)
 
-       allow $1 freshclam_t:process { ptrace signal_perms };
+       allow $1 freshclam_t:process signal_perms;
        ps_process_pattern($1, freshclam_t)
 
        init_labeled_script_domtrans($1, clamd_initrc_exec_t)
index bed51fba2e2573340c47b9a85febca40eb34ffaf..126b293188a5e3c89da1ccee5f68f84e283abdc3 100644 (file)
@@ -101,9 +101,13 @@ interface(`cmirrord_admin',`
                type cmirrord_t, cmirrord_initrc_exec_t, cmirrord_var_run_t;
        ')
 
-       allow $1 cmirrord_t:process { ptrace signal_perms };
+       allow $1 cmirrord_t:process signal_perms;
        ps_process_pattern($1, cmirrord_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 cmorrord_t:process ptrace;
+       ')
+
        cmirrord_initrc_domtrans($1)
        domain_system_change_exemption($1)
        role_transition $2 cmirrord_initrc_exec_t system_r;
index 82306eb64505954ac2677de7a996f439e1f88646..11f6a31d9d13d986ee9d4ba5651196db4bf3668c 100644 (file)
@@ -189,9 +189,13 @@ interface(`cobblerd_admin',`
                type httpd_cobbler_content_ra_t, httpd_cobbler_content_rw_t;
        ')
 
-       allow $1 cobblerd_t:process { ptrace signal_perms };
+       allow $1 cobblerd_t:process signal_perms;
        ps_process_pattern($1, cobblerd_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 cobblerd_t:process ptrace;
+       ')
+
        files_list_etc($1)
        admin_pattern($1, cobbler_etc_t)
 
index c6dcdfe4a8526a4b1ab69cdd1341724494361a03..1328a63c6368f79de1482aedccbd315f525fc5e4 100644 (file)
@@ -60,7 +60,7 @@ files_tmp_file(cobbler_tmp_t)
 #
 
 allow cobblerd_t self:capability { chown dac_override fowner fsetid sys_nice };
-dontaudit cobblerd_t self:capability { sys_ptrace sys_tty_config };
+dontaudit cobblerd_t self:capability sys_tty_config;
 
 allow cobblerd_t self:process { getsched setsched signal };
 allow cobblerd_t self:fifo_file rw_fifo_file_perms;
index ed13d1e4104a076e461fea1289d60a361513266e..40a0157a2a486e5a1981ed751a96e24a899f6c83 100644 (file)
@@ -142,9 +142,13 @@ interface(`collectd_admin',`
        type collectd_var_lib_t;
        ')
 
-       allow $1 collectd_t:process { ptrace signal_perms };
+       allow $1 collectd_t:process signal_perms;
        ps_process_pattern($1, collectd_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 collectd_t:process ptrace;
+       ')
+
        collectd_initrc_domtrans($1)
        domain_system_change_exemption($1)
        role_transition $2 collectd_initrc_exec_t system_r;
index 5eaa496af044ad4ae900a6e4e42244593fd9fd45..5b322ca88f9290c2a4186c9ebb1184b7f462ac07 100644 (file)
@@ -23,7 +23,8 @@ files_tmpfs_file(consolekit_tmpfs_t)
 # consolekit local policy
 #
 
-allow consolekit_t self:capability { chown setuid setgid sys_tty_config dac_override sys_nice sys_ptrace };
+allow consolekit_t self:capability { chown setuid setgid sys_tty_config dac_override sys_nice };
+
 allow consolekit_t self:process { getsched signal };
 allow consolekit_t self:fifo_file rw_fifo_file_perms;
 allow consolekit_t self:unix_stream_socket create_stream_socket_perms;
@@ -145,6 +146,8 @@ optional_policy(`
 
 optional_policy(`
        #reading .Xauthity
-       unconfined_ptrace(consolekit_t)
+       tunable_policy(`deny_ptrace',`',`
+               unconfined_ptrace(consolekit_t)
+       ')
        unconfined_stream_connect(consolekit_t)
 ')
index a2e6830753013a9ade4b62ac5848cada2a07341a..db158cc33fa0f820cdd8c82598df6060c228422a 100644 (file)
@@ -101,9 +101,13 @@ interface(`corosyncd_admin',`
                type corosync_initrc_exec_t;
        ')
 
-       allow $1 corosync_t:process { ptrace signal_perms };
+       allow $1 corosync_t:process signal_perms;
        ps_process_pattern($1, corosync_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 corosync_t:process ptrace;
+       ')
+
        init_labeled_script_domtrans($1, corosync_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 corosync_initrc_exec_t system_r;
index b55d7bfc09dd300c6a120ed14f01cfdb3e17e082..0f56485b623639eb710759423ed60886a4b4dff2 100644 (file)
@@ -33,7 +33,7 @@ files_pid_file(corosync_var_run_t)
 # corosync local policy
 #
 
-allow corosync_t self:capability { dac_override setuid sys_nice sys_ptrace sys_resource ipc_lock };
+allow corosync_t self:capability { dac_override setuid sys_nice sys_resource ipc_lock };
 allow corosync_t self:process { setpgid setrlimit setsched signal signull };
 
 allow corosync_t self:fifo_file rw_fifo_file_perms;
index 445ced48b44cb2ef36a2021137754df493a66d8c..7a0913c9743fc7968cb528db999af0b4b0f2c540 100644 (file)
@@ -140,7 +140,11 @@ interface(`cron_role',`
 
        # crontab shows up in user ps
        ps_process_pattern($2, crontab_t)
-       allow $2 crontab_t:process { ptrace signal_perms };
+       allow $2 crontab_t:process signal_perms;
+
+       tunable_policy(`deny_ptrace',`',`
+               allow $2 crontab_t:process ptrace;
+       ')
 
        # Run helper programs as the user domain
        #corecmd_bin_domtrans(crontab_t, $2)
@@ -183,7 +187,10 @@ interface(`cron_unconfined_role',`
 
        # cronjob shows up in user ps
        ps_process_pattern($2, unconfined_cronjob_t)
-       allow $2 unconfined_cronjob_t:process { ptrace signal_perms };
+       allow $2 unconfined_cronjob_t:process signal_perms;
+       tunable_policy(`deny_ptrace',`',`
+               allow $2 unconfined_cronjob_t:process ptrace;
+       ')
 
        optional_policy(`
                gen_require(`
@@ -230,7 +237,10 @@ interface(`cron_admin_role',`
 
        # crontab shows up in user ps
        ps_process_pattern($2, admin_crontab_t)
-       allow $2 admin_crontab_t:process { ptrace signal_perms };
+       allow $2 admin_crontab_t:process signal_perms;
+       tunable_policy(`deny_ptrace',`',`
+               allow $2 admin_crontab_t:process ptrace;
+       ')
 
        # Run helper programs as the user domain
        #corecmd_bin_domtrans(admin_crontab_t, $2)
index 130b0bd7fb7328907b8d4e7dd61819ede852b1b6..258a3d7ffb07bd6fcc66b3b19b06e1c4d7e1d7e3 100644 (file)
@@ -355,7 +355,6 @@ optional_policy(`
 #
 
 allow system_cronjob_t self:capability { dac_override dac_read_search chown setgid setuid fowner net_bind_service fsetid sys_nice };
-dontaudit system_cronjob_t self:capability sys_ptrace;
 
 allow system_cronjob_t self:process { signal_perms getsched setsched };
 allow system_cronjob_t self:fifo_file rw_fifo_file_perms;
index 1171f34e6c691a1ab12f2e8c832e71ceaf675088..5c1e8b09fcc9691ad4349b9ea06adc50d1348961 100644 (file)
@@ -236,8 +236,11 @@ interface(`ctdbd_admin',`
                type ctdbd_log_t, ctdbd_var_lib_t, ctdbd_var_run_t;
        ')
 
-       allow $1 ctdbd_t:process { ptrace signal_perms };
+       allow $1 ctdbd_t:process signal_perms;
        ps_process_pattern($1, ctdbd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 ctdbd_t:process ptrace;
+       ')
 
        ctdbd_initrc_domtrans($1)
        domain_system_change_exemption($1)
index 5a15b824ad24affbd26acc2b2f50402aad6a8d2d..284fbaead16619442557a20bb702f7f15170c3dc 100644 (file)
@@ -33,7 +33,7 @@ files_pid_file(ctdbd_var_run_t)
 # ctdbd local policy
 #
 
-allow ctdbd_t self:capability { chown ipc_lock net_admin net_raw sys_nice sys_ptrace };
+allow ctdbd_t self:capability { chown ipc_lock net_admin net_raw sys_nice };
 allow ctdbd_t self:process { setpgid signal_perms setsched };
 
 allow ctdbd_t self:fifo_file rw_fifo_file_perms;
index 173cd162d66bd2b897d60b1aeb17bf6b528d129a..2746e6fce916e234b7c5772a4ca6523110b90140 100644 (file)
@@ -327,9 +327,13 @@ interface(`cups_admin',`
                type ptal_var_run_t;
        ')
 
-       allow $1 cupsd_t:process { ptrace signal_perms };
+       allow $1 cupsd_t:process signal_perms;
        ps_process_pattern($1, cupsd_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 cupsd_t:process ptrace;
+       ')
+
        init_labeled_script_domtrans($1, cupsd_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 cupsd_initrc_exec_t system_r;
index 6ca9a6b63e0dc0f6bb599777331f5f61c7cdef0b..5da88b5671eca59535f320fbc82626e9e660cd29 100644 (file)
@@ -80,9 +80,13 @@ interface(`cvs_admin',`
                type cvs_data_t, cvs_var_run_t;
        ')
 
-       allow $1 cvs_t:process { ptrace signal_perms };
+       allow $1 cvs_t:process signal_perms;
        ps_process_pattern($1, cvs_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 cvs_t:process ptrace;
+       ')
+
        # Allow cvs_t to restart the apache service
        init_labeled_script_domtrans($1, cvs_initrc_exec_t)
        domain_system_change_exemption($1)
index e4e86d0a48461aaae7dc8fd2d017356cb7a1ad24..7c306559e250f88959c8a4febcf2a1ce68030a35 100644 (file)
@@ -62,9 +62,13 @@ interface(`cyrus_admin',`
                type cyrus_var_run_t, cyrus_initrc_exec_t;
        ')
 
-       allow $1 cyrus_t:process { ptrace signal_perms };
+       allow $1 cyrus_t:process signal_perms;
        ps_process_pattern($1, cyrus_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 cyrus_t:process ptrace;
+       ')
+
        init_labeled_script_domtrans($1, cyrus_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 cyrus_initrc_exec_t system_r;
index 843d5fdf894795642f36e8019d33eb8338f4e8fa..3558f18126f9759187b00d60fead6ba2e5786489 100644 (file)
@@ -71,7 +71,11 @@ template(`dbus_role_template',`
        domtrans_pattern($3, dbusd_exec_t, $1_dbusd_t)
 
        ps_process_pattern($3, $1_dbusd_t)
-       allow $3 $1_dbusd_t:process { ptrace signal_perms };
+       allow $3 $1_dbusd_t:process signal_perms;
+
+       tunable_policy(`deny_ptrace',`',`
+               allow $3 $1_dbusd_t:process ptrace;
+       ')
 
        # cjp: this seems very broken
        corecmd_bin_domtrans($1_dbusd_t, $1_t)
index da508f46b6ea7eb1352c9c90da004c60473e972c..64742c64dd03a7ccc7ebc01162d53b16fa1be335 100644 (file)
@@ -68,9 +68,13 @@ interface(`ddclient_admin',`
                type ddclient_var_run_t;
        ')
 
-       allow $1 ddclient_t:process { ptrace signal_perms };
+       allow $1 ddclient_t:process signal_perms;
        ps_process_pattern($1, ddclient_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 ddclient_t:process ptrace;
+       ')
+
        init_labeled_script_domtrans($1, ddclient_initrc_exec_t)
        domain_system_change_exemption($1)
        role_transition $2 ddclient_initrc_exec_t system_r;
index 9c9e65c320859957d248af5e7ee286ab21af6b0e..3a57eb92503d024d4820def7c5dbcf117f045e92 100644 (file)
@@ -67,9 +67,13 @@ interface(`denyhosts_admin',`
                type denyhosts_var_log_t, denyhosts_initrc_exec_t;
        ')
 
-       allow $1 denyhosts_t:process { ptrace signal_perms };
+       allow $1 denyhosts_t:process signal_perms;
        ps_process_pattern($1, denyhosts_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 denyhosts_t:process ptrace;
+       ')
+
        denyhosts_initrc_domtrans($1)
        domain_system_change_exemption($1)
        role_transition $2 denyhosts_initrc_exec_t system_r;
index 5001351326913899074ca5efdd7d2b000e8e9da6..b62f5a91f1bf5c4d2c6be197ebfafe77f7f6dc0c 100644 (file)
@@ -308,13 +308,18 @@ interface(`devicekit_admin',`
                type devicekit_var_lib_t, devicekit_var_run_t, devicekit_tmp_t;
        ')
 
-       allow $1 devicekit_t:process { ptrace signal_perms };
+       allow $1 devicekit_t:process signal_perms;
        ps_process_pattern($1, devicekit_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 devicekit_t:process ptrace;
+               allow $1 devicekit_disk_t:process ptrace;
+               allow $1 devicekit_power_t:process ptrace;
+       ')
 
-       allow $1 devicekit_disk_t:process { ptrace signal_perms };
+       allow $1 devicekit_disk_t:process signal_perms;
        ps_process_pattern($1, devicekit_disk_t)
 
-       allow $1 devicekit_power_t:process { ptrace signal_perms };
+       allow $1 devicekit_power_t:process signal_perms;
        ps_process_pattern($1, devicekit_power_t)
 
        admin_pattern($1, devicekit_tmp_t)
index 8cc1f093b9305acac181822431f81abb3f6d7b4a..f277ea622a907cf3910a73561787185dc21bbec1 100644 (file)
@@ -65,7 +65,8 @@ optional_policy(`
 # DeviceKit disk local policy
 #
 
-allow devicekit_disk_t self:capability { chown setuid setgid dac_override fowner fsetid net_admin sys_admin sys_nice sys_ptrace sys_rawio };
+allow devicekit_disk_t self:capability { chown setuid setgid dac_override fowner fsetid net_admin sys_admin sys_nice sys_rawio };
+
 allow devicekit_disk_t self:process { getsched signal_perms };
 allow devicekit_disk_t self:fifo_file rw_fifo_file_perms;
 allow devicekit_disk_t self:netlink_kobject_uevent_socket create_socket_perms;
@@ -199,7 +200,7 @@ optional_policy(`
 # DeviceKit-Power local policy
 #
 
-allow devicekit_power_t self:capability { dac_override net_admin sys_admin sys_tty_config sys_nice sys_ptrace };
+allow devicekit_power_t self:capability { dac_override net_admin sys_admin sys_tty_config sys_nice };
 allow devicekit_power_t self:process { getsched signal_perms };
 allow devicekit_power_t self:fifo_file rw_fifo_file_perms;
 allow devicekit_power_t self:unix_dgram_socket create_socket_perms;
index 7a18800546001c07d36db2f0ce4e2590c73503ed..8eec089325c6669c56dc42b20414a17f75cf9c3a 100644 (file)
@@ -105,8 +105,11 @@ interface(`dhcpd_admin',`
                type dhcpd_var_run_t, dhcpd_initrc_exec_t;
        ')
 
-       allow $1 dhcpd_t:process { ptrace signal_perms };
+       allow $1 dhcpd_t:process signal_perms;
        ps_process_pattern($1, dhcpd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 dhcpd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, dhcpd_initrc_exec_t)
        domain_system_change_exemption($1)
index a0d23ce1ac8359e0166dacebccf19b7d43723c2d..83a7ca5239ff5658b3d4613b7cf787d0c9c21a97 100644 (file)
@@ -38,8 +38,11 @@ interface(`dictd_admin',`
                type dictd_var_run_t, dictd_initrc_exec_t;
        ')
 
-       allow $1 dictd_t:process { ptrace signal_perms };
+       allow $1 dictd_t:process signal_perms;
        ps_process_pattern($1, dictd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 dictd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, dictd_initrc_exec_t)
        domain_system_change_exemption($1)
index 982c0ea9eb10186055d506014cb52c091b6d7c1d..144cbb781860a07c6eb758fd9fab95ead6c423a3 100644 (file)
@@ -298,8 +298,11 @@ interface(`dnsmasq_admin',`
                type dnsmasq_initrc_exec_t;
        ')
 
-       allow $1 dnsmasq_t:process { ptrace signal_perms };
+       allow $1 dnsmasq_t:process signal_perms;
        ps_process_pattern($1, dnsmasq_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 dnsmasq_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, dnsmasq_initrc_exec_t)
        domain_system_change_exemption($1)
index 673f1854b820652bf4ebdbc9b9d020571115b02d..0557be0a0f6a70c4446a10c262edf87608079cca 100644 (file)
@@ -119,8 +119,11 @@ interface(`dovecot_admin',`
                type dovecot_cert_t, dovecot_passwd_t, dovecot_initrc_exec_t;
        ')
 
-       allow $1 dovecot_t:process { ptrace signal_perms };
+       allow $1 dovecot_t:process signal_perms;
        ps_process_pattern($1, dovecot_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 dovecot_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, dovecot_initrc_exec_t)
        domain_system_change_exemption($1)
index 63f11d9e8fedb618e9396eaa5645214c1b8af397..f92ef50897d4bef40039459e37094382141b8aeb 100644 (file)
@@ -120,8 +120,11 @@ interface(`drbd_admin',`
                 type drbd_var_lib_t;
        ')
 
-       allow $1 drbd_t:process { ptrace signal_perms };
+       allow $1 drbd_t:process signal_perms;
        ps_process_pattern($1, drbd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 drbd_t:process ptrace;
+       ')
 
        files_search_var_lib($1)
        admin_pattern($1, drbd_var_lib_t)
index d7a7118338ced052abca5bb671d1f7fdf89d8315..a446210f0dcd31c3ba605cc854a084e599c11ea0 100644 (file)
@@ -244,8 +244,11 @@ interface(`dspam_admin',`
                type dspam_var_run_t;
        ')
 
-       allow $1 dspam_t:process { ptrace signal_perms };
+       allow $1 dspam_t:process signal_perms;
        ps_process_pattern($1, dspam_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 dspam_t:process ptrace;
+       ')
 
        dspam_initrc_domtrans($1)
        domain_system_change_exemption($1)
index 885cd43c0fb97d38955bbd831770b854a008204d..fb2fd2f7bb76be0c80ae0576d0b445fcffded515 100644 (file)
@@ -260,8 +260,11 @@ interface(`exim_admin',`
                type exim_tmp_t, exim_spool_t, exim_var_run_t;
        ')
 
-       allow $1 exim_t:process { ptrace signal_perms };
+       allow $1 exim_t:process signal_perms;
        ps_process_pattern($1, exim_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 exim_t:process ptrace;
+       ')
 
        exim_initrc_domtrans($1)
        domain_system_change_exemption($1)
index 338e5bf83b5faa2da3ff75e1ef8b09c27ba9e856..18bdd33e89d72975ee4b718a4223c3a48a7d22a8 100644 (file)
@@ -199,8 +199,11 @@ interface(`fail2ban_admin',`
                type fail2ban_client_t;
        ')
 
-       allow $1 { fail2ban_t fail2ban_client_t }:process { ptrace signal_perms };
+       allow $1 { fail2ban_t fail2ban_client_t }:process signal_perms;
        ps_process_pattern($1, { fail2ban_t fail2ban_client_t })
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 { fail2ban_t fail2ban_client_t }:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, fail2ban_initrc_exec_t)
        domain_system_change_exemption($1)
index d8272742cb5b914af031504fcb25684034e80cf7..f25a1cb0935607a427d9aed79e5a04a169e574d5 100644 (file)
@@ -81,8 +81,11 @@ interface(`fcoemon_admin',`
        type fcoemon_var_run_t;
        ')
 
-       allow $1 fcoemon_t:process { ptrace signal_perms };
+       allow $1 fcoemon_t:process signal_perms;
        ps_process_pattern($1, fcoemon_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 fcoemon_t:process ptrace;
+       ')
 
        files_search_pids($1)
        admin_pattern($1, fcoemon_var_run_t)
index 7d64c0af44159062ae2c47fae8d4312106b814cf..8629354820b5b4d54ea9ff129b7496203f6655ec 100644 (file)
@@ -18,8 +18,11 @@ interface(`fetchmail_admin',`
                type fetchmail_var_run_t;
        ')
 
-       allow $1 fetchmail_t:process { ptrace signal_perms };
+       allow $1 fetchmail_t:process signal_perms;
        ps_process_pattern($1, fetchmail_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 fetchmail_t:process ptrace;
+       ')
 
        files_list_etc($1)
        admin_pattern($1, fetchmail_etc_t)
index 84d17680a9ccec5fcdc9869e3dd4e058d75a2499..06462d4392eb3a634170d95fed48a4674e20dd0d 100644 (file)
@@ -62,8 +62,11 @@ interface(`firewalld_admin',`
                type firewalld_initrc_exec_t;
        ')
 
-       allow $1 firewalld_t:process { ptrace signal_perms };
+       allow $1 firewalld_t:process signal_perms;
        ps_process_pattern($1, firewalld_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 firewalld_t:process ptrace;
+       ')
 
        firewalld_initrc_domtrans($1)
        domain_system_change_exemption($1)
index 899feaf3acdaad784d7ab6d8b266a3dfd99fd723..8512254d2a1cda77311f4dd37f59f281528e7670 100644 (file)
@@ -17,7 +17,8 @@ files_type(fprintd_var_lib_t)
 # Local policy
 #
 
-allow fprintd_t self:capability { sys_nice sys_ptrace };
+allow fprintd_t self:capability sys_nice;
+
 allow fprintd_t self:fifo_file rw_fifo_file_perms;
 allow fprintd_t self:process { getsched setsched signal };
 
index 7da726768fe763a9db68a5f27826b486be4814ff..41c2c99e8c549da6045bad3b1ca352511f608010 100644 (file)
@@ -237,8 +237,11 @@ interface(`ftp_admin',`
                type ftpd_initrc_exec_t;
        ')
 
-       allow $1 ftpd_t:process { ptrace signal_perms };
+       allow $1 ftpd_t:process signal_perms;
        ps_process_pattern($1, ftpd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 ftpd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, ftpd_initrc_exec_t)
        domain_system_change_exemption($1)
index 8e836096ed45c4a45ac4c6ffeec36d2ffd11fc90..27945d10f937b2f008fac843be753fd97295b0f3 100644 (file)
@@ -42,8 +42,11 @@ interface(`git_session_role',`
 
        domtrans_pattern($2, gitd_exec_t, git_session_t)
 
-       allow $2 git_session_t:process { ptrace signal_perms };
+       allow $2 git_session_t:process signal_perms;
        ps_process_pattern($2, git_session_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $2 git_session_t:process ptrace;
+       ')
 ')
 
 ########################################
index 3b1870a71ef6750e14ad1d79e5aebde2bfde71c6..8cc6d17f5807594f2a6d0ef553166c06dae38131 100644 (file)
@@ -245,10 +245,14 @@ interface(`glance_admin',`
                type glance_api_initrc_exec_t;
        ')
 
-       allow $1 glance_registry_t:process { ptrace signal_perms };
+       allow $1 glance_registry_t:process signal_perms;
        ps_process_pattern($1, glance_registry_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 glance_registry_t:process ptrace;
+               allow $1 glance_api_t:process ptrace;
+       ')
 
-       allow $1 glance_api_t:process { ptrace signal_perms };
+       allow $1 glance_api_t:process signal_perms;
        ps_process_pattern($1, glance_api_t)
 
        init_labeled_script_domtrans($1, glance_registry_initrc_exec_t)
index 4978f18eb7874a84c1461fab4c440f1a25044b10..a1d38a37c6609f29fb0adb8740525dc08ebce6cc 100644 (file)
@@ -14,7 +14,7 @@ dbus_system_domain(gnomeclock_t, gnomeclock_exec_t)
 # gnomeclock local policy
 #
 
-allow gnomeclock_t self:capability { sys_nice sys_time sys_ptrace };
+allow gnomeclock_t self:capability { sys_nice sys_time };
 allow gnomeclock_t self:process { getattr getsched signal };
 allow gnomeclock_t self:fifo_file rw_fifo_file_perms;
 allow gnomeclock_t self:unix_stream_socket create_stream_socket_perms;
index d5795a5e076e8c5e910323f509cd2fdd28dd4365..f38c5dbbe17f3749514f3e3abbaef655c95d8a42 100644 (file)
@@ -25,7 +25,7 @@ files_pid_file(gpsd_var_run_t)
 #
 
 allow gpsd_t self:capability { fowner fsetid setuid setgid sys_nice sys_time sys_tty_config };
-dontaudit gpsd_t self:capability { dac_read_search dac_override sys_ptrace };
+dontaudit gpsd_t self:capability { dac_read_search dac_override };
 allow gpsd_t self:process { setsched signal_perms };
 allow gpsd_t self:shm create_shm_perms;
 allow gpsd_t self:unix_dgram_socket { create_socket_perms sendto };
index 1e40c0027bc817dded41d9ea76d325bdb69ba6bc..734ebd7282dfdc9f4c9d466425b9bda3518d771b 100644 (file)
@@ -222,14 +222,21 @@ interface(`hadoop_role',`
        hadoop_domtrans($2)
        role $1 types hadoop_t;
 
-       allow $2 hadoop_t:process { ptrace signal_perms };
+       allow $2 hadoop_t:process signal_perms;
        ps_process_pattern($2, hadoop_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $2 hadoop_t:process ptrace;
+       ')
 
        hadoop_domtrans_zookeeper_client($2)
        role $1 types zookeeper_t;
 
-       allow $2 zookeeper_t:process { ptrace signal_perms };
+       allow $2 zookeeper_t:process signal_perms;
        ps_process_pattern($2, zookeeper_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $2 zookeeper_t:process ptrace;
+       ')
+
 ')
 
 ########################################
index ce32fe5de871536c0e9bd14ff5d1ecca19d2d06e..4a7bc5638ae1a47774b169af5cd6b97623cb564b 100644 (file)
@@ -70,7 +70,9 @@ interface(`hal_ptrace',`
                type hald_t;
        ')
 
-       allow $1 hald_t:process ptrace;
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 hald_t:process ptrace;
+       ')
 ')
 
 ########################################
index bc086258879a97885d5ef81c6635af9411b36f24..6fdb0cd12fbd4477145042551c200143b9dc5c13 100644 (file)
@@ -64,7 +64,7 @@ typealias hald_var_run_t alias pmtools_var_run_t;
 
 # execute openvt which needs setuid
 allow hald_t self:capability { chown setuid setgid kill net_admin sys_admin sys_nice dac_override dac_read_search mknod sys_rawio sys_tty_config };
-dontaudit hald_t self:capability {sys_ptrace sys_tty_config };
+dontaudit hald_t self:capability sys_tty_config;
 allow hald_t self:process { getsched getattr signal_perms };
 allow hald_t self:fifo_file rw_fifo_file_perms;
 allow hald_t self:unix_stream_socket { create_stream_socket_perms connectto };
index db2d189edb5852f0007c04099202003cace9d9fb..901d9055fcb94092e5d7fa2488b408aef40643b2 100644 (file)
@@ -60,8 +60,11 @@ interface(`hddtemp_admin',`
                type hddtemp_t, hddtemp_etc_t, hddtemp_initrc_exec_t;
        ')
 
-       allow $1 hddtemp_t:process { ptrace signal_perms };
+       allow $1 hddtemp_t:process signal_perms;
        ps_process_pattern($1, hddtemp_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 hddtemp_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, hddtemp_initrc_exec_t)
        domain_system_change_exemption($1)
index 40affd8e79e843595d3b6c3e18b3d8a893c5558e..6ba84cf5f0515ebafe9ff44486d50754485c0e74 100644 (file)
@@ -173,8 +173,11 @@ interface(`icecast_admin',`
                type icecast_t, icecast_initrc_exec_t;
        ')
 
-       allow $1 icecast_t:process { ptrace signal_perms };
+       allow $1 icecast_t:process signal_perms;
        ps_process_pattern($1, icecast_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 icecast_t:process ptrace;
+       ')
 
        # Allow icecast_t to restart the apache service
        icecast_initrc_domtrans($1)
index 766542964cdb6e63d9155b75c7920083313d14fc..fa1b91da8015f33c9f8e4d5b1c946177c7b639f3 100644 (file)
@@ -117,7 +117,7 @@ interface(`ifplugd_admin',`
                type ifplugd_initrc_exec_t;
        ')
 
-       allow $1 ifplugd_t:process { ptrace signal_perms };
+       allow $1 ifplugd_t:process signal_perms;
        ps_process_pattern($1, ifplugd_t)
 
        init_labeled_script_domtrans($1, ifplugd_initrc_exec_t)
index 81c5ca2b57dc85d37dfb85bbe9d3dd2033159dc2..9bf1f1ee6099555528aa910a795c4232c8eadba3 100644 (file)
@@ -26,7 +26,7 @@ files_pid_file(ifplugd_var_run_t)
 #
 
 allow ifplugd_t self:capability { net_admin sys_nice net_bind_service };
-dontaudit ifplugd_t self:capability { sys_tty_config sys_ptrace };
+dontaudit ifplugd_t self:capability sys_tty_config;
 allow ifplugd_t self:process { signal signull };
 allow ifplugd_t self:fifo_file rw_fifo_file_perms;
 allow ifplugd_t self:tcp_socket create_stream_socket_perms;
index a0c625d076716f2e43123013acab4da2a6452064..617f52f16e8fd34e442cce64167747bcbb234241 100644 (file)
@@ -202,8 +202,11 @@ interface(`inn_admin',`
                type innd_initrc_exec_t;
        ')
 
-       allow $1 innd_t:process { ptrace signal_perms };
+       allow $1 innd_t:process signal_perms;
        ps_process_pattern($1, innd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 innd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, innd_initrc_exec_t)
        domain_system_change_exemption($1)
index 81fcd0f465760b593073ba00d9adf47d68b3a9dc..8643cd39c5aa0792e0912818528841c4fdebe17a 100644 (file)
@@ -143,10 +143,14 @@ interface(`jabber_admin',`
                type jabberd_initrc_exec_t, jabberd_router_t;
        ')
 
-       allow $1 jabberd_t:process { ptrace signal_perms };
+       allow $1 jabberd_t:process signal_perms;
        ps_process_pattern($1, jabberd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 jabberd_t:process ptrace;
+               allow $1 jabberd_router_t:process ptrace;
+       ')
 
-       allow $1 jabberd_router_t:process { ptrace signal_perms };
+       allow $1 jabberd_router_t:process signal_perms;
        ps_process_pattern($1, jabberd_router_t)
 
        init_labeled_script_domtrans($1, jabberd_initrc_exec_t)
index 1b608a712da5cfb0d3b7dfc47c5aceb5c2cee990..91ef37639fbb85defd5d23c18938186c488b2efa 100644 (file)
@@ -340,13 +340,18 @@ interface(`kerberos_admin',`
                type krb5kdc_var_run_t, krb5_host_rcache_t;
        ')
 
-       allow $1 kadmind_t:process { ptrace signal_perms };
+       allow $1 kadmind_t:process signal_perms;
        ps_process_pattern($1, kadmind_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 kadmind_t:process ptrace;
+               allow $1 krb5kdc_t:process ptrace;
+               allow $1 kpropd_t:process ptrace;
+       ')
 
-       allow $1 krb5kdc_t:process { ptrace signal_perms };
+       allow $1 krb5kdc_t:process signal_perms;
        ps_process_pattern($1, krb5kdc_t)
 
-       allow $1 kpropd_t:process { ptrace signal_perms };
+       allow $1 kpropd_t:process signal_perms;
        ps_process_pattern($1, kpropd_t)
 
        init_labeled_script_domtrans($1, kerberos_initrc_exec_t)
index dd32883075c5cd7df115a8c5a9626faebab2729b..a0f9bc61575fc0fb0636a6c1b7cc3db61f6ad8bd 100644 (file)
@@ -101,8 +101,11 @@ interface(`kerneloops_admin',`
                type kerneloops_t, kerneloops_initrc_exec_t, kerneloops_tmp_t;
        ')
 
-       allow $1 kerneloops_t:process { ptrace signal_perms };
+       allow $1 kerneloops_t:process signal_perms;
        ps_process_pattern($1, kerneloops_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 kerneloops_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, kerneloops_initrc_exec_t)
        domain_system_change_exemption($1)
index b733e45d0f3600fb36036275b52840a037595f44..5024e1e63ec319c32cf10822f07d9499a877d75e 100644 (file)
@@ -58,8 +58,11 @@ interface(`ksmtuned_admin',`
                type ksmtuned_t, ksmtuned_var_run_t, ksmtuned_initrc_exec_t;
        ')
 
-       allow $1 ksmtuned_t:process { ptrace signal_perms };
+       allow $1 ksmtuned_t:process signal_perms;
        ps_process_pattern($1, ksmtuned_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 ksmtuned_t:process ptrace;
+       ')
 
        files_list_pids($1)
        admin_pattern($1, ksmtuned_var_run_t)
index 2fcd590331052a387e6a110a70a1da78211c5a3b..d845f466ae17988990fe8347ed5b9bf7eaeb2875 100644 (file)
@@ -23,7 +23,7 @@ files_pid_file(ksmtuned_var_run_t)
 # ksmtuned local policy
 #
 
-allow ksmtuned_t self:capability { sys_ptrace sys_tty_config };
+allow ksmtuned_t self:capability sys_tty_config;
 allow ksmtuned_t self:fifo_file rw_file_perms;
 
 manage_dirs_pattern(ksmtuned_t, ksmtuned_log_t, ksmtuned_log_t)
index 5783d58f2038455c5a0756ef75843fca840c1c33..c8b246f6be75fb9546e2014ead495bee17632768 100644 (file)
@@ -101,8 +101,11 @@ interface(`l2tpd_admin',`
        type l2tpd_var_run_t;
        ')
 
-       allow $1 l2tpd_t:process { ptrace signal_perms };
+       allow $1 l2tpd_t:process signal_perms;
        ps_process_pattern($1, l2tpd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 l2tpd_t:process ptrace;
+       ')
 
        l2tpd_initrc_domtrans($1)
        domain_system_change_exemption($1)
index 40b10fa9f7e5870a9a3286a89e29964c388c6292..21b3ecd43846d07a3d935088a5676449e18bafa8 100644 (file)
@@ -174,8 +174,11 @@ interface(`ldap_admin',`
                type slapd_initrc_exec_t;
        ')
 
-       allow $1 slapd_t:process { ptrace signal_perms };
+       allow $1 slapd_t:process signal_perms;
        ps_process_pattern($1, slapd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 slapd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, slapd_initrc_exec_t)
        domain_system_change_exemption($1)
index 418cc8110543325896eccb849bde2b160ad2aac9..cdb25615062f7784254335dc0f37a6f20a17f1ed 100644 (file)
@@ -80,8 +80,11 @@ interface(`lircd_admin',`
                type lircd_initrc_exec_t, lircd_etc_t;
        ')
 
-       allow $1 lircd_t:process { ptrace signal_perms };
+       allow $1 lircd_t:process signal_perms;
        ps_process_pattern($1, lircd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 lircd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, lircd_initrc_exec_t)
        domain_system_change_exemption($1)
index 9d1bac3fb016338ce99ac5db4ef2bfe3420c0957..6550968476374bbbc045b786868906667744d994 100644 (file)
@@ -180,8 +180,11 @@ interface(`lldpad_admin',`
        type lldpad_var_run_t;
        ')
 
-       allow $1 lldpad_t:process { ptrace signal_perms };
+       allow $1 lldpad_t:process signal_perms;
        ps_process_pattern($1, lldpad_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 lldpad_t:process ptrace;
+       ')
 
        lldpad_initrc_domtrans($1)
        domain_system_change_exemption($1)
index ea7dca02a4ea658809c992bc446e36e3fe0e13a2..32824fb5b45211615adbb2c2285c105103569828 100644 (file)
@@ -28,7 +28,10 @@ interface(`lpd_role',`
        dontaudit lpr_t $2:unix_stream_socket { read write };
 
        ps_process_pattern($2, lpr_t)
-       allow $2 lpr_t:process { ptrace signal_perms };
+       allow $2 lpr_t:process signal_perms;
+       tunable_policy(`deny_ptrace',`',`
+               allow $2 lpr_t:process ptrace;
+       ')
 
        optional_policy(`
                cups_read_config($2)
index 39c12cbab34d6bd0da707d9e5746ad2300fd9b8b..bd1d48e4fb74bcd19dd3acbc15322c9663afd073 100644 (file)
@@ -47,8 +47,11 @@ interface(`mailscanner_admin',`
        role_transition $2 mscan_initrc_exec_t system_r;
        allow $2 system_r;
 
-       allow $1 mscan_t:process { ptrace signal_perms };
+       allow $1 mscan_t:process signal_perms;
        ps_process_pattern($1, mscan_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 mscan_t:process ptrace;
+       ')
 
        admin_pattern($1, mscan_etc_t)
        files_list_etc($1)
index 215407c16772d41b58dccd7a1db6146dfa973821..372ed05654c8045e68e2a78a0b98634d76bfc2ec 100644 (file)
@@ -25,9 +25,6 @@ files_pid_file(matahari_var_run_t)
 #
 # matahari_hostd local policy
 #
-
-allow matahari_hostd_t self:capability sys_ptrace;
-
 kernel_read_network_state(matahari_hostd_t)
 
 dev_read_sysfs(matahari_hostd_t)
index 5008a6c146adf29b74425f3d320a60882966eead..ce07b3f2ffd3d2d8fea9074398703dcd64e81feb 100644 (file)
@@ -59,8 +59,11 @@ interface(`memcached_admin',`
                type memcached_t, memcached_initrc_exec_t, memcached_var_run_t;
        ')
 
-       allow $1 memcached_t:process { ptrace signal_perms };
+       allow $1 memcached_t:process signal_perms;
        ps_process_pattern($1, memcached_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 memcached_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, memcached_initrc_exec_t)
        domain_system_change_exemption($1)
index 0615cc5458b4a401ccbbff7807c318cb0a4f6e55..1d76fb871bf402202a2f3335d126ae49818e738f 100644 (file)
@@ -245,7 +245,10 @@ interface(`mock_role',`
        mock_run($2, $1)
 
        ps_process_pattern($2, mock_t)
-       allow $2 mock_t:process { ptrace signal_perms };
+       allow $2 mock_t:process signal_perms;
+       tunable_policy(`deny_ptrace',`',`
+               allow $2 mock_t:process ptrace;
+       ')
 ')
 
 #######################################
@@ -289,10 +292,14 @@ interface(`mock_admin',`
                type mock_build_t, mock_etc_t, mock_tmp_t;
        ')
 
-       allow $1 mock_t:process { ptrace signal_perms };
+       allow $1 mock_t:process signal_perms;
        ps_process_pattern($1, mock_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 mock_t:process ptrace;
+               allow $1 mock_build_t:process ptrace;
+       ')
 
-       allow $1 mock_build_t:process { ptrace signal_perms };
+       allow $1 mock_build_t:process signal_perms;
        ps_process_pattern($1, mock_build_t)
 
        files_list_var_lib($1)
index b7e5bcc2f2e8bcd453d20f654ea6cc3affbe200f..b1107b533615669e6d7c15e5782afbb249929f58 100644 (file)
@@ -41,7 +41,7 @@ files_config_file(mock_etc_t)
 # mock local policy
 #
 
-allow mock_t self:capability { sys_admin setfcap setuid sys_ptrace sys_chroot chown audit_write dac_override sys_nice mknod fsetid setgid fowner };
+allow mock_t self:capability { sys_admin setfcap setuid sys_chroot chown audit_write dac_override sys_nice mknod fsetid setgid fowner };
 allow mock_t self:process { siginh noatsecure signal_perms transition rlimitinh setsched setpgid };
 # Needed because mock can run java and mono withing build environment
 allow mock_t self:process { execmem execstack };
@@ -164,7 +164,7 @@ optional_policy(`
 #
 # mock_build local policy
 #
-allow mock_build_t self:capability { sys_admin setfcap setuid sys_ptrace sys_chroot chown dac_override sys_nice mknod fsetid setgid fowner };
+allow mock_build_t self:capability { sys_admin setfcap setuid sys_chroot chown dac_override sys_nice mknod fsetid setgid fowner };
 dontaudit mock_build_t self:capability audit_write;
 allow mock_build_t self:process { fork setsched setpgid signal_perms };
 allow mock_build_t self:netlink_audit_socket { create_socket_perms nlmsg_relay };
index 88e7330f60b5f4f095b1d9510c662369292d78a6..0b9bf04e74711ea1276079de11ed8bbc1d2abb7f 100644 (file)
@@ -24,8 +24,11 @@ interface(`mojomojo_admin',`
                type httpd_mojomojo_script_exec_t;
        ')
 
-       allow $1 httpd_mojomojo_script_t:process { ptrace signal_perms };
+       allow $1 httpd_mojomojo_script_t:process signal_perms;
        ps_process_pattern($1, httpd_mojomojo_script_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 httpd_mojomo_script_t:process ptrace;
+       ')
 
        files_list_tmp($1)
        admin_pattern($1, httpd_mojomojo_tmp_t)
index d72276ffce5d844677ca6d0b0e8884ac3123100b..cb8c56360519c8dbc7840a92d3f5c01613ae7403 100644 (file)
@@ -244,8 +244,11 @@ interface(`mpd_admin',`
                type mpd_tmpfs_t;
        ')
 
-       allow $1 mpd_t:process { ptrace signal_perms };
+       allow $1 mpd_t:process signal_perms;
        ps_process_pattern($1, mpd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 mpd_t:process ptrace;
+       ')
 
        mpd_initrc_domtrans($1)
        domain_system_change_exemption($1)
index fec6a97c2f72ac53f07d27e672a9f043f77f2500..7c097eccf7ed4a38607989985937a7b8d5ea8502 100644 (file)
@@ -183,8 +183,11 @@ interface(`munin_admin',`
                type httpd_munin_content_t, munin_initrc_exec_t;
        ')
 
-       allow $1 munin_t:process { ptrace signal_perms };
+       allow $1 munin_t:process signal_perms;
        ps_process_pattern($1, munin_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 munin_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, munin_initrc_exec_t)
        domain_system_change_exemption($1)
index 14af30a7a5b6e10e988dd2c305d4000c7ce40698..ac7e84669e14784fbe49602b8107f96f99fd6bfd 100644 (file)
@@ -389,8 +389,11 @@ interface(`mysql_admin',`
                type mysqld_etc_t;
        ')
 
-       allow $1 mysqld_t:process { ptrace signal_perms };
+       allow $1 mysqld_t:process signal_perms;
        ps_process_pattern($1, mysqld_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 mysqld_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, mysqld_initrc_exec_t)
        domain_system_change_exemption($1)
index 91de41a3b2c4430cabb21512082a2f3b38fecd91..d19d2d2d9053207712d4a8c804d48d58cde2e940 100644 (file)
@@ -158,7 +158,6 @@ optional_policy(`
 #
 
 allow mysqld_safe_t self:capability { chown dac_override fowner kill };
-dontaudit mysqld_safe_t self:capability sys_ptrace;
 allow mysqld_safe_t self:process { setsched getsched setrlimit };
 allow mysqld_safe_t self:fifo_file rw_fifo_file_perms;
 
index 2367841a5da1ac8a529908aea9413f7b69a85343..039bfa05046ab58d7fc40bc1134fce31a4424a03 100644 (file)
@@ -225,8 +225,11 @@ interface(`nagios_admin',`
                type nagios_etc_t, nrpe_etc_t, nagios_spool_t;
        ')
 
-       allow $1 nagios_t:process { ptrace signal_perms };
+       allow $1 nagios_t:process signal_perms;
        ps_process_pattern($1, nagios_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 nagios_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, nagios_initrc_exec_t)
        domain_system_change_exemption($1)
index c985b070135f13ec62fa68a1704b82cf1fc0a112..d1dcb941b86268cae545fdbd079a30d920fe894d 100644 (file)
@@ -44,13 +44,17 @@ init_system_domain(wpa_cli_t, wpa_cli_exec_t)
 
 # networkmanager will ptrace itself if gdb is installed
 # and it receives a unexpected signal (rh bug #204161)
-allow NetworkManager_t self:capability { chown fsetid kill setgid setuid sys_admin sys_nice sys_ptrace dac_override net_admin net_raw net_bind_service ipc_lock };
-dontaudit NetworkManager_t self:capability { sys_tty_config sys_ptrace };
+allow NetworkManager_t self:capability { chown fsetid kill setgid setuid sys_admin sys_nice dac_override net_admin net_raw net_bind_service ipc_lock };
+dontaudit NetworkManager_t self:capability sys_tty_config;
 ifdef(`hide_broken_symptoms',`
        # caused by some bogus kernel code
        dontaudit NetworkManager_t self:capability sys_module;
 ')
-allow NetworkManager_t self:process { ptrace getcap setcap setpgid getsched setsched signal_perms };
+allow NetworkManager_t self:process { getcap setcap setpgid getsched setsched signal_perms };
+tunable_policy(`deny_ptrace',`',`
+       allow NetworkManager_t self:process ptrace;
+')
+
 allow NetworkManager_t self:fifo_file rw_fifo_file_perms;
 allow NetworkManager_t self:unix_dgram_socket { sendto create_socket_perms };
 allow NetworkManager_t self:unix_stream_socket create_stream_socket_perms;
index 2214d71dc03a93bfd1a4827eb38e91804ff3848e..d3595cfb52b3f0190ca49899ed47ffdea42fdc1c 100644 (file)
@@ -390,16 +390,22 @@ interface(`nis_admin',`
                type ypbind_initrc_exec_t, nis_initrc_exec_t, ypxfr_t;
        ')
 
-       allow $1 ypbind_t:process { ptrace signal_perms };
+       allow $1 ypbind_t:process signal_perms;
        ps_process_pattern($1, ypbind_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 ypbind_t:process ptrace;
+               allow $1 yppasswdd_t:process ptrace;
+               allow $1 ypserv_t:process ptrace;
+               allow $1 ypxfr_t:process ptrace;
+       ')
 
-       allow $1 yppasswdd_t:process { ptrace signal_perms };
+       allow $1 yppasswdd_t:process signal_perms;
        ps_process_pattern($1, yppasswdd_t)
 
-       allow $1 ypserv_t:process { ptrace signal_perms };
+       allow $1 ypserv_t:process signal_perms;
        ps_process_pattern($1, ypserv_t)
 
-       allow $1 ypxfr_t:process { ptrace signal_perms };
+       allow $1 ypxfr_t:process signal_perms;
        ps_process_pattern($1, ypxfr_t)
 
        nis_initrc_domtrans($1)
index 56dd1f07b8e4d9e2713d04a3bea51268130a0d65..0a96e14ce7b28d1b3e744f62ca496e8349ea6575 100644 (file)
@@ -321,8 +321,11 @@ interface(`nscd_admin',`
                type nscd_initrc_exec_t;
        ')
 
-       allow $1 nscd_t:process { ptrace signal_perms };
+       allow $1 nscd_t:process signal_perms;
        ps_process_pattern($1, nscd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 nscd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, nscd_initrc_exec_t)
        domain_system_change_exemption($1)
index 812f966b29a10d67ea6eae4f4632a10306a1e9cc..2f6a98f12bd56c052323e379abe2f6d56954495b 100644 (file)
@@ -40,7 +40,7 @@ logging_log_file(nscd_log_t)
 # Local policy
 #
 
-allow nscd_t self:capability { kill setgid setuid sys_ptrace };
+allow nscd_t self:capability { kill setgid setuid };
 dontaudit nscd_t self:capability sys_tty_config;
 allow nscd_t self:process { getattr getcap setcap setsched signal_perms };
 allow nscd_t self:fifo_file read_fifo_file_perms;
index be5a5b4f9d3bb48f4eafd8c24f4452e7aabe1e92..549d7f8dc9bf067b9687d5759cf39bed7435a585 100644 (file)
@@ -98,7 +98,10 @@ interface(`nslcd_admin',`
        ')
 
        ps_process_pattern($1, nslcd_t)
-       allow $1 nslcd_t:process { ptrace signal_perms };
+       allow $1 nslcd_t:process signal_perms;
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 nslcd_t:process ptrace;
+       ')
 
        # Allow nslcd_t to restart the apache service
        nslcd_initrc_domtrans($1)
index 9e9091c83bf9b383b128bb9d6cedbbe83db8e36e..3d174080c8613c9a0edfe1f9a2a453287bdb6e65 100644 (file)
@@ -204,8 +204,11 @@ interface(`ntp_admin',`
                type ntpd_key_t, ntpd_var_run_t, ntpd_initrc_exec_t;
        ')
 
-       allow $1 ntpd_t:process { ptrace signal_perms };
+       allow $1 ntpd_t:process signal_perms;
        ps_process_pattern($1, ntpd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 ntpd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, ntpd_initrc_exec_t)
        domain_system_change_exemption($1)
index b1b5e51e61c71ee1ddf4f8350668e89529ffb841..044486c4c2f13437cdc25319181d4d5bba8c7c49 100644 (file)
@@ -89,8 +89,11 @@ interface(`oident_admin',`
                type oidentd_t, oidentd_initrc_exec_t, oidentd_config_t;
        ')
 
-       allow $1 oidentd_t:process { ptrace signal_perms };
+       allow $1 oidentd_t:process signal_perms;
        ps_process_pattern($1, oidentd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 oidentd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, oidentd_initrc_exec_t)
        domain_system_change_exemption($1)
index d88321423d91816129ad00b6756d852279b5d6c1..d6afa8781261c734392e4832fd9dd36e7d3fe5f0 100644 (file)
@@ -144,8 +144,11 @@ interface(`openvpn_admin',`
                type openvpn_var_run_t, openvpn_initrc_exec_t;
        ')
 
-       allow $1 openvpn_t:process { ptrace signal_perms };
+       allow $1 openvpn_t:process signal_perms;
        ps_process_pattern($1, openvpn_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 openvpn_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, openvpn_initrc_exec_t)
        domain_system_change_exemption($1)
index 8235fb6bb9ff0b2291b81504ae7587d455eb86be..45673adf5bdb521007e1b14f9bc1eb82f6888fb9 100644 (file)
@@ -31,8 +31,11 @@ interface(`pads_admin',`
                type pads_var_run_t;
        ')
 
-       allow $1 pads_t:process { ptrace signal_perms };
+       allow $1 pads_t:process signal_perms;
        ps_process_pattern($1, pads_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 pads_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, pads_initrc_exec_t)
        domain_system_change_exemption($1)
index 1bfd8d2c56e1cd651a5967260bdedcc3342033f0..f1c30000688dd9b23677b77a452d966554676428 100644 (file)
@@ -80,8 +80,11 @@ interface(`pingd_admin',`
                type pingd_initrc_exec_t;
        ')
 
-       allow $1 pingd_t:process { ptrace signal_perms };
+       allow $1 pingd_t:process signal_perms;
        ps_process_pattern($1, pingd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 pingd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, pingd_initrc_exec_t)
        domain_system_change_exemption($1)
index 9c4df9fd3e4469a3b7ea7b06b928bce17616fe83..c45bf78552f4d37d450a8cdbe2185a5f8b87c40f 100644 (file)
@@ -65,7 +65,11 @@ init_domtrans_script(piranha_fos_t)
 #
 
 allow piranha_web_t self:capability { setuid sys_nice kill setgid };
-allow piranha_web_t self:process { getsched setsched signal signull ptrace };
+allow piranha_web_t self:process { getsched setsched signal signull };
+tunable_policy(`deny_ptrace',`',`
+       allow piranha_web_t self:process ptrace;
+')
+
 allow piranha_web_t self:rawip_socket create_socket_perms;
 allow piranha_web_t self:netlink_route_socket r_netlink_socket_perms;
 allow piranha_web_t self:sem create_sem_perms;
index 48a543105ef06d2a398ef2d7119459a87ef607b4..34b79af752200e8646640fd81a9818646dd0e023 100644 (file)
@@ -291,8 +291,11 @@ interface(`plymouthd_admin',`
                type plymouthd_var_run_t;
        ')
 
-       allow $1 plymouthd_t:process { ptrace signal_perms };
+       allow $1 plymouthd_t:process signal_perms;
        ps_process_pattern($1, plymouthd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 plymouthd_t:process ptrace;
+       ')
 
        files_list_var_lib($1)
        admin_pattern($1, plymouthd_spool_t)
index add05dd39513ee048e95c62aed787079ac6e8aea..9cdbfa80b07395a027d067fdabeb7b71e6472a98 100644 (file)
@@ -38,7 +38,7 @@ files_pid_file(policykit_var_run_t)
 # policykit local policy
 #
 
-allow policykit_t self:capability { dac_override dac_read_search setgid setuid sys_ptrace };
+allow policykit_t self:capability { dac_override dac_read_search setgid setuid };
 allow policykit_t self:process { getsched getattr signal };
 allow policykit_t self:fifo_file rw_fifo_file_perms;
 allow policykit_t self:unix_dgram_socket create_socket_perms;
@@ -235,7 +235,7 @@ optional_policy(`
 # polkit_resolve local policy
 #
 
-allow policykit_resolve_t self:capability { setuid sys_nice sys_ptrace };
+allow policykit_resolve_t self:capability { setuid sys_nice };
 allow policykit_resolve_t self:process getattr;
 allow policykit_resolve_t self:fifo_file rw_fifo_file_perms;
 
index b11f37af1ae890a14dfcec6a28cb774270e9b2df..7dc2c0c1ada7b5be4f011a385a8f6b66b402d941 100644 (file)
@@ -32,8 +32,11 @@ template(`polipo_role',`
        # Policy
        #
 
-       allow $2 polipo_session_t:process { ptrace signal_perms };
+       allow $2 polipo_session_t:process signal_perms;
        ps_process_pattern($2, polipo_session_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $2 polipo_session_t:process ptrace;
+       ')
 
        tunable_policy(`polipo_session_users',`
                domtrans_pattern($2, polipo_exec_t, polipo_session_t)
@@ -163,8 +166,11 @@ interface(`polipo_admin',`
                type polipo_etc_t, polipo_log_t, polipo_initrc_exec_t;
        ')
 
-       allow $1 polipo_t:process { ptrace signal_perms };
+       allow $1 polipo_t:process signal_perms;
        ps_process_pattern($1, polipo_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 polipo_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, polipo_initrc_exec_t)
        domain_system_change_exemption($1)
index 7719d160527624a349ce41c82c10afbd5162d4d4..d283895c86d80ac6539c19631b27dd6400f60bed 100644 (file)
@@ -104,8 +104,11 @@ interface(`portreserve_admin',`
                type portreserve_initrc_exec_t;
        ')
 
-       allow $1 portreserve_t:process { ptrace signal_perms };
+       allow $1 portreserve_t:process signal_perms;
        ps_process_pattern($1, portreserve_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 portreserve_t:process ptrace;
+       ')
 
        portreserve_initrc_domtrans($1)
        domain_system_change_exemption($1)
index ca32d3031be9170abde602c39d09b06003ac7d74..e50a72cbcec4a28729593622b06d23f04323ddf0 100644 (file)
@@ -729,25 +729,36 @@ interface(`postfix_admin',`
                type postfix_smtpd_t, postfix_var_run_t;
        ')
 
-       allow $1 postfix_bounce_t:process { ptrace signal_perms };
+       allow $1 postfix_bounce_t:process signal_perms;
        ps_process_pattern($1, postfix_bounce_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 postfix_bounce_t:process ptrace;
+       ')
 
-       allow $1 postfix_cleanup_t:process { ptrace signal_perms };
+       allow $1 postfix_cleanup_t:process signal_perms;
        ps_process_pattern($1, postfix_cleanup_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 postfix_cleanup_t:process ptrace;
+               allow $1 postfix_local_t:process ptrace;
+               allow $1 postfix_master_t:process ptrace;
+               allow $1 postfix_pickup_t:process ptrace;
+               allow $1 postfix_qmgr_t:process ptrace;
+               allow $1 postfix_smtpd_t:process ptrace;
+       ')
 
-       allow $1 postfix_local_t:process { ptrace signal_perms };
+       allow $1 postfix_local_t:process signal_perms;
        ps_process_pattern($1, postfix_local_t)
 
-       allow $1 postfix_master_t:process { ptrace signal_perms };
+       allow $1 postfix_master_t:process signal_perms;
        ps_process_pattern($1, postfix_master_t)
 
-       allow $1 postfix_pickup_t:process { ptrace signal_perms };
+       allow $1 postfix_pickup_t:process signal_perms;
        ps_process_pattern($1, postfix_pickup_t)
 
-       allow $1 postfix_qmgr_t:process { ptrace signal_perms };
+       allow $1 postfix_qmgr_t:process signal_perms;
        ps_process_pattern($1, postfix_qmgr_t)
 
-       allow $1 postfix_smtpd_t:process { ptrace signal_perms };
+       allow $1 postfix_smtpd_t:process signal_perms;
        ps_process_pattern($1, postfix_smtpd_t)
 
        postfix_run_map($1, $2)
index d960d3f267b62606e458226dc5d538f7322cc61a..b2af7298be5466efab5903f147b86e4ca68e487d 100644 (file)
@@ -23,8 +23,11 @@ interface(`postfixpolicyd_admin',`
                type postfix_policyd_var_run_t, postfix_policyd_initrc_exec_t;
        ')
 
-       allow $1 postfix_policyd_t:process { ptrace signal_perms };
+       allow $1 postfix_policyd_t:process signal_perms;
        ps_process_pattern($1, postfix_policyd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 postfix_policyd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, postfix_policyd_initrc_exec_t)
        domain_system_change_exemption($1)
index f8a0d88560baa5e870d1cef43877f82c7b19ac24..d728f3a84f8f0e933f5d51fcf88b7161c5271f3f 100644 (file)
@@ -541,8 +541,11 @@ interface(`postgresql_admin',`
 
        typeattribute $1 sepgsql_admin_type;
 
-       allow $1 postgresql_t:process { ptrace signal_perms };
+       allow $1 postgresql_t:process signal_perms;
        ps_process_pattern($1, postgresql_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 postgresql_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, postgresql_initrc_exec_t)
        domain_system_change_exemption($1)
index 6f5544541c320d0b37986b84c708b8bafa43c113..12202e11f69ef1d8d20cc9a25517de198660c18b 100644 (file)
@@ -62,8 +62,11 @@ interface(`postgrey_admin',`
                type postgrey_var_lib_t, postgrey_var_run_t;
        ')
 
-       allow $1 postgrey_t:process { ptrace signal_perms };
+       allow $1 postgrey_t:process signal_perms;
        ps_process_pattern($1, postgrey_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 postgrey_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, postgrey_initrc_exec_t)
        domain_system_change_exemption($1)
index 921a60f615a9041da2235a3d7e28bf19c8200b3e..30898413c893a12ce84d8c53b7bc6afba3dad3a3 100644 (file)
@@ -386,10 +386,14 @@ interface(`ppp_admin',`
                type pppd_initrc_exec_t, pppd_etc_rw_t;
        ')
 
-       allow $1 pppd_t:process { ptrace signal_perms };
+       allow $1 pppd_t:process signal_perms;
        ps_process_pattern($1, pppd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 pppd_t:process ptrace;
+               allow $1 pptp_t:process ptrace;
+       ')
 
-       allow $1 pptp_t:process { ptrace signal_perms };
+       allow $1 pptp_t:process signal_perms;
        ps_process_pattern($1, pptp_t)
 
        ppp_initrc_domtrans($1)
index 77ef7686462680d273718c7ed9afbc6207eabd2f..b295b91e0c9f992b4dc18d23a78b23fdc69a0d4c 100644 (file)
@@ -118,13 +118,18 @@ interface(`prelude_admin',`
                type prelude_lml_t;
        ')
 
-       allow $1 prelude_t:process { ptrace signal_perms };
+       allow $1 prelude_t:process signal_perms;
        ps_process_pattern($1, prelude_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 prelude_t:process ptrace;
+               allow $1 prelude_audisp_t:process ptrace;
+               allow $1 prelude_lml_t:process ptrace;
+       ')
 
-       allow $1 prelude_audisp_t:process { ptrace signal_perms };
+       allow $1 prelude_audisp_t:process signal_perms;
        ps_process_pattern($1, prelude_audisp_t)
 
-       allow $1 prelude_lml_t:process { ptrace signal_perms };
+       allow $1 prelude_lml_t:process signal_perms;
        ps_process_pattern($1, prelude_lml_t)
 
        init_labeled_script_domtrans($1, prelude_initrc_exec_t)
index afd175164f4570ef1122d2838769e69a706920b9..5aff531a4dc2ebe3e936f62fb5a76ff7fe6ec54e 100644 (file)
@@ -23,8 +23,11 @@ interface(`privoxy_admin',`
                type privoxy_etc_rw_t, privoxy_var_run_t;
        ')
 
-       allow $1 privoxy_t:process { ptrace signal_perms };
+       allow $1 privoxy_t:process signal_perms;
        ps_process_pattern($1, privoxy_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 privoxy_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, privoxy_initrc_exec_t)
        domain_system_change_exemption($1)
index 0589f97d45446eba07366c8268885afeaa6b2050..20bb463b524fe3203cbfe421f8b5ac6360607adf 100644 (file)
@@ -295,8 +295,11 @@ interface(`psad_admin',`
                type psad_tmp_t;
        ')
 
-       allow $1 psad_t:process { ptrace signal_perms };
+       allow $1 psad_t:process signal_perms;
        ps_process_pattern($1, psad_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 psad_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, psad_initrc_exec_t)
        domain_system_change_exemption($1)
index fb72f2eac34d788f07cc526e724b2e4a54702577..4dd777f92cad649242fc18c869ca32d563c49934 100644 (file)
@@ -62,7 +62,7 @@ files_tmp_file(puppetmaster_tmp_t)
 # Puppet personal policy
 #
 
-allow puppet_t self:capability { fowner fsetid setuid setgid dac_override sys_nice sys_ptrace sys_tty_config };
+allow puppet_t self:capability { fowner fsetid setuid setgid dac_override sys_nice sys_tty_config };
 allow puppet_t self:process { signal signull getsched setsched };
 allow puppet_t self:fifo_file rw_fifo_file_perms;
 allow puppet_t self:netlink_route_socket create_netlink_socket_perms;
index aa3d0b4c766340381d10e6854c91c442255a8769..2c411af3ee574c1b4cedc93f191374df2a3b052c 100644 (file)
@@ -29,7 +29,10 @@ interface(`pyzor_role',`
 
        # allow ps to show pyzor and allow the user to kill it 
        ps_process_pattern($2, pyzor_t)
-       allow $2 pyzor_t:process { ptrace signal_perms };
+       allow $2 pyzor_t:process signal_perms;
+       tunable_policy(`deny_ptrace',`',`
+               allow $2 pyzor_t:process ptrace;
+       ')
 ')
 
 ########################################
@@ -113,8 +116,11 @@ interface(`pyzor_admin',`
                type pyzor_etc_t, pyzor_var_lib_t, pyzord_initrc_exec_t;
        ')
 
-       allow $1 pyzord_t:process { ptrace signal_perms };
+       allow $1 pyzord_t:process signal_perms;
        ps_process_pattern($1, pyzord_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 pyzord_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, pyzord_initrc_exec_t)
        domain_system_change_exemption($1)
index c403abc198f055f591518d5b9158f730a0337c59..61f00994f78ab870502aee972701fbf4e4c5968d 100644 (file)
@@ -177,8 +177,11 @@ interface(`qpidd_admin',`
                type qpidd_t, qpidd_initrc_exec_t;
        ')
 
-       allow $1 qpidd_t:process { ptrace signal_perms };
+       allow $1 qpidd_t:process signal_perms;
        ps_process_pattern($1, qpidd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 qpidd_t:process ptrace;
+       ')
 
        # Allow qpidd_t to restart the apache service
        qpidd_initrc_domtrans($1)
index 75e5dc400a61f663fd4d4b50a5d0d2b6d4a0ff5c..87d75fefe2cf2d4e737bd62f97312d9b6f297300 100644 (file)
@@ -38,8 +38,11 @@ interface(`radius_admin',`
                type radiusd_initrc_exec_t;
        ')
 
-       allow $1 radiusd_t:process { ptrace signal_perms };
+       allow $1 radiusd_t:process signal_perms;
        ps_process_pattern($1, radiusd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 radiusd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, radiusd_initrc_exec_t)
        domain_system_change_exemption($1)
index 2bd662a9ebe873d7b9a119314ef06f86a598545d..7b00e1e6281c29b28a3bd501e748a19ea8cb739b 100644 (file)
@@ -23,8 +23,11 @@ interface(`radvd_admin',`
                type radvd_var_run_t;
        ')
 
-       allow $1 radvd_t:process { ptrace signal_perms };
+       allow $1 radvd_t:process signal_perms;
        ps_process_pattern($1, radvd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 radvd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, radvd_initrc_exec_t)
        domain_system_change_exemption($1)
index 3203212fd3c1d776723fde5798664945680fcae8..d6a6e1afaaf3e49abe8681081774f441a265a778 100644 (file)
@@ -132,7 +132,10 @@ interface(`razor_role',`
 
        # allow ps to show razor and allow the user to kill it 
        ps_process_pattern($2, razor_t)
-       allow $2 razor_t:process { ptrace signal_perms };
+       allow $2 razor_t:process signal_perms;
+       tunable_policy(`deny_ptrace',`',`
+               allow $2 razor_t:process ptrace;
+       ')
 
        manage_dirs_pattern($2, razor_home_t, razor_home_t)
        manage_files_pattern($2, razor_home_t, razor_home_t)
index 9c2c963570812569b07506ff5153172958e8d61c..e3bdea78742d48779ca6ce62fd29f461b5bdb1ca 100644 (file)
@@ -117,8 +117,11 @@ interface(`rgmanager_admin',`
                type rgmanager_tmpfs_t, rgmanager_var_log_t, rgmanager_var_run_t;
        ')
 
-       allow $1 rgmanager_t:process { ptrace signal_perms };
+       allow $1 rgmanager_t:process signal_perms;
        ps_process_pattern($1, rgmanager_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 rgmanager_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, rgmanager_initrc_exec_t)
        domain_system_change_exemption($1)
index bac3e666784a0c08896f978b7704f1eb1c7cc202..d3d5f2b52e3a1a636fa7d0d322152761b338d466 100644 (file)
@@ -37,7 +37,6 @@ files_pid_file(rgmanager_var_run_t)
 #
 
 allow rgmanager_t self:capability { dac_override net_raw sys_resource sys_admin sys_nice ipc_lock };
-dontaudit rgmanager_t self:capability { sys_ptrace };
 allow rgmanager_t self:process { setsched signal };
 dontaudit rgmanager_t self:process ptrace;
 
index 811c52e16b7d3c1c49aa5dcbfedc4cc446644f4f..61d0a4cb6697b41d0b3c27317e0b655bb9e7734c 100644 (file)
@@ -284,8 +284,11 @@ interface(`rhsmcertd_admin',`
        type rhsmcertd_var_run_t;
        ')
 
-       allow $1 rhsmcertd_t:process { ptrace signal_perms };
+       allow $1 rhsmcertd_t:process signal_perms;
        ps_process_pattern($1, rhsmcertd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 rhsmcertd_t:process ptrace;
+       ')
 
        rhsmcertd_initrc_domtrans($1)
        domain_system_change_exemption($1)
index 679d185cb9dc58702e1d0476dcd8f14365cf97a8..62ccd55cc7564f65cf75b038deb9c5cee21215ca 100644 (file)
@@ -245,8 +245,11 @@ interface(`ricci_admin',`
                type ricci_var_lib_t, ricci_var_log_t, ricci_var_run_t;
        ')
 
-       allow $1 ricci_t:process { ptrace signal_perms };
+       allow $1 ricci_t:process signal_perms;
        ps_process_pattern($1, ricci_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 ricci_t:process ptrace;
+       ')
 
        ricci_initrc_domtrans($1)
        domain_system_change_exemption($1)
index 30c4b756e09534502df0a824f5137a8cc3c54309..e07c2ff3afb709b6a781bec543516c714101a6a7 100644 (file)
@@ -23,8 +23,11 @@ interface(`roundup_admin',`
                type roundup_initrc_exec_t;
        ')
 
-       allow $1 roundup_t:process { ptrace signal_perms };
+       allow $1 roundup_t:process signal_perms;
        ps_process_pattern($1, roundup_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 roundup_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, roundup_initrc_exec_t)
        domain_system_change_exemption($1)
index 3942dfc935d1be8a9b4a569888edc9d311d948b5..b4f950dfc431e6fac97286f0a2e1215ebc508150 100644 (file)
@@ -155,8 +155,11 @@ interface(`rpcbind_admin',`
                type rpcbind_initrc_exec_t;
        ')
 
-       allow $1 rpcbind_t:process { ptrace signal_perms };
+       allow $1 rpcbind_t:process signal_perms;
        ps_process_pattern($1, rpcbind_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 rpcbind_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, rpcbind_initrc_exec_t)
        domain_system_change_exemption($1)
index 7d64285769f496f8461649cde86af576df0c36ad..a53e4f062ec0a1ec9a66b35598208f0fe57f7e81 100644 (file)
@@ -15,7 +15,7 @@ init_system_domain(rtkit_daemon_t, rtkit_daemon_exec_t)
 # rtkit_daemon local policy
 #
 
-allow rtkit_daemon_t self:capability { dac_read_search setuid sys_chroot setgid sys_nice sys_ptrace };
+allow rtkit_daemon_t self:capability { dac_read_search setuid sys_chroot setgid sys_nice };
 allow rtkit_daemon_t self:process { setsched getcap setcap setrlimit };
 
 kernel_read_system_state(rtkit_daemon_t)
index 664e68e7647315e7b6f71ea12421f44fe34b67ea..26af97f100191f405b0b1ed3ec8cbe3e029ed7f1 100644 (file)
@@ -138,8 +138,11 @@ interface(`rwho_admin',`
                type rwho_initrc_exec_t;
        ')
 
-       allow $1 rwho_t:process { ptrace signal_perms };
+       allow $1 rwho_t:process signal_perms;
        ps_process_pattern($1, rwho_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 rwho_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, rwho_initrc_exec_t)
        domain_system_change_exemption($1)
index 0a29f68612a07688016c716aa36a67de2297d994..48c023e654ca8912b43dbb26db730c578c691815 100644 (file)
@@ -784,13 +784,18 @@ interface(`samba_admin',`
                type winbind_var_run_t, winbind_tmp_t, samba_unconfined_script_t;
        ')
 
-       allow $1 smbd_t:process { ptrace signal_perms };
+       allow $1 smbd_t:process signal_perms;
        ps_process_pattern($1, smbd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 smbd_t:process ptrace;
+               allow $1 nmbd_t:process ptrace;
+               allow $1 samba_unconfined_script_t:process ptrace;
+       ')
 
-       allow $1 nmbd_t:process { ptrace signal_perms };
+       allow $1 nmbd_t:process signal_perms;
        ps_process_pattern($1, nmbd_t)
 
-       allow $1 samba_unconfined_script_t:process { ptrace signal_perms };
+       allow $1 samba_unconfined_script_t:process signal_perms;
        ps_process_pattern($1, samba_unconfined_script_t)
 
        samba_run_smbcontrol($1, $2, $3)
index c040ebf815df54b71ac7e77bfc964c036bd0b36f..2b601a587dea1b955eebfdbd0800297e304c8db8 100644 (file)
@@ -271,10 +271,14 @@ interface(`samhain_admin',`
                type samhain_initrc_exec_t, samhain_log_t, samhain_var_run_t;
        ')
 
-       allow $1 samhain_t:process { ptrace signal_perms };
+       allow $1 samhain_t:process signal_perms;
        ps_process_pattern($1, samhain_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 samhain_t:process ptrace;
+               allow $1 samhaind_t:process ptrace;
+       ')
 
-       allow $1 samhaind_t:process { ptrace signal_perms };
+       allow $1 samhaind_t:process signal_perms;
        ps_process_pattern($1, samhaind_t)
 
        files_list_var_lib($1)
index 486d53d1789a16207fbe8daa025a63785cb9206a..0d53457f032fbd30f99759ef9197f5ac24227fe6 100644 (file)
@@ -99,8 +99,11 @@ interface(`sanlock_admin',`
                type sanlock_initrc_exec_t;
        ')
 
-       allow $1 sanlock_t:process { ptrace signal_perms };
+       allow $1 sanlock_t:process signal_perms;
        ps_process_pattern($1, sanlock_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 sanlock_t:process ptrace;
+       ')
 
        sanlock_initrc_domtrans($1)
        domain_system_change_exemption($1)
index a5a75a82398653b96fc4b5a3da5c689dc9deb844..3e6a93fcf418e342eb386cc5f8661cdd6bd81e35 100644 (file)
@@ -42,8 +42,11 @@ interface(`sasl_admin',`
                type saslauthd_initrc_exec_t;
        ')
 
-       allow $1 saslauthd_t:process { ptrace signal_perms };
+       allow $1 saslauthd_t:process signal_perms;
        ps_process_pattern($1, saslauthd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 saslauthd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, saslauthd_initrc_exec_t)
        domain_system_change_exemption($1)
index b077a6242e207600008cf4fe6a39f5fc8b16a102..40d004930fc2eca589bc0c51c0982209be8b0e35 100644 (file)
@@ -65,11 +65,15 @@ interface(`sblim_admin',`
                type sblim_var_run_t;
        ')
 
-       allow $1 sblim_gatherd_t:process { ptrace signal_perms };
+       allow $1 sblim_gatherd_t:process signal_perms;
        ps_process_pattern($1, sblim_gatherd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 sblim_gatherd_t:process ptrace;
+               allow $1 sblim_reposd_t:process ptrace;
+       ')
 
-       allow $1 sblim_reposd_t:process { ptrace signal_perms };
-    ps_process_pattern($1, sblim_reposd_t)
+       allow $1 sblim_reposd_t:process signal_perms;
+       ps_process_pattern($1, sblim_reposd_t)
 
        files_search_pids($1)
        admin_pattern($1, sblim_var_run_t)
index 067c55295bf3afc30a537c08164928535b5771f8..c4d91920b17aa202bb3bdcfc5133c2011a0e76bc 100644 (file)
@@ -24,7 +24,7 @@ files_pid_file(sblim_var_run_t)
 #
 
 #needed by ps
-allow sblim_gatherd_t self:capability { sys_ptrace kill dac_override };
+allow sblim_gatherd_t self:capability { kill dac_override };
 allow sblim_gatherd_t self:process signal;
 
 allow sblim_gatherd_t self:fifo_file rw_fifo_file_perms;
index 5700fb806ac587d84f98d851400927781acdc29f..e918b168456c7d7dfa86184150b260555d5425b9 100644 (file)
@@ -334,10 +334,14 @@ interface(`sendmail_admin',`
                type mail_spool_t;
        ')
 
-       allow $1 sendmail_t:process { ptrace signal_perms };
+       allow $1 sendmail_t:process signal_perms;
        ps_process_pattern($1, sendmail_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 sendmail_t:process ptrace;
+               allow $1 unconfined_sendmail_t:process ptrace;
+       ')
 
-       allow $1 unconfined_sendmail_t:process { ptrace signal_perms };
+       allow $1 unconfined_sendmail_t:process signal_perms;
        ps_process_pattern($1, unconfined_sendmail_t)
 
        sendmail_initrc_domtrans($1)
index 7c379a84166686ec23100455d7b43572a31039b4..b1c92f9275aff4735e4c4fef06678e0a0c9e750c 100644 (file)
@@ -140,8 +140,11 @@ interface(`setroubleshoot_admin',`
                type setroubleshoot_var_lib_t;
        ')
 
-       allow $1 setroubleshootd_t:process { ptrace signal_perms };
+       allow $1 setroubleshootd_t:process signal_perms;
        ps_process_pattern($1, setroubleshootd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 setroubleshootd_t:process ptrace;
+       ')
 
        logging_list_logs($1)
        admin_pattern($1, setroubleshoot_var_log_t)
index d5b2d9342b18d5c81fe3171884e99653a88c98d7..145adbdf7783bcbd5ec255a3fc5fe81396e6d71a 100644 (file)
@@ -42,8 +42,11 @@ interface(`smartmon_admin',`
                type fsdaemon_initrc_exec_t;
        ')
 
-       allow $1 fsdaemon_t:process { ptrace signal_perms };
+       allow $1 fsdaemon_t:process signal_perms;
        ps_process_pattern($1, fsdaemon_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 smartmon_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, fsdaemon_initrc_exec_t)
        domain_system_change_exemption($1)
index 82652781b1dcc492638e410df0f2cb7d49e397fe..017b9234c47ec7620365f76752ea94133aa07c04 100644 (file)
@@ -153,8 +153,11 @@ interface(`smokeping_admin',`
                type smokeping_t, smokeping_initrc_exec_t;
        ')
 
-       allow $1 smokeping_t:process { ptrace signal_perms };
+       allow $1 smokeping_t:process signal_perms;
        ps_process_pattern($1, smokeping_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 smokeping_t:process ptrace;
+       ')
 
        smokeping_initrc_domtrans($1)
        domain_system_change_exemption($1)
index 4f4a192e84ece8f4680abd591d41af57aa3794c8..ad10bef04c65a075e99ac40aeb29c61ef6bb5da2 100644 (file)
@@ -168,8 +168,11 @@ interface(`snmp_admin',`
                type snmpd_var_lib_t, snmpd_var_run_t;
        ')
 
-       allow $1 snmpd_t:process { ptrace signal_perms };
+       allow $1 snmpd_t:process signal_perms;
        ps_process_pattern($1, snmpd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 snmpd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, snmpd_initrc_exec_t)
        domain_system_change_exemption($1)
index 9509742de3461b25caee826bcd1f0bc83a953673..9c747d4abadf9f8474564bacca999d4c6b9f2a0a 100644 (file)
@@ -26,7 +26,8 @@ files_type(snmpd_var_lib_t)
 # Local policy
 #
 
-allow snmpd_t self:capability { chown dac_override kill ipc_lock setgid setuid sys_ptrace net_admin sys_nice sys_tty_config };
+allow snmpd_t self:capability { chown dac_override kill ipc_lock setgid setuid net_admin sys_nice sys_tty_config };
+
 dontaudit snmpd_t self:capability { sys_module sys_tty_config };
 allow snmpd_t self:process { signal_perms getsched setsched };
 allow snmpd_t self:fifo_file rw_fifo_file_perms;
index 88ebedbc5044f96b9f91df920784ff78f82a0b5c..e428bb93c8e0100be8c3ecc15fcfb2cced181ea6 100644 (file)
@@ -41,8 +41,11 @@ interface(`snort_admin',`
                type snort_etc_t, snort_initrc_exec_t;
        ')
 
-       allow $1 snort_t:process { ptrace signal_perms };
+       allow $1 snort_t:process signal_perms;
        ps_process_pattern($1, snort_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 snort_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, snort_initrc_exec_t)
        domain_system_change_exemption($1)
index 4a156336c5550cea9bbaa0b8b93e32f1f9666506..1b07ed44a2f71256562f4f4d5a8546c222ec67aa 100644 (file)
@@ -37,8 +37,11 @@ interface(`soundserver_admin',`
                type soundd_tmp_t, soundd_var_run_t;
        ')
 
-       allow $1 soundd_t:process { ptrace signal_perms };
+       allow $1 soundd_t:process signal_perms;
        ps_process_pattern($1, soundd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 soundd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, soundd_initrc_exec_t)
        domain_system_change_exemption($1)
index c7cadcb754900f83f71aa66422f462ba6896f66a..85e8212d42e0432f50bd3fa97ce46e94b856783d 100644 (file)
@@ -27,12 +27,12 @@ interface(`spamassassin_role',`
 
        domtrans_pattern($2, spamassassin_exec_t, spamassassin_t)
 
-       allow $2 spamassassin_t:process { ptrace signal_perms };
+       allow $2 spamassassin_t:process signal_perms;
        ps_process_pattern($2, spamassassin_t)
 
        domtrans_pattern($2, spamc_exec_t, spamc_t)
 
-       allow $2 spamc_t:process { ptrace signal_perms };
+       allow $2 spamc_t:process signal_perms;
        ps_process_pattern($2, spamc_t)
 
        manage_dirs_pattern($2, spamassassin_home_t, spamassassin_home_t)
@@ -337,8 +337,11 @@ interface(`spamassassin_spamd_admin',`
                type spamd_initrc_exec_t;
        ')
 
-       allow $1 spamd_t:process { ptrace signal_perms };
+       allow $1 spamd_t:process signal_perms;
        ps_process_pattern($1, spamd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 spamd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, spamd_initrc_exec_t)
        domain_system_change_exemption($1)
index 1d0c078e8bdf91e0801858e3f375e057a1d5daa4..c7614d7f0f4058305dde82ef76b24fd3c6885157 100644 (file)
@@ -209,8 +209,11 @@ interface(`squid_admin',`
                type squid_log_t, squid_var_run_t, squid_initrc_exec_t;
        ')
 
-       allow $1 squid_t:process { ptrace signal_perms };
+       allow $1 squid_t:process signal_perms;
        ps_process_pattern($1, squid_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 squid_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, squid_initrc_exec_t)
        domain_system_change_exemption($1)
index b13cd6760d3c9f5faa2171f624c58a78534c61c5..5439f7ed8886f8d4c4fb3d2009381e5714cd18f7 100644 (file)
@@ -367,7 +367,7 @@ template(`ssh_role_template',`
 
        # allow ps to show ssh
        ps_process_pattern($3, ssh_t)
-       allow $3 ssh_t:process { ptrace signal_perms };
+       allow $3 ssh_t:process signal_perms;
 
        # for rsync
        allow ssh_t $3:unix_stream_socket rw_socket_perms;
@@ -402,7 +402,7 @@ template(`ssh_role_template',`
        stream_connect_pattern($3, ssh_agent_tmp_t, ssh_agent_tmp_t, $1_ssh_agent_t)
 
        # Allow the user shell to signal the ssh program.
-       allow $3 $1_ssh_agent_t:process { ptrace signal_perms };
+       allow $3 $1_ssh_agent_t:process signal_perms;
 
        # allow ps to show ssh
        ps_process_pattern($3, $1_ssh_agent_t)
index ce8c972cd3d2d6e917d39ffca928adc5328051a3..4afc698da106f2c06a6c67cb3fe336c8ee926ab8 100644 (file)
@@ -234,8 +234,11 @@ interface(`sssd_admin',`
                type sssd_t, sssd_public_t, sssd_initrc_exec_t;
        ')
 
-       allow $1 sssd_t:process { ptrace signal_perms };
+       allow $1 sssd_t:process signal_perms;
        ps_process_pattern($1, sssd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 sssd_t:process ptrace;
+       ')
 
        # Allow sssd_t to restart the apache service
        sssd_initrc_domtrans($1)
index 459d77302568cdb789d3915448b810677e3e0072..0f12947cb19d0af1716bfe569c0f5545e49cf74d 100644 (file)
@@ -137,8 +137,11 @@ interface(`tcsd_admin',`
                type tcsd_var_lib_t;
        ')
 
-       allow $1 tcsd_t:process { ptrace signal_perms };
+       allow $1 tcsd_t:process signal_perms;
        ps_process_pattern($1, tcsd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 tcsd_t:process ptrace;
+       ')
 
        tcsd_initrc_domtrans($1)
        domain_system_change_exemption($1)
index 414e03f3b418a55a9e97743ba1a6bbc555e80f5c..0fee0988bf7c66ae6a5db96c50a1af9cbbfeb575 100644 (file)
@@ -109,8 +109,11 @@ interface(`tftp_admin',`
                type tftpd_t, tftpdir_t, tftpdir_rw_t, tftpd_var_run_t;
        ')
 
-       allow $1 tftpd_t:process { ptrace signal_perms };
+       allow $1 tftpd_t:process signal_perms;
        ps_process_pattern($1, tftpd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 tftp_t:process ptrace;
+       ')
 
        files_list_var_lib($1)
        admin_pattern($1, tftpdir_rw_t)
index 464347fef3b94a4b124f02092bbfd4631f50392a..f9d007b1baa700389b6a76caa5be7cb4b917eb0b 100644 (file)
@@ -42,8 +42,11 @@ interface(`tor_admin',`
                type tor_initrc_exec_t;
        ')
 
-       allow $1 tor_t:process { ptrace signal_perms };
+       allow $1 tor_t:process signal_perms;
        ps_process_pattern($1, tor_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 tor_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, tor_initrc_exec_t)
        domain_system_change_exemption($1)
index 752697f602d01a4b005a6554147aba8736a13582..a04f013d6328287af704600d0d1ba8482edf0068 100644 (file)
@@ -115,8 +115,11 @@ interface(`tuned_admin',`
                type tuned_t, tuned_var_run_t, tuned_initrc_exec_t;
        ')
 
-       allow $1 tuned_t:process { ptrace signal_perms };
+       allow $1 tuned_t:process signal_perms;
        ps_process_pattern($1, tuned_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 tuned_t:process ptrace;
+       ')
 
        tuned_initrc_domtrans($1)
        domain_system_change_exemption($1)
index d23be5ceaf2b25e028ab5b2a7a37af3ccf01dd13..a05cd68a7e8e0aaf847feb079d46ce1519f276b0 100644 (file)
@@ -123,8 +123,11 @@ interface(`ulogd_admin',`
                type ulogd_var_log_t, ulogd_initrc_exec_t;
        ')
 
-       allow $1 ulogd_t:process { ptrace signal_perms };
+       allow $1 ulogd_t:process signal_perms;
        ps_process_pattern($1, ulogd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 ulogd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, ulogd_initrc_exec_t)
        domain_system_change_exemption($1)
index ebc5414fc8984ba16cb77cc22491e9e218499c60..8f8ac458953b8cbf245e018b63606e64c0d7df41 100644 (file)
@@ -99,8 +99,11 @@ interface(`uucp_admin',`
                type uucpd_var_run_t;
        ')
 
-       allow $1 uucpd_t:process { ptrace signal_perms };
+       allow $1 uucpd_t:process signal_perms;
        ps_process_pattern($1, uucpd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 uucpd_t:process ptrace;
+       ')
 
        logging_list_logs($1)
        admin_pattern($1, uucpd_log_t)
index 5a2fd4c1910bafa4730b8505277566756c77cc22..c82f17800f7e5454fee3907fdd88f7b04c1dc055 100644 (file)
@@ -177,8 +177,11 @@ interface(`uuidd_admin',`
        type uuidd_var_run_t;
        ')
 
-       allow $1 uuidd_t:process { ptrace signal_perms };
+       allow $1 uuidd_t:process signal_perms;
        ps_process_pattern($1, uuidd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 uuidd_t:process ptrace;
+       ')
 
        uuidd_initrc_domtrans($1)
        domain_system_change_exemption($1)
index 93975d6d73ff9ce687581707e02821bacb9cd681..7a665ff810301758d3892e46e993209441e92006 100644 (file)
@@ -155,8 +155,11 @@ interface(`varnishd_admin_varnishlog',`
                type varnishlog_var_run_t;
        ')
 
-       allow $1 varnishlog_t:process { ptrace signal_perms };
+       allow $1 varnishlog_t:process signal_perms;
        ps_process_pattern($1, varnishlog_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 varnishd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, varnishlog_initrc_exec_t)
        domain_system_change_exemption($1)
@@ -194,8 +197,11 @@ interface(`varnishd_admin',`
                type varnishd_initrc_exec_t;
        ')
 
-       allow $1 varnishd_t:process { ptrace signal_perms };
+       allow $1 varnishd_t:process signal_perms;
        ps_process_pattern($1, varnishd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 varnishd_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, varnishd_initrc_exec_t)
        domain_system_change_exemption($1)
index 764727910291e6e43f369ffb2365dd40aab6b521..57471cc9692c0e567ac2c9ebadef6a5d19942d9d 100644 (file)
@@ -118,8 +118,11 @@ interface(`vdagent_admin',`
                 type vdagent_var_run_t;
        ')
 
-       allow $1 vdagent_t:process { ptrace signal_perms };
+       allow $1 vdagent_t:process signal_perms;
        ps_process_pattern($1, vdagent_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 vdagent_t:process ptrace;
+       ')
 
        files_search_pids($1)
        admin_pattern($1, vdagent_var_run_t)
index da605baaebf4ebfbf72e21e8e6ac0cb66432fb59..1250e3046f28bf649030a5fd42d369176a42b7c4 100644 (file)
@@ -210,8 +210,11 @@ interface(`vhostmd_admin',`
                type vhostmd_t, vhostmd_initrc_exec_t;
        ')
 
-       allow $1 vhostmd_t:process { ptrace signal_perms };
+       allow $1 vhostmd_t:process signal_perms;
        ps_process_pattern($1, vhostmd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 vhostmd_t:process ptrace;
+       ')
 
        vhostmd_initrc_domtrans($1)
        domain_system_change_exemption($1)
index fc6beb9380d250a42e9fde768f6e3ddced0596c5..9f0c49b650957a560330dadba2cbd953ff4b246d 100644 (file)
@@ -620,10 +620,14 @@ interface(`virt_admin',`
                type virt_lxc_t;
        ')
 
-       allow $1 virtd_t:process { ptrace signal_perms };
+       allow $1 virtd_t:process signal_perms;
        ps_process_pattern($1, virtd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 virtd_t:process ptrace;
+               allow $1 virt_lxc_t:process ptrace;
+       ')
 
-       allow $1 virt_lxc_t:process { ptrace signal_perms };
+       allow $1 virt_lxc_t:process signal_perms;
        ps_process_pattern($1, virt_lxc_t)
 
        init_labeled_script_domtrans($1, virtd_initrc_exec_t)
@@ -639,7 +643,7 @@ interface(`virt_admin',`
 
        virt_manage_images($1)
 
-       allow $1 virt_domain:process { ptrace signal_perms };
+       allow $1 virt_domain:process signal_perms;
 ')
 
 ########################################
index d6b0d85fadc7d9c5da85fa78738380881ea3214f..334b676a4215413469a5515a411e85ad2a48f5b5 100644 (file)
@@ -250,7 +250,7 @@ optional_policy(`
 # virtd local policy
 #
 
-allow virtd_t self:capability { chown dac_override fowner ipc_lock kill mknod net_admin net_raw setpcap setuid setgid sys_admin sys_nice sys_ptrace };
+allow virtd_t self:capability { chown dac_override fowner ipc_lock kill mknod net_admin net_raw setpcap setuid setgid sys_admin sys_nice };
 allow virtd_t self:process { getcap getsched setcap sigkill signal signull execmem setexec setfscreate setsockcreate setsched };
 ifdef(`hide_broken_symptoms',`
        # caused by some bogus kernel code
@@ -853,7 +853,6 @@ optional_policy(`
 # virt_lxc_domain local policy
 #
 allow svirt_lxc_domain self:capability { kill setuid setgid dac_override };
-dontaudit svirt_lxc_domain self:capability sys_ptrace;
 
 allow virtd_t svirt_lxc_domain:process { signal_perms };
 allow virtd_lxc_t svirt_lxc_domain:process { getattr getsched setsched transition signal signull sigkill };
index 21af852716407359c70e5f261e0ebaa43047f0ec..adbb3fb4d5fd41eefb95fc2fe7b95839a806bc01 100644 (file)
@@ -136,8 +136,11 @@ interface(`vnstatd_admin',`
                type vnstatd_t, vnstatd_var_lib_t;
        ')
 
-       allow $1 vnstatd_t:process { ptrace signal_perms };
+       allow $1 vnstatd_t:process signal_perms;
        ps_process_pattern($1, vnstatd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 vnstatd_t:process ptrace;
+       ')
 
        files_list_var_lib($1)
        admin_pattern($1, vnstatd_var_lib_t)
index a554011bb9962725847506b3c7edf26248538fbc..955f1ac4626459ca4525b331f53e088fa05b4f2a 100644 (file)
@@ -62,8 +62,11 @@ interface(`wdmd_admin',`
                type wdmd_initrc_exec_t;
        ')
 
-       allow $1 wdmd_t:process { ptrace signal_perms };
+       allow $1 wdmd_t:process signal_perms;
        ps_process_pattern($1, wdmd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 wdmd_t:process ptrace;
+       ')
 
        wdmd_initrc_domtrans($1)
        domain_system_change_exemption($1)
index 40e56f1e177b298623cb53b85ffda05b61a9ab7f..cd3de23cd6b549e135d03aee5fdc589ffeca5035 100644 (file)
@@ -417,8 +417,13 @@ optional_policy(`
 # XDM Local policy
 #
 
-allow xdm_t self:capability { setgid setuid sys_resource kill sys_tty_config mknod chown dac_override dac_read_search fowner fsetid ipc_owner sys_nice sys_rawio net_bind_service sys_ptrace };
-allow xdm_t self:process { setexec setpgid getattr getcap setcap getsched getsession setsched setrlimit signal_perms setkeycreate ptrace };
+allow xdm_t self:capability { setgid setuid sys_resource kill sys_tty_config mknod chown dac_override dac_read_search fowner fsetid ipc_owner sys_nice sys_rawio net_bind_service };
+
+allow xdm_t self:process { setexec setpgid getattr getcap setcap getsched getsession setsched setrlimit signal_perms setkeycreate };
+tunable_policy(`deny_ptrace',`',`
+       allow xdm_t self:process ptrace;
+')
+
 allow xdm_t self:fifo_file rw_fifo_file_perms;
 allow xdm_t self:shm create_shm_perms;
 allow xdm_t self:sem create_sem_perms;
@@ -930,7 +935,8 @@ allow xserver_t input_xevent_t:x_event send;
 # execheap needed until the X module loader is fixed.
 # NVIDIA Needs execstack
 
-allow xserver_t self:capability { dac_override fowner fsetid setgid setuid ipc_owner sys_ptrace sys_rawio sys_admin sys_nice sys_tty_config mknod net_bind_service };
+allow xserver_t self:capability { dac_override fowner fsetid setgid setuid ipc_owner sys_rawio sys_admin sys_nice sys_tty_config mknod net_bind_service };
+
 dontaudit xserver_t self:capability chown;
 allow xserver_t self:process ~{ ptrace setcurrent setexec setfscreate setrlimit execmem execstack execheap };
 allow xserver_t self:fd use;
index 11013a67262a95fda098dc5e86a4f0aa83d1f911..062947298e3a0ec58db94006d545468cf538c6a7 100644 (file)
@@ -142,8 +142,11 @@ interface(`zabbix_admin',`
                type zabbix_initrc_exec_t;
        ')
 
-       allow $1 zabbix_t:process { ptrace signal_perms };
+       allow $1 zabbix_t:process signal_perms;
        ps_process_pattern($1, zabbix_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 zabbix_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, zabbix_initrc_exec_t)
        domain_system_change_exemption($1)
index 347f754a50677764360b69f42f8753f06c529b4f..ef64e73fba484fffebc3bdff8bf575a8e6a121a3 100644 (file)
@@ -64,8 +64,11 @@ interface(`zebra_admin',`
                type zebra_conf_t, zebra_var_run_t, zebra_initrc_exec_t;
        ')
 
-       allow $1 zebra_t:process { ptrace signal_perms };
+       allow $1 zebra_t:process signal_perms;
        ps_process_pattern($1, zebra_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 zebra_t:process ptrace;
+       ')
 
        init_labeled_script_domtrans($1, zebra_initrc_exec_t)
        domain_system_change_exemption($1)
index ba2f286193c557b180f19d801432fd8b3ca698a5..0995a02d563286a7768426ec2972d02c4b316b04 100644 (file)
@@ -23,7 +23,7 @@ files_pid_file(hotplug_var_run_t)
 #
 
 allow hotplug_t self:capability { net_admin sys_tty_config mknod sys_rawio };
-dontaudit hotplug_t self:capability { sys_module sys_admin sys_ptrace sys_tty_config };
+dontaudit hotplug_t self:capability { sys_module sys_admin sys_tty_config };
 # for access("/etc/bashrc", X_OK) on Red Hat
 dontaudit hotplug_t self:capability { dac_override dac_read_search };
 allow hotplug_t self:process { setpgid getsession getattr signal_perms };
index b5e5c70d212393d45be02f80b5e2926ef730c0fc..5a963efb05216b1cc36ce0fcbf275e62fd753e96 100644 (file)
@@ -1123,7 +1123,9 @@ interface(`init_ptrace',`
                type init_t;
        ')
 
-       allow $1 init_t:process ptrace;
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 init_t:process ptrace;
+       ')
 ')
 
 ########################################
index 49a7fbd3b350c91acd52ac8fc9957c734de75972..75f6d6b3b4f2426bc634aa49b9440bf039e04939 100644 (file)
@@ -121,7 +121,7 @@ ifdef(`enable_mls',`
 #
 
 # Use capabilities. old rule:
-allow init_t self:capability ~{ audit_control audit_write sys_module };
+allow init_t self:capability ~{ sys_ptrace audit_control audit_write sys_module };
 # is ~sys_module really needed? observed:
 # sys_boot
 # sys_tty_config
@@ -411,7 +411,8 @@ optional_policy(`
 #
 
 allow initrc_t self:process { getpgid setsched setpgid setrlimit getsched };
-allow initrc_t self:capability ~{ audit_control audit_write sys_admin sys_module };
+allow initrc_t self:capability ~{ sys_ptrace audit_control audit_write sys_admin sys_module };
+
 dontaudit initrc_t self:capability sys_module; # sysctl is triggering this
 allow initrc_t self:passwd rootok;
 allow initrc_t self:key manage_key_perms;
index 2af2952900a75ec5b64a622d46085db23006da30..94e11eb87017c66491daa54f7d84872e5da41e25 100644 (file)
@@ -73,7 +73,7 @@ role system_r types setkey_t;
 #
 
 allow ipsec_t self:capability { net_admin dac_override dac_read_search setpcap sys_nice };
-dontaudit ipsec_t self:capability { sys_ptrace sys_tty_config };
+dontaudit ipsec_t self:capability sys_tty_config;
 allow ipsec_t self:process { getcap setcap getsched signal setsched };
 allow ipsec_t self:tcp_socket create_stream_socket_perms;
 allow ipsec_t self:udp_socket create_socket_perms;
@@ -193,8 +193,8 @@ optional_policy(`
 #
 
 allow ipsec_mgmt_t self:capability { dac_override dac_read_search net_admin setpcap sys_nice };
-dontaudit ipsec_mgmt_t self:capability { sys_ptrace sys_tty_config };
-allow ipsec_mgmt_t self:process { getsched ptrace setrlimit setsched signal };
+dontaudit ipsec_mgmt_t self:capability sys_tty_config;
+allow ipsec_mgmt_t self:process { getsched setrlimit setsched signal };
 allow ipsec_mgmt_t self:unix_stream_socket create_stream_socket_perms;
 allow ipsec_mgmt_t self:tcp_socket create_stream_socket_perms;
 allow ipsec_mgmt_t self:udp_socket create_socket_perms;
@@ -251,9 +251,6 @@ kernel_read_kernel_sysctls(ipsec_mgmt_t)
 kernel_getattr_core_if(ipsec_mgmt_t)
 kernel_getattr_message_if(ipsec_mgmt_t)
 
-# don't audit using of lsof
-dontaudit ipsec_mgmt_t self:capability sys_ptrace;
-
 domain_dontaudit_getattr_all_sockets(ipsec_mgmt_t)
 domain_dontaudit_getattr_all_pipes(ipsec_mgmt_t)
 
index ac8e81413eda77ac40760ddad3b5ad4b60fb7c9b..65b5762135feba0be63a742f898180b2e168012a 100644 (file)
@@ -31,7 +31,6 @@ files_pid_file(iscsi_var_run_t)
 #
 
 allow iscsid_t self:capability { dac_override ipc_lock net_admin net_raw sys_admin sys_nice sys_resource };
-dontaudit iscsid_t self:capability sys_ptrace;
 allow iscsid_t self:process { setrlimit setsched signal };
 allow iscsid_t self:fifo_file rw_fifo_file_perms;
 allow iscsid_t self:unix_stream_socket { create_stream_socket_perms connectto };
index bf909185b1250ace727f1f3492ec1b0bcaca3a65..37a5bb44588ca5d3234b8dbb589689ec1538705d 100644 (file)
@@ -35,7 +35,7 @@ role system_r types sulogin_t;
 # Local login local policy
 #
 
-allow local_login_t self:capability { dac_override chown fowner fsetid kill setgid setuid sys_admin sys_nice sys_ptrace sys_resource sys_tty_config };
+allow local_login_t self:capability { dac_override chown fowner fsetid kill setgid setuid sys_admin sys_nice sys_resource sys_tty_config };
 allow local_login_t self:process ~{ ptrace setcurrent setfscreate execmem execstack execheap };
 allow local_login_t self:fd use;
 allow local_login_t self:fifo_file rw_fifo_file_perms;
index efe103891bae8eac1afa2b04d9169b1fbb9de7c5..0410fa39cafc76009c2ff22396748479568e5a24 100644 (file)
@@ -1095,9 +1095,13 @@ interface(`logging_admin_audit',`
                type auditd_initrc_exec_t;
        ')
 
-       allow $1 auditd_t:process { ptrace signal_perms };
+       allow $1 auditd_t:process signal_perms;
        ps_process_pattern($1, auditd_t)
 
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 auditd_t:process ptrace;
+       ')
+
        manage_dirs_pattern($1, auditd_etc_t, auditd_etc_t)
        manage_files_pattern($1, auditd_etc_t, auditd_etc_t)
 
@@ -1142,10 +1146,14 @@ interface(`logging_admin_syslog',`
        ')
 
        allow $1 self:capability2 syslog;
-       allow $1 syslogd_t:process { ptrace signal_perms };
-       allow $1 klogd_t:process { ptrace signal_perms };
+       allow $1 syslogd_t:process signal_perms;
+       allow $1 klogd_t:process signal_perms;
        ps_process_pattern($1, syslogd_t)
        ps_process_pattern($1, klogd_t)
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 syslogd_t:process ptrace;
+               allow $1 klogd_t:process ptrace;
+       ')
 
        manage_dirs_pattern($1, klogd_var_run_t, klogd_var_run_t)
        manage_files_pattern($1, klogd_var_run_t, klogd_var_run_t)
index 49304740b819a6bb685f7e8b2d566f1a95a4799c..f1121f7c428cac946fbc7c1abc6b303f9ef92607 100644 (file)
@@ -48,7 +48,11 @@ role system_r types showmount_t;
 
 # setuid/setgid needed to mount cifs 
 allow mount_t self:capability { fsetid fowner ipc_lock setpcap sys_rawio sys_resource sys_admin dac_override dac_read_search chown sys_tty_config setuid setgid };
-allow mount_t self:process { getcap getsched ptrace setcap setrlimit signal };
+allow mount_t self:process { getcap getsched setcap setrlimit signal };
+tunable_policy(`deny_ptrace',`',`
+       allow mount_t self:process ptrace;
+')
+
 allow mount_t self:fifo_file rw_fifo_file_perms;
 allow mount_t self:unix_stream_socket create_stream_socket_perms;
 allow mount_t self:unix_dgram_socket create_socket_perms; 
index 889356abb4f16121715125e8aef0cc9643d5d814..50ad085c132248529bf89c191696a4cd0b587e5d 100644 (file)
@@ -51,10 +51,13 @@ files_config_file(net_conf_t)
 # DHCP client local policy
 #
 allow dhcpc_t self:capability { dac_override fsetid net_admin net_raw net_bind_service setpcap sys_nice sys_resource sys_tty_config };
-dontaudit dhcpc_t self:capability { sys_tty_config sys_ptrace };
+dontaudit dhcpc_t self:capability sys_tty_config;
 # for access("/etc/bashrc", X_OK) on Red Hat
 dontaudit dhcpc_t self:capability { dac_read_search sys_module };
-allow dhcpc_t self:process { getsched getcap setcap setfscreate ptrace signal_perms };
+allow dhcpc_t self:process { getsched getcap setcap setfscreate signal_perms };
+tunable_policy(`deny_ptrace',`',`
+       allow dhcpc_t self:process ptrace;
+')
 
 allow dhcpc_t self:fifo_file rw_fifo_file_perms;
 allow dhcpc_t self:tcp_socket create_stream_socket_perms;
index c31aeb2d5f6d3e3e6cc49e1851d98aa0da070d16..bdb905ac7948dd24b79b22eb0fb2200f7792018a 100644 (file)
@@ -34,7 +34,7 @@ ifdef(`enable_mcs',`
 # Local policy
 #
 
-allow udev_t self:capability { chown dac_override dac_read_search fowner fsetid sys_admin mknod net_raw net_admin sys_nice sys_rawio sys_resource setuid setgid sys_nice sys_ptrace };
+allow udev_t self:capability { chown dac_override dac_read_search fowner fsetid sys_admin mknod net_raw net_admin sys_nice sys_rawio sys_resource setuid setgid sys_nice };
 dontaudit udev_t self:capability sys_tty_config;
 
 ifdef(`hide_broken_symptoms',`
@@ -42,7 +42,11 @@ ifdef(`hide_broken_symptoms',`
        dontaudit udev_t self:capability sys_module;
 ')
 
-allow udev_t self:process ~{ setcurrent setexec setfscreate setrlimit execmem execstack execheap };
+allow udev_t self:process ~{ ptrace setcurrent setexec setfscreate setrlimit execmem execstack execheap };
+tunable_policy(`deny_ptrace',`',`
+       allow udev_t self:process ptrace;
+')
+
 allow udev_t self:process { execmem setfscreate };
 allow udev_t self:fd use;
 allow udev_t self:fifo_file rw_fifo_file_perms;
index 46f9aafa3a3797f6a100b34d5dcd7aeef76ed65c..04ee00522d0134ca3f3b477a08997ef3795e530f 100644 (file)
@@ -18,7 +18,12 @@ interface(`unconfined_domain_noaudit',`
        ')
 
        # Use any Linux capability.
-       allow $1 self:capability ~sys_module;
+
+       allow $1 self:capability ~{ sys_module sys_ptrace };
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 self:capability sys_ptrace;
+       ')
+
        allow $1 self:capability2 syslog;
        allow $1 self:fifo_file { manage_fifo_file_perms relabelfrom relabelto };
 
index 52afc25a1883ef81632297d4af7ebb2191478e76..9d1e704e49d0545d53234125bda46e27075dbaee 100644 (file)
@@ -47,7 +47,10 @@ template(`userdom_base_user_template',`
        term_user_tty($1_t, user_tty_device_t)
        term_dontaudit_getattr_generic_ptys($1_t)
 
-       allow $1_usertype $1_usertype:process { ptrace signal_perms getsched setsched share getpgid setpgid getcap setcap getsession getattr };
+       allow $1_usertype $1_usertype:process { signal_perms getsched setsched share getpgid setpgid getcap setcap getsession getattr };
+       tunable_policy(`deny_ptrace',`',`
+               allow $1_usertype $1_usertype:process ptrace;
+       ')
        allow $1_usertype $1_usertype:fd use;
        allow $1_usertype $1_t:key { create view read write search link setattr };
 
@@ -905,7 +908,7 @@ template(`userdom_login_user_template', `
        allow $1_t self:capability { setgid chown fowner };
        dontaudit $1_t self:capability { sys_nice fsetid };
 
-       allow $1_t self:process ~{ setcurrent setexec setrlimit execmem execstack execheap };
+       allow $1_t self:process ~{ ptrace setcurrent setexec setrlimit execmem execstack execheap };
        dontaudit $1_t self:process setrlimit;
        dontaudit $1_t self:netlink_route_socket { create ioctl read getattr write setattr append bind connect getopt setopt shutdown nlmsg_read nlmsg_write };
 
@@ -1374,7 +1377,10 @@ template(`userdom_admin_user_template',`
        # $1_t local policy
        #
 
-       allow $1_t self:capability ~{ sys_module audit_control audit_write };
+       allow $1_t self:capability ~{ sys_ptrace sys_module audit_control audit_write };
+       tunable_policy(`deny_ptrace',`',`
+               allow $1_t self:capability sys_ptrace;
+       ')
        allow $1_t self:capability2 syslog;
        allow $1_t self:process { setexec setfscreate };
        allow $1_t self:netlink_audit_socket nlmsg_readpriv;
@@ -4011,7 +4017,9 @@ interface(`userdom_ptrace_all_users',`
                attribute userdomain;
        ')
 
-       allow $1 userdomain:process ptrace;
+       tunable_policy(`deny_ptrace',`',`
+               allow $1 userdomain:process ptrace;
+       ')
 ')
 
 ########################################
index e50a784e0be7ed8a13e10703fd914d2a26b6177f..5d6dbad37a118abd038979e027c1d9661f9c7545 100644 (file)
@@ -206,7 +206,6 @@ tunable_policy(`xend_run_qemu',`
 #
 
 allow xend_t self:capability { dac_override ipc_lock net_admin setuid sys_admin sys_nice sys_tty_config net_raw };
-dontaudit xend_t self:capability { sys_ptrace };
 allow xend_t self:process { signal sigkill };
 dontaudit xend_t self:process ptrace;
 # internal communication is often done using fifo and unix sockets.