- Jan 24, 2017
-
-
Calin Juravle authored
This CLs adds SElinux policies necessary to compile secondary dex files. When an app loads secondary dex files via the base class loader the files will get reported to PM. During maintance mode PM will compile the secondary dex files which were used via the standard installd model (fork, exec, change uid and lower capabilities). What is needed: dexoptanalyzer - needs to read the dex file and the boot image in order to decide if we need to actually comppile. dex2oat - needs to be able to create *.oat files next to the secondary dex files. Test: devices boots compilation of secondary dex files works without selinux denials cmd package compile --secondary-dex -f -m speed com.google.android.gms Bug: 32871170 Change-Id: I038955b5bc9a72d49f6c24c1cb76276e0f53dc45
-
- Jan 23, 2017
-
-
Josh Gao authored
auditallow this until we track down where the file is opened without O_APPEND. 01-23 08:02:12.272 555 555 W tombstoned: type=1400 audit(0.0:11480): avc: denied { write } for path="/data/anr/traces.txt" dev="sda35" ino=4669445 scontext=u:r:tombstoned:s0 tcontext=u:object_r:anr_data_file:s0 tclass=file permissive=0 Bug: http://b/34193533 Test: mma Change-Id: I77b854dce06231232004432839ebd5aa963ef035
-
- Jan 22, 2017
-
-
Treehugger Robot authored
-
- Jan 21, 2017
-
-
Treehugger Robot authored
-
Treehugger Robot authored
-
Jin Qian authored
Delete rule for permission_service since we use packages.list instead. Test: adb shell storaged -u Bug: 34198239 Change-Id: Ic69d0fe185e627a932bbf8e85fc13163077bbe6b
-
Steven Moreland authored
Test: pass Change-Id: Ie1a6513f8fa9cb4b007fccefe63ccb78fcd45578
-
- Jan 20, 2017
-
-
Steven Moreland authored
In order to dump hardware services using dumpsys, dumpsys needs to be able to talk to the hwservicemanager. Bug: 33382892 Test: dumpsys --hw works from unrooted shell Change-Id: I31f0982193991428da465507f93d50646cb38726
-
Treehugger Robot authored
-
Paul Lawrence authored
Test: Device boots Can take photos Run "adb shell atrace -c -b 16000 -t 5 gfx" without root and check produces output Run "python systrace.py view gfx freq sched am wm dalvik binder_driver" from external/chromium-trace after adb root and check populated Bug: 31856701 Change-Id: Ic319f8a0a3e395efa7ee8ba33a868ac55cb44fe4
-
Alex Klyubin authored
-
Alex Klyubin authored
In my commit f41d89eb I forgot to switch rild and gatekeeperd rules from explicitly associating these domains with the hal_telephony and hal_gatekeeper to using the hal_impl_domain macro. As a result, the recent commit a2519226 inadvertently revoked HwBinder access from rild and gatekeeperd. This commit fixes the issue by switching rild and gatekeeperd to the hal_impl_domain macro. Test: "sepolicy-analyze out/target/product/bullhead/root/sepolicy attribute haldomain" now lists rild and gatekeeperd Test: "sepolicy-analyze out/target/product/bullhead/root/sepolicy attribute hal_telephony" still lists rild Test: "sepolicy-analyze out/target/product/bullhead/root/sepolicy attribute hal_gatekeeper" still lists gatekeeperd Bug: 34180936 Bug: 34470443 Change-Id: I7949556f58c36811205d5ea3ee78ea5708e95b45
-
Josh Gao authored
Fix the following denial: tombstoned: type=1400 audit(0.0:563): avc: denied { append } for path="/data/anr/traces.txt" dev="sda35" ino=679941 scontext=u:r:tombstoned:s0 tcontext=u:object_r:anr_data_file:s0 tclass=file permissive=0 Bug: http://b/34472671 Test: mma Change-Id: Iab5fbaf50888aa0f195841cb7e718ff393e526dd
-
Alex Klyubin authored
Test: No change to SELinux policy Change-Id: I45d6d6ab0538b9d4768b922cfdc2c972272d0b18
-
Alex Klyubin authored
-
Max Bires authored
-
William Roberts authored
wificond_service is not a system_server service, so drop the typeattribute. Provide find permission for system_server so it can still call wificond. Test: compile and run on emulator. Also check built policy to verify the permissions changes are as expected. system_server should have lost the add permissions on wificond_service. Most importantly this needs to be tested on a device with wificond. Change-Id: I6dd655a5ac1dbfef809b8759a86429557a7c1207 Signed-off-by:
William Roberts <william.c.roberts@intel.com>
-
Nick Kralevich authored
As of https://android-review.googlesource.com/324092, ephemeral_app is now an appdomain, so places where both appdomain and ephemeral_app are granted the same set of rules can be deleted. Test: policy compiles. Change-Id: Ideee710ea47af7303e5eb3af1331653afa698415
-
Nick Kralevich authored
-
Alex Klyubin authored
This fixes the following issues introduced in commit d225b697: * plat_file_contexts was empty because the target was referencing system/sepolicy/private/file_contexts via a misspelled variable name. * plat_file_contexts wasn't marked as dirty and thus wasn't rebuilt when system/sepolicy/private/file_contexts changed. This is because the file_contexts dependency was referenced via a misspelled variable name. * plat_file_contexts wasn't sorted (as opposed to other similar targets, such as nonplat_file_contexts and file_contexts.bin). This may lead to unnecessary non-determinism. * nonplat_file_contexts wasn't marked dirty and thus wasn't rebuilt when device-specific file_contexts file(s) changed. This is because the file_contexts files were referenced via a misspelled variable name. Test: "make plat_file_contexts" produces a non-empty file containing mappings from system/sepolicy/private/file_contexts Test: "make plat_file_contexts" updates output when system/sepolicy/private/file_contexts changes Test: "make plat_file_contexts" produces output which is sorted accroding to rules in fc_sort Test: "make nonplat_file_contexts" updates output when device/lge/bullhead/sepolicy/file_contexts changes (tested on aosp_bullhead-eng) Bug: 31363362 Change-Id: I540555651103f02c96cf958bb93618f600e47a75
-
Nick Kralevich authored
wificond is a system_server service used by wifi, wifi doesnt start now This reverts commit b68a0149. Change-Id: If958c852e5d8adf8e8d82346554d2d6b3e8306c9
-
Treehugger Robot authored
-
Steven Moreland authored
/sys/class/leds is the standard location for linux files dealing with leds, however the exact contents of this directory is non-standard (hence the need for a hal). Bug: 32022100 Test: compiles and works for the subset of common files Change-Id: I7571d7267d5ed531c4cf95599d5f2acc22287ef4
-
- Jan 19, 2017
-
-
Treehugger Robot authored
-
Treehugger Robot authored
-
William Roberts authored
wificond_service is not a system_server service, so drop the typeattribute. Test: compile Change-Id: Ic212dd2c8bc897fbdc13ca33a9864ac8d4e68732 Signed-off-by:
William Roberts <william.c.roberts@intel.com>
-
Jim Miller authored
This fixes a bug introduced in the HIDL port where fingerprint no longer notifies keystore of authentications. Test: keyguard, FingerprintDialog Fixes bug 34200870 Change-Id: I8b1aef9469ff4f4218573a6cde4c3a151512c226
-
Treehugger Robot authored
-
Chad Brubaker authored
Ephemeral apps cannot open files from external storage, but can be given access to files via the file picker. Test: ACTION_OPEN_DOCUMENTS from an ephemeral app returns a readable fd. Change-Id: Ie21b64a9633eff258be254b9cd86f282db1509e8
-
Treehugger Robot authored
-
Josh Gao authored
-
Chad Brubaker authored
Ephemeral apps are still apps with very similar capabilities, it makes more sense to have them under appdomain and benefit from the shared state (and all the neverallow rules) than to try and dupplicate them and keep them in sync. This is an initial move, there are parts of ephemeral_app that still need to be locked down further and some parts of appdomain that should be pushed down into the various app domains. Test: Builds, ephemeral apps work without denials. Change-Id: I1526b2c2aa783a91fbf6543ac7f6d0d9906d70af
-
Treehugger Robot authored
-
Josh Gao authored
Bug: http://b/30705528 Bug: http://b/34450704 Test: mma Change-Id: I315a52411232b6ff38d014a2e0fadb0bcfbc1f3f
-
Josh Gao authored
Test: policy compiles. Bug: http://b/34450704 Change-Id: I1381f9de8e4c8cdde4920be423ab32adc2f7a8a2
-
Max Bires authored
After checking the auditallow logs for the rule being monitored, it's clear that the rule is not in use and can be removed. All unused rules should be removed, as they present needless additional attack vectors. Test: The device boots. Change-Id: Ie9e060c4d134212e01309a536ac052851e408320
-
Treehugger Robot authored
-
- Jan 18, 2017
-
-
Max Bires authored
There were some auditallow rules left around in rild.te that had logs showing nothing was triggering them. Thus the rules they were auditing could be removed, as that's clear indication there's no use for them. Having rules around that aren't being used does nothing except increase attack surface and bloat sepolicy, and so should always be removed if possible. Test: The device boots Change-Id: I906ffc493807fbae90593548d478643cda4864eb
-
mukesh agrawal authored
Revise policy, to allow init and system_server to configure, clear, and read kernel trace events. This will enable us to debug certain WiFi failures. Note that system_server is restricted to only accessing a wifi-specific trace instance. (Hence, system_server is not allowed to interfere with atrace.) Moreover, even for the wifi trace instance, system_server is granted limited permissions. (system_server can not, e.g., change which events are traced.) Note also that init and system_server are only granted these powers on userdebug or eng builds. The init.te and system_server.te changes resolve the following denials: // Denials when wifi-events.rc configures tracing { write } for pid=1 comm="init" name="instances" dev="debugfs" ino=755 scontext=u:r:init:s0 tcontext=u:object_r:debugfs_tracing_instances:s0 tclass=dir permissive=1 { add_name } for pid=1 comm="init" name="wifi" scontext=u:r:init:s0 tcontext=u:object_r:debugfs_tracing_instances:s0 tclass=dir permissive=1 { create } for pid=1 comm="init" name="wifi" scontext=u:r:init:s0 tcontext=u:object_r:debugfs_tracing_instances:s0 tclass=dir permissive=1 { write } for pid=1 comm="init" name="tracing_on" dev="debugfs" ino=18067 scontext=u:r:init:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1 { write } for pid=1 comm="init" name="buffer_size_kb" dev="debugfs" ino=18061 scontext=u:r:init:s0 tcontext=u:object_r:debugfs_tracing_instances:s0 tclass=file permissive=1 // Denials when system_server sets up fail-safe // (auto-terminate tracing if system_server dies) { search } for pid=882 comm="system_server" name="instances" dev="debugfs" ino=755 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_tracing_instances:s0 tclass=dir permissive=1 { read } for pid=882 comm="system_server" name="free_buffer" dev="debugfs" ino=18063 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1 { open } for pid=882 comm="system_server" path="/sys/kernel/debug/tracing/instances/wifi/free_buffer" dev="debugfs" ino=18063 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1 { getattr } for pid=882 comm="system_server" path="/sys/kernel/debug/tracing/instances/wifi/free_buffer" dev="debugfs" ino=18063 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1 // Denials when system_server toggles tracing on or off // (WifiStateMachine is a thread in system_server) { search } for pid=989 comm="WifiStateMachin" name="instances" dev="debugfs" ino=755 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_tracing_instances:s0 tclass=dir permissive=1 { write } for pid=989 comm="WifiStateMachin" name="tracing_on" dev="debugfs" ino=18067 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1 { open } for pid=989 comm="WifiStateMachin" path="/sys/kernel/debug/tracing/instances/wifi/tracing_on" dev="debugfs" ino=18067 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1 { getattr } for pid=989 comm="WifiStateMachin" path="/sys/kernel/debug/tracing/instances/wifi/tracing_on" dev="debugfs" ino=18067 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1 { write } for pid=989 comm="WifiStateMachin" name="tracing_on" dev="debugfs" ino=18067 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1 { open } for pid=989 comm="WifiStateMachin" path="/sys/kernel/debug/tracing/instances/wifi/tracing_on" dev="debugfs" ino=18067 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1 { getattr } for pid=989 comm="WifiStateMachin" path="/sys/kernel/debug/tracing/instances/wifi/tracing_on" dev="debugfs" ino=18067 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1 // Denials when system_server reads the event trace // (This happens in response to a dumpsys request) { search } for pid=3537 comm="Binder:882_B" name="instances" dev="debugfs" ino=755 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_tracing_instances:s0 tclass=dir permissive=1 { read } for pid=3537 comm="Binder:882_B" name="trace" dev="debugfs" ino=18059 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1 { open } for pid=3537 comm="Binder:882_B" path="/sys/kernel/debug/tracing/instances/wifi/trace" dev="debugfs" ino=18059 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1 { getattr } for pid=3537 comm="Binder:882_B" path="/sys/kernel/debug/tracing/instances/wifi/trace" dev="debugfs" ino=18059 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1 { write } for pid=3537 comm="Binder:882_B" name="trace" dev="debugfs" ino=18059 scontext=u:r:system_server:s0 tcontext=u:object_r:debugfs_wifi_tracing:s0 tclass=file permissive=1 Bug: 27254565 Test: manual Manual test: - Build this CL along with CL:322337 - Verify that system boots, and that we can connect to GoogleGuest. (Testing of actual trace functionality with require some more patches in frameworks/opt/net/wifi.) $ adb root && adb shell dmesg | egrep 'avc: denied.+debugfs' Change-Id: Ib6eb4116549277f85bd510d25fb30200f1752f4d
-
Josh Gao authored
Replace the global debuggerd with a per-process debugging helper that gets exec'ed by the process that crashed. Bug: http://b/30705528 Test: crasher/crasher64, `debuggerd <pid>`, `kill -ABRT <pid>` Change-Id: Iad1b7478f7a4e2690720db4b066417d8b66834ed
-