# Transition to crash_dump when /system/bin/crash_dump* is executed. # This occurs when the process crashes. domain_auto_trans(domain, crash_dump_exec, crash_dump); allow domain crash_dump:process sigchld; # Limit ability to ptrace or read sensitive /proc/pid files of processes # with other UIDs to these whitelisted domains. neverallow { domain -vold -dumpstate -storaged -system_server userdebug_or_eng(`-perfprofd') } self:global_capability_class_set sys_ptrace; # Limit ability to generate hardware unique device ID attestations to priv_apps neverallow { domain -priv_app } *:keystore_key gen_unique_id; # Core domains are not permitted to use kernel interfaces which are not # explicitly labeled. # TODO(b/65643247): Apply these neverallow rules to all coredomain. full_treble_only(` # /proc neverallow { coredomain -dumpstate -platform_app -priv_app -system_app -vold -vendor_init } proc:file no_rw_file_perms; # /sys neverallow { coredomain -charger -dumpstate -healthd -init -priv_app -storaged -system_app -ueventd -vold -vendor_init } sysfs:file no_rw_file_perms; # /dev neverallow { coredomain -fsck -init -shell -ueventd -vendor_init } device:{ blk_file file } no_rw_file_perms; # debugfs neverallow { coredomain -dumpstate -init -system_server -vendor_init } debugfs:file no_rw_file_perms; # tracefs neverallow { coredomain userdebug_or_eng(`-atrace') -dumpstate -init userdebug_or_eng(`-perfprofd') -shell -vendor_init } debugfs_tracing:file no_rw_file_perms; # inotifyfs neverallow { coredomain -init -vendor_init } inotify:file no_rw_file_perms; # pstorefs neverallow { coredomain -bootstat -charger -dumpstate -healthd -init -logd -logpersist -recovery_persist -recovery_refresh -shell -system_server -vendor_init } pstorefs:file no_rw_file_perms; # configfs neverallow { coredomain -init -system_server -vendor_init } configfs:file no_rw_file_perms; # functionfs neverallow { coredomain -adbd -init -mediaprovider -vendor_init }functionfs:file no_rw_file_perms; # usbfs and binfmt_miscfs neverallow { coredomain -init -vendor_init }{ usbfs binfmt_miscfs }:file no_rw_file_perms; ')