You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
311 lines
6.1 KiB
311 lines
6.1 KiB
# rules removed from the domain attribute |
|
|
|
# Search /storage/emulated tmpfs mount. |
|
allow { domain_deprecated -installd } tmpfs:dir r_dir_perms; |
|
userdebug_or_eng(` |
|
auditallow { |
|
domain_deprecated |
|
-appdomain |
|
-installd |
|
-sdcardd |
|
-surfaceflinger |
|
-system_server |
|
-vold |
|
-zygote |
|
} tmpfs:dir r_dir_perms; |
|
') |
|
|
|
# Inherit or receive open files from others. |
|
allow domain_deprecated system_server:fd use; |
|
userdebug_or_eng(` |
|
auditallow { domain_deprecated -appdomain -netd -surfaceflinger } system_server:fd use; |
|
') |
|
|
|
# Connect to adbd and use a socket transferred from it. |
|
# This is used for e.g. adb backup/restore. |
|
allow domain_deprecated adbd:fd use; |
|
userdebug_or_eng(` |
|
auditallow { domain_deprecated -appdomain -system_server } adbd:fd use; |
|
') |
|
|
|
# Root fs. |
|
allow domain_deprecated rootfs:dir r_dir_perms; |
|
allow domain_deprecated rootfs:file r_file_perms; |
|
allow domain_deprecated rootfs:lnk_file r_file_perms; |
|
userdebug_or_eng(` |
|
auditallow { |
|
domain_deprecated |
|
-fsck |
|
-healthd |
|
-installd |
|
-servicemanager |
|
-system_server |
|
-ueventd |
|
-uncrypt |
|
-vold |
|
-zygote |
|
} rootfs:dir { open getattr read ioctl lock }; # search granted in domain |
|
auditallow { |
|
domain_deprecated |
|
-healthd |
|
-installd |
|
-servicemanager |
|
-system_server |
|
-ueventd |
|
-uncrypt |
|
-vold |
|
-zygote |
|
} rootfs:file r_file_perms; |
|
auditallow { |
|
domain_deprecated |
|
-appdomain |
|
-healthd |
|
-installd |
|
-servicemanager |
|
-system_server |
|
-ueventd |
|
-uncrypt |
|
-vold |
|
-zygote |
|
} rootfs:lnk_file { getattr open ioctl lock }; # read granted in domain |
|
') |
|
|
|
# System file accesses. |
|
allow domain_deprecated system_file:dir r_dir_perms; |
|
userdebug_or_eng(` |
|
auditallow { |
|
domain_deprecated |
|
-appdomain |
|
-fingerprintd |
|
-installd |
|
-keystore |
|
-surfaceflinger |
|
-system_server |
|
-update_engine |
|
-vold |
|
-zygote |
|
} system_file:dir { open read ioctl lock }; # search getattr in domain |
|
') |
|
|
|
# Read files already opened under /data. |
|
allow domain_deprecated system_data_file:file { getattr read }; |
|
allow domain_deprecated system_data_file:lnk_file r_file_perms; |
|
userdebug_or_eng(` |
|
auditallow { |
|
domain_deprecated |
|
-appdomain |
|
-sdcardd |
|
-system_server |
|
-tee |
|
} system_data_file:file { getattr read }; |
|
auditallow { |
|
domain_deprecated |
|
-appdomain |
|
-system_server |
|
-tee |
|
} system_data_file:lnk_file r_file_perms; |
|
') |
|
|
|
# Read apk files under /data/app. |
|
allow domain_deprecated apk_data_file:dir { getattr search }; |
|
allow domain_deprecated apk_data_file:file r_file_perms; |
|
allow domain_deprecated apk_data_file:lnk_file r_file_perms; |
|
userdebug_or_eng(` |
|
auditallow { |
|
domain_deprecated |
|
-appdomain |
|
-dex2oat |
|
-installd |
|
-system_server |
|
} apk_data_file:dir { getattr search }; |
|
auditallow { |
|
domain_deprecated |
|
-appdomain |
|
-dex2oat |
|
-installd |
|
-system_server |
|
} apk_data_file:file r_file_perms; |
|
auditallow { |
|
domain_deprecated |
|
-appdomain |
|
-dex2oat |
|
-installd |
|
-system_server |
|
} apk_data_file:lnk_file r_file_perms; |
|
') |
|
|
|
# Read already opened /cache files. |
|
allow domain_deprecated cache_file:dir r_dir_perms; |
|
allow domain_deprecated cache_file:file { getattr read }; |
|
allow domain_deprecated cache_file:lnk_file r_file_perms; |
|
userdebug_or_eng(` |
|
auditallow { |
|
domain_deprecated |
|
-system_server |
|
-vold |
|
} cache_file:dir { open read search ioctl lock }; |
|
auditallow { |
|
domain_deprecated |
|
-appdomain |
|
-system_server |
|
-vold |
|
} cache_file:dir getattr; |
|
auditallow { |
|
domain_deprecated |
|
-system_server |
|
-vold |
|
} cache_file:file { getattr read }; |
|
auditallow { |
|
domain_deprecated |
|
-system_server |
|
-vold |
|
} cache_file:lnk_file r_file_perms; |
|
') |
|
|
|
# Allow access to ion memory allocation device |
|
allow domain_deprecated ion_device:chr_file rw_file_perms; |
|
# split this auditallow into read and write perms since most domains seem to |
|
# only require read |
|
userdebug_or_eng(` |
|
auditallow { |
|
domain_deprecated |
|
-appdomain |
|
-fingerprintd |
|
-keystore |
|
-surfaceflinger |
|
-system_server |
|
-tee |
|
-vold |
|
-zygote |
|
} ion_device:chr_file r_file_perms; |
|
auditallow domain_deprecated ion_device:chr_file { write append }; |
|
') |
|
|
|
# Read access to pseudo filesystems. |
|
r_dir_file(domain_deprecated, proc) |
|
r_dir_file(domain_deprecated, sysfs) |
|
r_dir_file(domain_deprecated, cgroup) |
|
allow domain_deprecated proc_meminfo:file r_file_perms; |
|
|
|
userdebug_or_eng(` |
|
auditallow { |
|
domain_deprecated |
|
-fsck |
|
-fsck_untrusted |
|
-sdcardd |
|
-system_server |
|
-update_engine |
|
-vold |
|
} proc:file r_file_perms; |
|
auditallow { |
|
domain_deprecated |
|
-fsck |
|
-fsck_untrusted |
|
-system_server |
|
-vold |
|
} proc:lnk_file { open ioctl lock }; # getattr read granted in domain |
|
auditallow { |
|
domain_deprecated |
|
-bluetooth |
|
-fingerprintd |
|
-healthd |
|
-netd |
|
-system_app |
|
-surfaceflinger |
|
-system_server |
|
-tee |
|
-ueventd |
|
-vold |
|
} sysfs:dir { open getattr read ioctl lock }; # search granted in domain |
|
auditallow { |
|
domain_deprecated |
|
-bluetooth |
|
-fingerprintd |
|
-healthd |
|
-netd |
|
-system_app |
|
-surfaceflinger |
|
-system_server |
|
-tee |
|
-ueventd |
|
-vold |
|
} sysfs:file r_file_perms; |
|
auditallow { |
|
domain_deprecated |
|
-bluetooth |
|
-fingerprintd |
|
-healthd |
|
-netd |
|
-system_app |
|
-surfaceflinger |
|
-system_server |
|
-tee |
|
-ueventd |
|
-vold |
|
} sysfs:lnk_file { getattr open ioctl lock }; # read granted in domain |
|
auditallow { |
|
domain_deprecated |
|
-appdomain |
|
-dumpstate |
|
-fingerprintd |
|
-healthd |
|
-inputflinger |
|
-installd |
|
-keystore |
|
-netd |
|
-surfaceflinger |
|
-system_server |
|
-zygote |
|
} cgroup:dir r_dir_perms; |
|
auditallow { |
|
domain_deprecated |
|
-appdomain |
|
-dumpstate |
|
-fingerprintd |
|
-healthd |
|
-inputflinger |
|
-installd |
|
-keystore |
|
-netd |
|
-surfaceflinger |
|
-system_server |
|
-zygote |
|
} cgroup:{ file lnk_file } r_file_perms; |
|
auditallow { |
|
domain_deprecated |
|
-appdomain |
|
-surfaceflinger |
|
-system_server |
|
-vold |
|
} proc_meminfo:file r_file_perms; |
|
') |
|
|
|
# Get SELinux enforcing status. |
|
allow domain_deprecated selinuxfs:dir r_dir_perms; |
|
allow domain_deprecated selinuxfs:file r_file_perms; |
|
userdebug_or_eng(` |
|
auditallow { |
|
domain_deprecated |
|
-appdomain |
|
-installd |
|
-keystore |
|
-postinstall_dexopt |
|
-runas |
|
-servicemanager |
|
-system_server |
|
-ueventd |
|
-zygote |
|
} selinuxfs:dir { open getattr read ioctl lock }; # search granted in domain |
|
auditallow { |
|
domain_deprecated |
|
-appdomain |
|
-installd |
|
-keystore |
|
-postinstall_dexopt |
|
-runas |
|
-servicemanager |
|
-system_server |
|
-ueventd |
|
-zygote |
|
} selinuxfs:file { open read ioctl lock }; # getattr granted in domain |
|
')
|
|
|