- Feb 13, 2017
-
-
Steven Moreland authored
Update shell.te to reflect the fact that hwbinder_user permission is for lshal, not dumpsys. Bug: 33382892 Test: pass Change-Id: I1d298261cea82177436a662afbaa767f00117b16
-
Treehugger Robot authored
-
Chia-I Wu authored
Bug: 35210697 Test: manual Change-Id: I0e1e8923851f668d5fe6c210f411a8e4ff0470c7
-
- Feb 12, 2017
-
-
Nick Kralevich authored
On boot, Android runs restorecon on a number of virtual directories, such as /sys and /sys/kernel/debug, to ensure that the SELinux labels are correct. To avoid causing excessive boot time delays, the restorecon code aggressively prunes directories, to avoid recursing down directory trees which will never have a matching SELinux label. See: * https://android-review.googlesource.com/93401 * https://android-review.googlesource.com/109103 The key to this optimization is avoiding unnecessarily broad regular expressions in file_contexts. If an overly broad regex exists, the tree pruning code is ineffective, and the restorecon ends up visiting lots of unnecessary directories. The directory /sys/kernel/debug/tracing contains approximately 4500 files normally, and on debuggable builds, this number can jump to over 9000 files when the processing from wifi-events.rc occurs. For comparison, the entire /sys/kernel/debug tree (excluding /sys/kernel/debug/tracing) only contains approximately 8000 files. The regular expression "/sys/kernel(/debug)?/tracing/(.*)?" ends up matching a significant number of files, which impacts boot performance. Instead of using an overly broad regex, refine the regex so only the files needed have an entry in file_contexts. This list of files is essentially a duplicate of the entries in frameworks/native/cmds/atrace/atrace.rc . This change reduces the restorecon_recursive call for /sys/kernel/debug from approximately 260ms to 40ms, a boot time reduction of approximately 220ms. Bug: 35248779 Test: device boots, no SELinux denials, faster boot. Change-Id: I70f8af102762ec0180546b05fcf014c097135f3e
-
- Feb 11, 2017
-
-
Nick Kralevich authored
Use the default filesystem label from genfs_contexts for the directory /sys/kernel/debug/tracing and /sys/kernel/tracing, instead of explicitly attempting to relabel it. There are three cases we need to consider: 1) Old-style tracing functionality is on debugfs 2) tracing functionality is on tracefs, but mounted under debugfs 3) tracefs is mounted at /sys/kernel/tracing For #1, the label on /sys/kernel/debug/tracing will be debugfs, and all processes are allowed debugfs:dir search, so having the label be debugfs instead of debugfs_tracing will not result in any permission change. For #2, the label on /sys/kernel/debug/tracing will be debugfs_tracing, which is the same as it is today. The empty directory /sys/kernel/tracing wlll retain the sysfs label, avoiding the denial below. For #3, /sys/kernel/debug/tracing won't exist, and /sys/kernel/tracing will have the debugfs_tracing label, where processes are allowed search access. Addresses the following denial: avc: denied { associate } for pid=1 comm="init" name="tracing" dev="sysfs" ino=95 scontext=u:object_r:debugfs_tracing:s0 tcontext=u:object_r:sysfs:s0 tclass=filesystem permissive=0 Bug: 31856701 Bug: 35197529 Test: no denials on boot Change-Id: I7233ea92c6987b8edfce9c2f1d77eb25c7df820f
-
Treehugger Robot authored
-
Craig Donner authored
There is only a single systemapi at the moment that is callable, and it is protected by a signature/preinstalled permission. (cherry picked from commit I778864afc9d02f8b2bfcf6b92a9f975ee87c4724) Bug: 35059826,33297721 Test: manually on a marlin Change-Id: I3789ce8238f5a52ead8f466dfa3045fbcef1958e
-
- Feb 10, 2017
-
-
Treehugger Robot authored
-
Treehugger Robot authored
-
Treehugger Robot authored
-
Treehugger Robot authored
* changes: init.te: remove domain_deprecated Remove logspam
-
Jeff Vander Stoep authored
Addresses avc: denied { find } for service=vrmanager pid=472 uid=1000 scontext=u:r:surfaceflinger:s0 tcontext=u:object_r:vr_manager_service:s0 tclass=service_manager Test: Marlin builds and boots. Denial no longer observed. Bug: 35258608 Bug: 35197529 Change-Id: I480dff3fdaf01f71e29e96f08350f705c6a23bba
-
Jeff Vander Stoep authored
avc: denied { read } for name="modalias" dev="sysfs" ino=17624 scontext=u:r:hal_fingerprint_default:s0 tcontext=u:object_r:sysfs:s0 tclass=file Test: Marlin builds and boots without this denial. Bug: 35197529 Change-Id: I3b64db571ac10c843f3765ed557ceac07bc6580e
-
Treehugger Robot authored
-
Nick Kralevich authored
Make the policy smaller and less noisy on user builds by suppressing auditallow rules. Bug: 28760354 Test: policy compiles and device boots. No obvious problems. Change-Id: Iddf6f12f8ce8838e84b09b2f9f3f0c8b700543f5
-
Nick Kralevich authored
auditallows have been in place for a while, and no obvious denials. Remove domain_deprecated from init.te While I'm here, clean up the formatting of the lines in domain_deprecated.te. Bug: 28760354 Test: policy compiles and device boots. No obvious problems. Change-Id: Ia12e77c3e25990957abf15744e083eed9ffbb056
-
Jeff Vander Stoep authored
Grant observed uses of permissions being audited in domain_deprecated. fsck avc: granted { getattr } for path="/" dev="dm-0" ino=2 scontext=u:r:fsck:s0 tcontext=u:object_r:rootfs:s0 tclass=dir keystore avc: granted { read open } for path="/vendor/lib64/hw" dev="dm-1" ino=168 scontext=u:r:keystore:s0 tcontext=u:object_r:system_file:s0 tclass=dir sdcardd avc: granted { read open } for path="/proc/filesystems" dev="proc" ino=4026532412 scontext=u:r:sdcardd:s0 tcontext=u:object_r:proc:s0 tclass=file update_engine avc: granted { getattr } for path="/proc/misc" dev="proc" ino=4026532139 scontext=u:r:update_engine:s0 tcontext=u:object_r:proc:s0 tclass=file avc: granted { read open } for path="/proc/misc" dev="proc" ino=4026532139 scontext=u:r:update_engine:s0 tcontext=u:object_r:proc:s0 tclass=file avc: granted { read } for name="hw" dev="dm-1" ino=168 scontext=u:r:update_engine:s0 tcontext=u:object_r:system_file:s0 tclass=dir vold avc: granted { read open } for path="/vendor/lib64/hw" dev="dm-1" ino=168 scontext=u:r:vold:s0 tcontext=u:object_r:system_file:s0 tclass=dir Test: Marlin builds and boots, avc granted messages no longer observed. Bug: 35197529 Change-Id: Iae34ae3b9e22ba7550cf7d45dc011ab043e63424
-
Nick Kralevich authored
-
Nick Kralevich authored
Addresses the following auditallow spam: avc: granted { getattr } for comm="init" path="/data/app/com.sling-1/lib/x86/libavcodec-56.so" dev="mmcblk0p11" ino=32607 scontext=u:r:init:s0 tcontext=u:object_r:apk_data_file:s0 tclass=file Test: policy compiles. Change-Id: I81775f8de93f0b4334279e9f5e19d27e6171616f
-
Treehugger Robot authored
-
Nick Kralevich authored
Move net.dns* from net_radio_prop to the newly created label net_dns_prop. This allows finer grain control over this specific property. Prior to this change, this property was readable to all SELinux domains, and writable by the following SELinux domains: * system_server * system_app (apps which run as UID=system) * netmgrd * radio This change: 1) Removes read access to this property to everyone EXCEPT untrusted_app and system_server. 2) Limit write access to system_server. In particular, this change removes read access to priv_apps. Any priv_app which ships with the system should not be reading this property. Bug: 34115651 Test: Device boots, wifi turns on, no problems browsing the internet Change-Id: I8a32e98c4f573d634485c4feac91baa35d021d38
-
- Feb 09, 2017
-
-
Nick Bray authored
Bug: 30989383 Bug: 34731101 Test: manual Change-Id: Icf9d48568b505c6b788f2f5f456f2d709969fbeb
-
Nick Kralevich authored
Init has access to a number of character devices inherited via domain.te. Exclude those character devices from the auditallow logging. In addition, init has access to a number of character devices explicitly listed in init.te. Exclude those from auditallow logging too. Addresses various auditallow spam, including: avc: granted { read open } for comm="init" path="/dev/urandom" dev="tmpfs" ino=1197 scontext=u:r:init:s0 tcontext=u:object_r:random_device:s0 tclass=chr_file avc: granted { read open } for comm="init" path="/dev/ptmx" dev="tmpfs" ino=1294 scontext=u:r:init:s0 tcontext=u:object_r:ptmx_device:s0 tclass=chr_file avc: granted { read } for comm="init" name="keychord" dev="tmpfs" ino=1326 scontext=u:r:init:s0 tcontext=u:object_r:keychord_device:s0 tclass=chr_file avc: granted { read open } for comm="init" path="/dev/keychord" dev="tmpfs" ino=1326 scontext=u:r:init:s0 tcontext=u:object_r:keychord_device:s0 tclass=chr_file and others not covered above. Bug: 35197529 Bug: 33347297 Test: policy compiles and no auditallow denials. Change-Id: Id869404a16c81c779943e9967eb32da226b6047e
-
- Feb 08, 2017
-
-
Jeff Tinker authored
Change-Id: I19d65a83c5c3f42296e8cd8a425bf1f64651068f related-to-bug:32815560
-
Alex Klyubin authored
This leaves only the existence of binderservicedomain attribute as public API. All other rules are implementation details of this attribute's policy and are thus now private. Test: No change to policy according to sesearch, except for disappearance of all allow rules to do with *_current targets referenced in binderservicedomain.te. Bug: 31364497 Change-Id: Ic830bcc5ffb6d624e0b3aec831071061cccc513c
-
Alex Klyubin authored
-
Andre Eisenbach authored
Bug: 35097918 Test: manual Change-Id: I84a1eaae99ebd04f0f8a6990b2f85ed7f2e11182
-
- Feb 07, 2017
-
-
Alex Klyubin authored
This leaves only the existence of blkid and blkid_untrusted domains as public API. All other rules are implementation details of these domains' policy and are thus now private. Test: No change to policy according to sesearch, except for disappearance of all allow rules to do with blkid_current and blkid_untrusted_current (as expected). Bug: 31364497 Change-Id: I0dda2feeb64608b204006eecd8a7c9b9c7bb2b81
-
Joe Onorato authored
Test: adb shell incident Bug: 31122534 Change-Id: I4ac9c9ab86867f09b63550707673149fe60f1906
-
Alex Klyubin authored
-
Alex Klyubin authored
-
Alex Klyubin authored
-
Treehugger Robot authored
-
Alex Klyubin authored
-
Alex Klyubin authored
This leaves only the existence of system_server domain as public API. All other rules are implementation details of this domain's policy and are thus now private. Test: No change to policy according to sesearch, except for disappearance of all allow rules to do with system_server_current except those created by other domains' allow rules referencing system_server domain from public and vendor policies. Bug: 31364497 Change-Id: Ifd76fa83c046b9327883eb6f0bbcd2113f2dd1a4
-
Alex Klyubin authored
atrace and its atrace_exec now exist only in private policy. Test: No change to policy according to sesearch, except for disappearance of all allow rules to do with atrace_current which is expected now that atrace cannot be referenced from public or vendor policy. Bug: 31364497 Change-Id: Ib726bcf73073083420c7c065cbd39dcddd7cabe3
-
Alex Klyubin authored
This leaves only the existence of audioserver domain as public API. All other rules are implementation details of this domain's policy and are thus now private. Test: No change to policy according to sesearch, except for disappearance of all allow rules to do with audioserver_current except those created by other domains' allow rules referencing audioserver domain from public and vendor policies. Bug: 31364497 Change-Id: I6662394d8318781de6e3b0c125435b66581363af
-
Dimitry Ivanov authored
Bug: http://b/32123312 Test: mm && boot Change-Id: I6550fbe2bd5f9f5a474419b483b0f786d4025e88
-
Alex Klyubin authored
This leaves only the existence of surfaceflinger domain as public API. All other rules are implementation details of this domain's policy and are thus now private. Test: No change to policy according to sesearch, except for disappearance of all allow rules to do with surfaceflinger_current except those created by other domains' allow rules referencing surfaceflinger domain from public and vendor policies. Bug: 31364497 Change-Id: I177751afad82ec27a5b6d2440cf0672cb5b9dfb8
-
Alex Klyubin authored
This leaves only the existence of adbd domain as public API. All other rules are implementation details of this domain's policy and are thus now private. Test: No change to policy according to sesearch, except for disappearance of all allow rules to do with adbd_current except those created by other domains' allow rules referencing adbd domain from public and vendor policies. Bug: 31364497 Change-Id: Icdce8b89f67c70c6c4c116471aaa412e55028cd8
-