Merge "Explicitly label system_server's dependencies in /proc"
This commit is contained in:
commit
6928dd3b8b
8 changed files with 32 additions and 3 deletions
|
@ -108,7 +108,15 @@ neverallow all_untrusted_apps anr_data_file:dir ~search;
|
|||
|
||||
# Avoid reads from generically labeled /proc files
|
||||
# Create a more specific label if needed
|
||||
neverallow all_untrusted_apps proc:file { no_rw_file_perms no_x_file_perms };
|
||||
neverallow all_untrusted_apps {
|
||||
proc
|
||||
proc_asound_cards
|
||||
proc_kmsg
|
||||
proc_loadavg
|
||||
proc_pagetypeinfo
|
||||
proc_version
|
||||
proc_vmallocinfo
|
||||
}:file { no_rw_file_perms no_x_file_perms };
|
||||
|
||||
# Avoid all access to kernel configuration
|
||||
neverallow all_untrusted_apps config_gz:file { no_rw_file_perms no_x_file_perms };
|
||||
|
|
|
@ -447,7 +447,7 @@
|
|||
(typeattributeset preopt2cachename_exec_26_0 (preopt2cachename_exec))
|
||||
(typeattributeset print_service_26_0 (print_service))
|
||||
(typeattributeset priv_app_26_0 (mediaprovider priv_app))
|
||||
(typeattributeset proc_26_0 (proc proc_uid_time_in_state proc_kmsg))
|
||||
(typeattributeset proc_26_0 (proc proc_asound_cards proc_kmsg proc_loadavg proc_pagetypeinfo proc_uid_time_in_state proc_version proc_vmallocinfo))
|
||||
(typeattributeset proc_bluetooth_writable_26_0 (proc_bluetooth_writable))
|
||||
(typeattributeset proc_cpuinfo_26_0 (proc_cpuinfo))
|
||||
(typeattributeset proc_drop_caches_26_0 (proc_drop_caches))
|
||||
|
|
|
@ -2,16 +2,19 @@
|
|||
genfscon rootfs / u:object_r:rootfs:s0
|
||||
# proc labeling can be further refined (longest matching prefix).
|
||||
genfscon proc / u:object_r:proc:s0
|
||||
genfscon proc /asound/cards u:object_r:proc_asound_cards:s0
|
||||
genfscon proc /config.gz u:object_r:config_gz:s0
|
||||
genfscon proc /interrupts u:object_r:proc_interrupts:s0
|
||||
genfscon proc /iomem u:object_r:proc_iomem:s0
|
||||
genfscon proc /kmsg u:object_r:proc_kmsg:s0
|
||||
genfscon proc /loadavg u:object_r:proc_loadavg:s0
|
||||
genfscon proc /meminfo u:object_r:proc_meminfo:s0
|
||||
genfscon proc /misc u:object_r:proc_misc:s0
|
||||
genfscon proc /modules u:object_r:proc_modules:s0
|
||||
genfscon proc /net u:object_r:proc_net:s0
|
||||
genfscon proc /net/xt_qtaguid/ctrl u:object_r:qtaguid_proc:s0
|
||||
genfscon proc /cpuinfo u:object_r:proc_cpuinfo:s0
|
||||
genfscon proc /pagetypeinfo u:object_r:proc_pagetypeinfo:s0
|
||||
genfscon proc /softirqs u:object_r:proc_timer:s0
|
||||
genfscon proc /stat u:object_r:proc_stat:s0
|
||||
genfscon proc /sysrq-trigger u:object_r:proc_sysrq:s0
|
||||
|
@ -42,6 +45,8 @@ genfscon proc /uid_cputime/remove_uid_range u:object_r:proc_uid_cputime_removeui
|
|||
genfscon proc /uid_io/stats u:object_r:proc_uid_io_stats:s0
|
||||
genfscon proc /uid_procstat/set u:object_r:proc_uid_procstat_set:s0
|
||||
genfscon proc /uid_time_in_state u:object_r:proc_uid_time_in_state:s0
|
||||
genfscon proc /version u:object_r:proc_version:s0
|
||||
genfscon proc /vmallocinfo u:object_r:proc_vmallocinfo:s0
|
||||
genfscon proc /zoneinfo u:object_r:proc_zoneinfo:s0
|
||||
|
||||
# selinuxfs booleans can be individually labeled.
|
||||
|
|
|
@ -674,9 +674,13 @@ allow system_server preloads_media_file:dir { r_dir_perms write remove_name rmdi
|
|||
r_dir_file(system_server, cgroup)
|
||||
allow system_server ion_device:chr_file r_file_perms;
|
||||
|
||||
r_dir_file(system_server, proc)
|
||||
r_dir_file(system_server, proc_asound_cards)
|
||||
r_dir_file(system_server, proc_loadavg)
|
||||
r_dir_file(system_server, proc_meminfo)
|
||||
r_dir_file(system_server, proc_net)
|
||||
r_dir_file(system_server, proc_pagetypeinfo)
|
||||
r_dir_file(system_server, proc_version)
|
||||
r_dir_file(system_server, proc_vmallocinfo)
|
||||
r_dir_file(system_server, rootfs)
|
||||
r_dir_file(system_server, sysfs_type)
|
||||
|
||||
|
|
|
@ -153,6 +153,9 @@ read_runtime_log_tags(dumpstate)
|
|||
# Read files in /proc
|
||||
allow dumpstate proc_meminfo:file r_file_perms;
|
||||
allow dumpstate proc_net:file r_file_perms;
|
||||
allow dumpstate proc_pagetypeinfo:file r_file_perms;
|
||||
allow dumpstate proc_version:file r_file_perms;
|
||||
allow dumpstate proc_vmallocinfo:file r_file_perms;
|
||||
r_dir_file(dumpstate, proc)
|
||||
|
||||
# Read network state info files.
|
||||
|
|
|
@ -13,14 +13,17 @@ type usermodehelper, fs_type;
|
|||
type sysfs_usermodehelper, fs_type, sysfs_type;
|
||||
type qtaguid_proc, fs_type, mlstrustedobject;
|
||||
type proc_bluetooth_writable, fs_type;
|
||||
type proc_asound_cards, fs_type;
|
||||
type proc_cpuinfo, fs_type;
|
||||
type proc_interrupts, fs_type;
|
||||
type proc_iomem, fs_type;
|
||||
type proc_kmsg, fs_type;
|
||||
type proc_loadavg, fs_type;
|
||||
type proc_meminfo, fs_type;
|
||||
type proc_misc, fs_type;
|
||||
type proc_modules, fs_type;
|
||||
type proc_net, fs_type;
|
||||
type proc_pagetypeinfo, fs_type;
|
||||
type proc_perf, fs_type;
|
||||
type proc_stat, fs_type;
|
||||
type proc_sysrq, fs_type;
|
||||
|
@ -31,6 +34,8 @@ type proc_uid_cputime_removeuid, fs_type;
|
|||
type proc_uid_io_stats, fs_type;
|
||||
type proc_uid_procstat_set, fs_type;
|
||||
type proc_uid_time_in_state, fs_type;
|
||||
type proc_version, fs_type;
|
||||
type proc_vmallocinfo, fs_type;
|
||||
type proc_zoneinfo, fs_type;
|
||||
type selinuxfs, fs_type, mlstrustedobject;
|
||||
type cgroup, fs_type, mlstrustedobject;
|
||||
|
|
|
@ -14,6 +14,7 @@ userdebug_or_eng(`
|
|||
')
|
||||
|
||||
r_dir_file(hal_audio, proc)
|
||||
r_dir_file(hal_audio, proc_asound_cards)
|
||||
allow hal_audio audio_device:dir r_dir_perms;
|
||||
allow hal_audio audio_device:chr_file rw_file_perms;
|
||||
|
||||
|
|
|
@ -271,6 +271,9 @@ allow init proc_sysrq:file w_file_perms;
|
|||
# Read /proc/stat for bootchart.
|
||||
allow init proc_stat:file r_file_perms;
|
||||
|
||||
# Read /proc/version.
|
||||
allow init proc_version:file r_file_perms;
|
||||
|
||||
# Reboot.
|
||||
allow init self:capability sys_boot;
|
||||
|
||||
|
|
Loading…
Reference in a new issue