blob: d092d0911cf9626f96e3ed74ca37cb8fb251eb25 [file] [log] [blame]
Jeff Vander Stoepd22987b2015-11-03 09:54:39 -08001# rules removed from the domain attribute
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -08002
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -08003# Search /storage/emulated tmpfs mount.
4allow domain_deprecated tmpfs:dir r_dir_perms;
Jeff Vander Stoep7ef80732016-09-09 16:27:17 -07005auditallow { domain_deprecated -appdomain -init -sdcardd -surfaceflinger -system_server -vold -zygote } tmpfs:dir r_dir_perms;
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -08006
7# Inherit or receive open files from others.
8allow domain_deprecated system_server:fd use;
Jeff Vander Stoep3a0721a2016-10-01 05:26:15 -07009auditallow { domain_deprecated -appdomain -netd -surfaceflinger } system_server:fd use;
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -080010
11# Connect to adbd and use a socket transferred from it.
12# This is used for e.g. adb backup/restore.
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -080013allow domain_deprecated adbd:fd use;
Jeff Vander Stoep7ef80732016-09-09 16:27:17 -070014auditallow { domain_deprecated -appdomain -system_server } adbd:fd use;
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -080015
16# Root fs.
17allow domain_deprecated rootfs:dir r_dir_perms;
18allow domain_deprecated rootfs:file r_file_perms;
19allow domain_deprecated rootfs:lnk_file r_file_perms;
Nick Kralevich164af102017-01-06 16:25:41 -080020auditallow { domain_deprecated -healthd -init -installd -servicemanager -system_server -ueventd -uncrypt -vold -zygote } rootfs:dir { open getattr read ioctl lock }; # search granted in domain
21auditallow { domain_deprecated -healthd -init -installd -servicemanager -system_server -ueventd -uncrypt -vold -zygote } rootfs:file r_file_perms;
22auditallow { domain_deprecated -appdomain -healthd -init -installd -servicemanager -system_server -ueventd -uncrypt -vold -zygote } rootfs:lnk_file { getattr open ioctl lock }; # read granted in domain
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -080023
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -080024# System file accesses.
25allow domain_deprecated system_file:dir r_dir_perms;
26allow domain_deprecated system_file:file r_file_perms;
Nick Kralevich68f23362016-11-07 16:14:28 -080027auditallow {
28 domain_deprecated
29 -appdomain
Nick Kralevich49e35882016-11-25 18:00:38 -080030 -fingerprintd
Nick Kralevich68f23362016-11-07 16:14:28 -080031 -init
32 -installd
33 -rild
34 -surfaceflinger
35 -system_server
36 -zygote
37} system_file:dir { open read ioctl lock }; # search getattr in domain
38auditallow {
39 domain_deprecated
40 -appdomain
41 -init
42 -rild
43 -surfaceflinger
44 -system_server
45 -zygote
46} system_file:file { ioctl lock }; # read open getattr in domain
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -080047
48# Read files already opened under /data.
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -080049allow domain_deprecated system_data_file:file { getattr read };
50allow domain_deprecated system_data_file:lnk_file r_file_perms;
Jeff Vander Stoep5c4435a2016-09-24 14:26:45 -070051auditallow { domain_deprecated -appdomain -init -sdcardd -system_server -tee } system_data_file:file { getattr read };
52auditallow { domain_deprecated -appdomain -init -system_server -tee } system_data_file:lnk_file r_file_perms;
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -080053
54# Read apk files under /data/app.
55allow domain_deprecated apk_data_file:dir { getattr search };
56allow domain_deprecated apk_data_file:file r_file_perms;
57allow domain_deprecated apk_data_file:lnk_file r_file_perms;
Jeff Vander Stoep7ef80732016-09-09 16:27:17 -070058auditallow { domain_deprecated -appdomain -dex2oat -init -installd -system_server } apk_data_file:dir { getattr search };
59auditallow { domain_deprecated -appdomain -dex2oat -installd -system_server } apk_data_file:file r_file_perms;
60auditallow { domain_deprecated -appdomain -dex2oat -installd -system_server } apk_data_file:lnk_file r_file_perms;
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -080061
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -080062# Read already opened /cache files.
Nick Kralevichd5464732016-01-16 08:15:52 -080063allow domain_deprecated cache_file:dir r_dir_perms;
64allow domain_deprecated cache_file:file { getattr read };
Nick Kralevichdc37ea72016-01-07 12:56:54 -080065allow domain_deprecated cache_file:lnk_file r_file_perms;
Nick Kralevich164af102017-01-06 16:25:41 -080066auditallow { domain_deprecated -init -system_server -vold } cache_file:dir { open read search ioctl lock };
67auditallow { domain_deprecated -appdomain -init -system_server -vold } cache_file:dir getattr;
68auditallow { domain_deprecated -init -system_server -vold } cache_file:file { getattr read };
Jeff Vander Stoep7ef80732016-09-09 16:27:17 -070069auditallow { domain_deprecated -init -system_server -vold } cache_file:lnk_file r_file_perms;
Felipe Leme549ccf72015-12-22 12:37:17 -080070
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -080071#Allow access to ion memory allocation device
72allow domain_deprecated ion_device:chr_file rw_file_perms;
Jeff Vander Stoep7ef80732016-09-09 16:27:17 -070073# split this auditallow into read and write perms since most domains seem to
74# only require read
Jeff Vander Stoep24ad5142016-10-01 20:47:01 -070075auditallow { domain_deprecated -appdomain -fingerprintd -keystore -surfaceflinger -system_server -tee -vold -zygote } ion_device:chr_file r_file_perms;
Jeff Vander Stoep7ef80732016-09-09 16:27:17 -070076auditallow domain_deprecated ion_device:chr_file { write append };
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -080077
78# Read access to pseudo filesystems.
79r_dir_file(domain_deprecated, proc)
Jeff Vander Stoepa2c40552016-09-13 11:03:36 -070080r_dir_file(domain_deprecated, sysfs)
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -080081r_dir_file(domain_deprecated, cgroup)
Nick Kralevich7a35c132016-03-31 14:11:50 -070082allow domain_deprecated proc_meminfo:file r_file_perms;
Jeff Vander Stoep7ef80732016-09-09 16:27:17 -070083#auditallow domain_deprecated proc:dir r_dir_perms; # r_dir_perms granted in domain
Nick Kralevich164af102017-01-06 16:25:41 -080084auditallow { domain_deprecated -fsck -fsck_untrusted -init -rild -system_server -vold } proc:file r_file_perms;
85auditallow { domain_deprecated -fsck -fsck_untrusted -init -rild -system_server -vold } proc:lnk_file { open ioctl lock }; # getattr read granted in domain
86auditallow { domain_deprecated -bluetooth -fingerprintd -healthd -init -netd -rild -system_app -surfaceflinger -system_server -tee -ueventd -vold -wpa } sysfs:dir { open getattr read ioctl lock }; # search granted in domain
87auditallow { domain_deprecated -bluetooth -fingerprintd -healthd -init -netd -rild -system_app -surfaceflinger -system_server -tee -ueventd -vold -wpa } sysfs:file r_file_perms;
88auditallow { domain_deprecated -bluetooth -fingerprintd -healthd -init -netd -rild -system_app -surfaceflinger -system_server -tee -ueventd -vold -wpa } sysfs:lnk_file { getattr open ioctl lock }; # read granted in domain
Nick Kralevich2c8ea362016-10-29 08:07:12 -070089auditallow {
90 domain_deprecated
91 -appdomain
92 -dumpstate
93 -fingerprintd
94 -healthd
95 -init
96 -inputflinger
97 -installd
98 -keystore
99 -netd
100 -rild
101 -surfaceflinger
102 -system_server
103 -zygote
104} cgroup:dir r_dir_perms;
105auditallow {
106 domain_deprecated
107 -appdomain
108 -dumpstate
109 -fingerprintd
110 -healthd
111 -init
112 -inputflinger
113 -installd
114 -keystore
115 -netd
116 -rild
117 -surfaceflinger
118 -system_server
119 -zygote
120} cgroup:{ file lnk_file } r_file_perms;
Nick Kralevich164af102017-01-06 16:25:41 -0800121auditallow { domain_deprecated -appdomain -init -surfaceflinger -system_server -vold } proc_meminfo:file r_file_perms;
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -0800122
Jeff Vander Stoep6e3506e2015-11-05 15:24:22 -0800123# Get SELinux enforcing status.
124allow domain_deprecated selinuxfs:dir r_dir_perms;
125allow domain_deprecated selinuxfs:file r_file_perms;
Jeff Vander Stoep3a0721a2016-10-01 05:26:15 -0700126auditallow { domain_deprecated -appdomain -debuggerd -init -installd -keystore -postinstall_dexopt -runas -servicemanager -system_server -ueventd -zygote } selinuxfs:dir { open getattr read ioctl lock }; # search granted in domain
127auditallow { domain_deprecated -appdomain -debuggerd -init -installd -keystore -postinstall_dexopt -runas -servicemanager -system_server -ueventd -zygote } selinuxfs:file { open read ioctl lock }; # getattr granted in domain