- Apr 20, 2017
-
-
Chia-I Wu authored
This fixes avc: denied { call } for comm="screencap" scontext=u:r:dumpstate:s0 tcontext=u:r:hal_graphics_allocator_default:s0 tclass=binder permissive=0 Bug: 37360953 Test: adb shell dumpstate -p -o <path> Change-Id: Ia9387559e3ec1ba51b614bb9d24294fbbbd51b1a
-
- Apr 19, 2017
-
-
Sandeep Patil authored
Bug: 37485771 Test: sideloaded OTA through recovery on sailfish Change-Id: I98bb4e0e919db585131391f57545f1a9a0096701 Signed-off-by:
Sandeep Patil <sspatil@google.com>
-
Jeff Hao authored
The PackageManager now passes previous code paths to dex2oat as shared libraries. dex2oat needs extra permissions in order to access and open the oat files of these libraries (if they were compiled). Part of a multi-project change. Bug: 34169257 Test: cts-tradefed run singleCommand cts -d --module CtsAppSecurityHostTestCases -t android.appsecurity.cts.SplitTests (cherry-picked from commit 1103f963) Change-Id: I3cf810ef5f4f4462f6082dc30d3a7b144dcce0d9
-
Chong Zhang authored
hal_client_domain no longer allows read dir permission, in order to load .so from /system/lib, we have to add this permission ourselves. bug: 37476803 Change-Id: I1711d158c2f4580f50ac244da10c489df003cc18
-
Andy Hung authored
Permit mediaextractor its own file source for apk and ringtone files. Previously we fall back to the mediaserver file source. This does not affect behavior as the fallback works fine; however, the log messages may cause confusion. [73402.683908] type=1400 audit(1491338955.878:121): avc: denied { read } for pid=18381 comm="generic" path="/data/system_de/0/ringtones/alarm_alert_cache" dev="sda35" ino=2490374 scontext=u:r:mediaextractor:s0 tcontext=u:object_r:ringtone_file:s0 tclass=file permissive=0 [73402.683932] type=1400 audit(1491338955.884:122): avc: denied { read } for pid=18383 comm="generic" path="/data/system_de/0/ringtones/ringtone_cache" dev="sda35" ino=2490376 scontext=u:r:mediaextractor:s0 tcontext=u:object_r:ringtone_file:s0 tclass=file permissive=0 Test: Ringtone and CTS Bug: 37500781 Change-Id: Ie6d8e6d2b7301d00957733f173aeebbe9d0d1998
-
- Apr 18, 2017
-
-
Carmen Jackson authored
These rules allow the additional tracepoints we need for running traceur in userdebug builds to be writeable. Bug: 37110010 Test: I'm testing by running atrace -l and confirming that the tracepoints that I'm attempting to enable are available. Change-Id: Ia352100ed67819ae5acca2aad803fa392d8b80fd
-
Dan Cashman authored
vndservicemanager is a copy of servicemanager, and so has the exact same properties. This should be reflected in the sharing of an object manager in SELinux policy, rather than creating a second one, which is effectively an attempt at namespacing based on object rather than type labels. hwservicemanager, however, provides different and additional functionality that may be reflected in changed permissions, though they currently map to the existing servicemanager permissions. Keep the new hwservice_manager object manager but remove the vndservice_manager one. Bug: 34454312 Bug: 36052864 Test: policy builds and device boots. Change-Id: I9e0c2757be4026101e32ba780f1fa67130cfa14e
-
Alex Klyubin authored
This commit marks surfaceflinger and app domain (except isolated_app) as clients of Configstore HAL. This cleans up the policy and will make it easier to restrict access to HwBinder services later. Test: Play YouTube clip in YouTube app and YouTube web page in Chrome Test: Take an HDR+ photo, a normal photo, a video, and slow motion video in Google Camera app. Check that photos show up fine and that videos play back with sound. Test: Play movie using Google Play Movies Test: Google Maps app displays the Android's correct location Bug: 34454312 Change-Id: I0f468a4289132f4eaacfb1d13ce4e61604c2a371
-
- Apr 16, 2017
-
-
Martijn Coenen authored
Bug: 36604251 Test: Netflix protected content, Play movies Change-Id: I5c2c542007abddbe56b933ff44d65bd376b6691e
-
Martijn Coenen authored
The new binder_call() lines had to be added because this change removes mediacodec from binderservicedomain (on full-treble), hence domains that could previously reach mediacodec with binder_call(domain, binderservicedomain) now need explicit calls instead. Test: Youtube, Netflix, Maps, Chrome, Music Change-Id: I3325ce20d9304bc07659fd435554cbcbacbc9829
-
- Apr 15, 2017
-
-
Martijn Coenen authored
Test: WIP Change-Id: I678b0d0e9750b25628b86060574fd516d3749cdf
-
Sandeep Patil authored
Temporary attribute (checked against in CTS) to point out vendor processes that run /system executables. These are currently only down to 2-3 of them that are related to telephony on sailfish Bug: 36463595 Test: Build succeeds for sailfish Test: ./cts-tradefed run cts -m CtsSecurityHostTestCases -t \ android.security.cts.SELinuxHostTest#testNoExemptionsForVendorExecutingCore \ --skip-device-info --skip-preconditions --skip-connectivity-check \ --abi arm64-v8a Change-Id: I9eb40ad259aefba73869d6a1b40186d33fa475dd Signed-off-by:
Sandeep Patil <sspatil@google.com>
-
Sandeep Patil authored
Bug: 36463595 Test: Boot sailfish, make wifi call, internet over data and wifi Change-Id: I81259b6412d7197725afe2fe4976aa0a03b8df6e Signed-off-by:
Sandeep Patil <sspatil@google.com>
-
- Apr 14, 2017
-
-
Martijn Coenen authored
Since hal_graphics_composer_default is now no longer a member of binderservicedomain, these domains would no longer be able to use filedescriptors from it. Bug: 36569525 Bug: 35706331 Test: marlin boots, YouTube, Maps, Camera, video Change-Id: I4c110cf7530983470ae079e4fbc8cf11aa0fab7f
-
Tianjie Xu authored
Encountered more denials on sailfish: avc: denied { read } for pid=439 comm="recovery" name="thermal" dev="sysfs" ino=28516 scontext=u:r:recovery:s0 tcontext=u:object_r:sysfs_thermal:s0 tclass=dir permissive=0 avc: denied { read } for pid=441 comm="recovery" name="thermal_zone9" dev="sysfs" ino=40364 scontext=u:r:recovery:s0 tcontext=u:object_r:sysfs_thermal:s0 tclass=lnk_file permissive=0 Bug: 36920500 Test: sideload a package in sailfish (cherry picked from commit b4e4565d) Change-Id: I46b14babd47168e87c0d30ec06281aaa237563bf
-
Iliyan Malchev authored
This change disables /dev/binder access to and by mediacodec on full-Treble devices. b/36604251 OMX HAL (aka mediacodec) uses Binder and even exposes a Binder service Test: marlin Change-Id: I1e30a6c56950728f36351c41b2859221753fd91a Signed-off-by:
Iliyan Malchev <malchev@google.com>
-
Jeff Vander Stoep authored
Relabeling /vendor and /system/vendor to vendor_file removed previously granted permissions. Restore these for non-treble devices. Addresses: avc: denied { execute_no_trans } for pid=2944 comm="dumpstate" path="/system/vendor/bin/wpa_cli" dev="mmcblk0p10" ino=1929 scontext=u:r:dumpstate:s0 tcontext=u:object_r:vendor_file:s0 tclass=file And potentially some other bugs that have yet to surface. Bug: 37105075 Test: build Fugu Change-Id: I8e7bd9c33819bf8206f7c110cbce72366afbcef8
-
Alex Klyubin authored
Test: mmm system/sepolicy Bug: 34980020 (cherry picked from commit 3cc6a959) Change-Id: I64c7275551e8e27d68072e8ec38c07b539989da0
-
Sandeep Patil authored
Change-Id: Ic9a9026df6f36d65fa02cc7b264bc901a14546f9 Signed-off-by:
Sandeep Patil <sspatil@google.com>
-
Sandeep Patil authored
Adds a rule to audit vendor domains from executing programs from /system with the exception of domains whitelisted in the rule. Bug: 36463595 Test: Boot sailfish Test: Run SELinuxHostTests with the tests that checks for new violators (without the API check) to ensure it fails for sailfish. The API check will allow the test to skip the check. Change-Id: Id19f32141bceba4db4bd939394ff3ee0b3c4b437 Signed-off-by:
Sandeep Patil <sspatil@google.com>
-
Sandeep Patil authored
Bug: 36463595 Test: Boot sailfish and make sure all vendor services that are shell scripts work. (Checke exited status) Change-Id: I3d1d564114a914dec8179fb93a9e94493c2808da Signed-off-by:
Sandeep Patil <sspatil@google.com>
-
- Apr 13, 2017
-
-
Sandeep Patil authored
The vendor toybox MUST always be executed without transition and non-vendor processes are not allowed to execute the binary. Bug: 36463595 Test: Boot and test if system shell can run /vendor/bin/echo Result: requires 'su' Change-Id: Ifb9aa61f247f91fb870b99d60ac7f849ee9c6adc Signed-off-by:
Sandeep Patil <sspatil@google.com> (cherry picked from commit c112cd18e8999c0242a2560219033231a0e19898)
-
Alex Klyubin authored
This unbreaks user builds broken by recently landed changes to secilc which is now aggressively removing attributes which aren't used in allow rules, even when they are used in other places, such as being referenced from *_contexts files. User builds are broken by vndservice_manager_type not being found when checkfc is run for *vndservice_contexts targets. Test: On a clean user build: mmma system/sepolicy Bug: 37319524 Bug: 36508258 Change-Id: I4a1727a74122ecd9020c3831462d56a65ee6d304
-
Alex Klyubin authored
ag/2106481 negatively interfered with ag/2106263... Test: mmm system/sepolicy Bug: 34454312 Change-Id: If3f5ef6696341ccfdd706350ec670f8426dac9c9
-
Martijn Coenen authored
So it won't get compiled out of sepolicy. Test: marlin build Change-Id: I3a089fe83df69a76bebf64f874556967bc49ee78
-
Alex Klyubin authored
This adds restrictions on which domains can register this HwBinder service with hwservicemanager and which domains can obtain tokens for this service from hwservicemanager. Test: Use Google Camera app to take HDR+ photo, conventional photo, record video with sound, record slow motion video with sound. Check that the photos display correctly and that videos play back fine and with sound. Check that there are no SELinux denials to do with camera. Bug: 34454312 Change-Id: Icfaeed917423510d9f97d18b013775596883ff64
-
Martijn Coenen authored
hwservicemanager can check hwservice_contexts files both from the framework and vendor partitions. Initially, have a wildcard '*' in hwservice_contexts that maps to a label that can be added/found from domain. This needs to be removed when the proper policy is in place. Also, grant su/shell access to hwservicemanager list operations, so tools like 'lshal' continue to work. Bug: 34454312 Test: Marlin boots Change-Id: I3a02d97a82458692b528d85c1b8e78b6f82ea1bc
-
- Apr 12, 2017
-
-
Alex Klyubin authored
All HALs which are represented by hal_* attributes in SELinux policy are required to run in binderized mode on Treble devices. This commit thus makes the SELinux policy for Treble devices no longer associate domains in hal_x_client with hal_x attribute, which is what was granting domains hosting clients of hal_x the rules needed to run this HAL in-process. The result is that core components have now less access. This commit has no effect on non-Treble devices. Test: Device boots -- no new denials Test: Play movie using Google Play Movies and Netflix Test: Play YouTube clip in YouTube app and in Chrome Test: Unlock lock screen using fingerprint Test: Using Google Camera, take a photo, an HDR+ photo, record a video with sound, a slow motion video with sound. Photos and videos display/play back fine (incl. sound). Test: adb screencap Test: $ monitor take screenshot Test: In all tests, no deials to do with hal_*, except pre-existing denials to do with hal_gnss. Bug: 37160141 Bug: 34274385 Bug: 34170079 Change-Id: I1ca91d43592b466114af13898f5909f41e59b521
-
Andreas Gampe authored
Follow-up to commit 1b5f81a2. Bug: 36681210 Bug: 37158297 Test: lunch sailfish-userdebug && m Test: Manually run OTA Change-Id: Ifb4808c9255842a51a660c07ffd924cef52024c5
-
- Apr 11, 2017
-
-
Sandeep Patil authored
We install all default hal implementations in /vendor/bin/hw along with a few domains that are defined in vendor policy and installed in /vendor. These files MUST be a subset of the global 'vendor_file_type' which is used to address *all files installed in /vendor* throughout the policy. Bug: 36463595 Test: Boot sailfish without any new denials Change-Id: I3d26778f9a26f9095f49d8ecc12f2ec9d2f4cb41 Signed-off-by:
Sandeep Patil <sspatil@google.com>
-
Jaesoo Lee authored
The kernel modules under /vendor partition has been relabeled to vendor_file. This CL allows for the modprobe to load modules labeled vendor_file. Kernel modules are loaded in init.rc with following commands: exec u:r:modprobe:s0 -- /system/bin/modprobe -d /vendor/lib/modules MODULE Bug: 35653245 Test: tested on sailfish Change-Id: I2132ca4de01c5c60476dad8496e98266de5a1bb7
-
- Apr 10, 2017
-
-
Alex Klyubin authored
Test: mmm system/sepolicy -- no warnings Bug: 3716915 Change-Id: I76886c2d09a70cbe6dc707dd0599217407bb63f7
-
Sandeep Patil authored
Renderscript drivers are loaded from /vendor/lib64 by following the /system/vendor symlink. This change fixes a couple of things. - Allows all domains access to follow the symlink - Restores app domain permissions for /vendor for non-treble devices - Allow app domains to peek into /vendor/lib64, but NOT grant 'execute' permissions for everything. Since RS drivers can be loaded into any process, their vendor implementation and dependencies have been marked as 'same process HALs' already. Bug: 37169158 Test: Tested on sailfish (Treble) & Angler (non-treble) ./cts-tradefed run cts -m CtsRenderscriptTestCases \ --skip-device-info --skip-preconditions --skip-connectivity-check \ --abi arm64-v8a Result: Tests Passed: 743 Tests Failed: 0 Change-Id: I36f5523381428629126fc196f615063fc7a50b8e Signed-off-by:
Sandeep Patil <sspatil@google.com>
-
Howard Chen authored
This change extends the recovery mode modprobe sepolicy to support loadable kernel module in normal mode by using statement below in init.rc: exec u:r:modprobe:s0 -- /system/bin/modprobe \ -d /vendor/lib/modules mod Bug: b/35653245 Test: sailfish with local built kernel and LKM enabled Change-Id: I827e2ce387c899db3e0e179da92e79c75d61f5ae (cherry picked from commit b638d949)
-
Jiyong Park authored
The concept of VNDK-stable set is gone because they no longer need to be stable across several Android releases. Instead, they are just small set of system libraries (other than Low-Level NDK) that can be used by same-process HALs. They need to be stable only during an Android release as other VNDK libraries. However, since they are eligible for double loading, we still need to distinguish those libs from other VNDK libraries. So we give them a name vndk-sp, which means VNDK designed for same-process HALs. Bug: 37139956 Test: booting successful with vndk-sp libs in /vendor/lib(64)?/vndk-sp Change-Id: I892c4514deb3c6c8006e3659bed1ad3363420732
-
- Apr 08, 2017
-
-
Andreas Gampe authored
Add read rights for du. Bug: 30832951 Test: m Change-Id: I1186ff995684844e9c6092b5ae65c19172fefbbe
-
- Apr 07, 2017
-
-
Alex Klyubin authored
CTS includes general_sepolicy.conf built from this project. CTS then tests this file's neverallow rules against the policy of the device under test. Prior to this commit, neverallow rules which must be enforced only for Treble devices we not included into general_sepolicy.conf. As a result, these rules were not enforced for Treble devices. This commit fixes the issue as follows. Because CTS includes only one policy, the policy now contains also the rules which are only for Treble devices. To enable CTS to distinguish rules needed for all devices from rules needed only on Treble devices, the latter rules are contained in sections delimited with BEGIN_TREBLE_ONLY and END_TREBLE_ONLY comments. This commit also removes the unnecessary sepolicy.general target. This target is not used anywhere and is causing trouble because it is verifying neverallows of the policy meant to be used by CTS. This policy can no longer be verified with checkpolicy without conditionally including or excluding Treble-only neverallows. Test: mmm system/sepolicy Test: Device boots -- no new denials Bug: 37082262 Change-Id: I15172a7efd9374543ba521e17aead1bdda7451bf
-
Tianjie Xu authored
We want to track temperature metrics during an OTA update. denial message: denied { search } for pid=349 comm="recovery" name="thermal" dev="sysfs" ino=18029 scontext=u:r:recovery:s0 tcontext=u:object_r:sysfs_thermal:s0 tclass=dir permissive=0 denied { read } for pid=326 comm="recovery" name="temp" dev="sysfs" ino=18479 scontext=u:r:recovery:s0 tcontext=u:object_r:sysfs_thermal:s0 tclass=file permissive=0 Bug: 36920500 Bug: 32518487 Test: temperature logs on angler Change-Id: Ib70c1c7b4e05f91a6360ff134a11c80537d6015e (cherry picked from commit 3da2f21f)
-
Jiyong Park authored
Vndk-stable libs are system libs that are used by same process HALs. Since same process HALs can be loaded to any process, so are vndk-stable libs. Bug: 37138502 Test: none, because the directory is currently empty and thus this is no-op. sailfish builds and boots. Change-Id: I67a2c8c2e4c3517aa30b4a97dc80dc2800e47b5a
-
Donghyun Cho authored
Bug: 36562029 Test: m -j40 and CEC functionality works well Change-Id: I5a693e65abdd5139a848d939149a475056cc41e8
-