- Aug 21, 2018
-
-
Tri Vo authored
Bug: 110887137 Test: Flash new system policy onto a device with vendor policy that uses untrusted_app_visible_* attributes, and check that old and new attributes are applied to exactly same types. Change-Id: Ibee0ec645878fcc8c93cd0fbd169a8d45129d79e Merged-In: Ibee0ec645878fcc8c93cd0fbd169a8d45129d79e (cherry picked from commit 7abca51d)
-
Benjamin Gordon authored
commit 9b2e0cbe added a new self:global_capability_class_set macro that covers both self:capability and self:cap_userns. Apply the new macro to various self:capability references that have cropped up since then. Bug: 112307595 Test: policy diff shows new rules are all cap_userns Change-Id: I3eb38ef07532a8e693fd549dfdbc4a6df5329609
-
- Aug 20, 2018
-
-
Hridya Valsaraju authored
Bug: 78793464 Test: fastboot getvar partition-size:super 'super_block_device' corresponds to the super partition required for flashing dynamic partitions. Change-Id: I323634b6797ead7c5face117a7028bf9ab947aea
-
Dario Freni authored
Attempting to reduce the number of different spellings we have for "product services" partition in the codebase. Bug: 112431447 Test: m Change-Id: I1499c60e3d6c6c9fbe2e3f30f097f83b1e837c1c Merged-In: I1499c60e3d6c6c9fbe2e3f30f097f83b1e837c1c
-
- Aug 15, 2018
-
-
Joel Galenson authored
avc: denied { getattr } for comm="Binder:1231_1" path="/storage/emulated" dev="tmpfs" ino=72787 scontext=u:r:system_server:s0 tcontext=u:object_r:storage_stub_file:s0 tclass=dir Bug: 112609936 Test: Built policy. Change-Id: Ib772aca11bad4ba267de259be4ad065f228ef1df
-
Jerry Zhang authored
Also allow adb and fastboot to talk to recovery through recovery_socket. This enables changing between modes with usb commands. Test: No selinux denials Bug: 78793464 Change-Id: I80c54d4eaf3b94a1fe26d2280af4e57cb1593790
-
Florian Mayer authored
This reverts commit 0fd3ed3b. Reason for revert: Broke user builds. Change-Id: If95f1a25d22425a5a2b68a02d1561352fb5a52f0
-
- Aug 14, 2018
-
-
Jerry Zhang authored
Also allow adb and fastboot to talk to recovery through recovery_socket. This enables changing between modes with usb commands. Test: No selinux denials Bug: 78793464 Change-Id: I1f97659736429fe961319c642f458c80f199ffb4
-
Mark Salyzyn authored
Replace more complicated logic that determines that persistent properties are now valid with a simple check of ro.persistent_properties.ready. Test: manual Bug: 109821005 Change-Id: I8c63beb294377ea9ce6eb6336b83f529deedd830
-
Tri Vo authored
Bug: 78888165 Test: device can boot with HAL running. Change-Id: I3bf7c8203e038b892176c97ec006152a2904c7be
-
- Aug 13, 2018
-
-
Nick Kralevich authored
There is a problem with on-disk labeling of files created by secondary dex background compilation which is causing unexpected denials to show up. Restore the old labeling until we are able to fix the underlying problem. Steps to reproduce: 1) boot android device. 2) adb root 3) Run cmd package compile -r bg-dexopt --secondary-dex com.google.android.gms 4) Examine the files in /data/user_de/0/com.google.android.gms Expected: All files have the label privapp_data_file Actual: The files in /data/user_de/0/com.google.android.gms/app_chimera/m are labeled "app_data_file", not "privapp_data_file". This reverts commit 4df57822. Bug: 112357170 Test: policy compiles Change-Id: I38ba75c92c9c46e6a1fdbc02e3dc80c63adccaa8
-
Nick Kralevich authored
There is a problem with on-disk labeling of files created by secondary dex background compilation which is causing unexpected denials to show up. Drop the auditallow rule to avoid logspam. Steps to reproduce: 1) boot android device. 2) adb root 3) Run cmd package compile -r bg-dexopt --secondary-dex com.google.android.gms 4) Examine the files in /data/user_de/0/com.google.android.gms Expected: All files have the label privapp_data_file Actual: The files in /data/user_de/0/com.google.android.gms/app_chimera/m are labeled "app_data_file", not "privapp_data_file". Addresses the following audit logspam: type=1400 audit(0.0:117): avc: granted { execute } for comm=4173796E635461736B202331 path="/data/user_de/0/com.google.android.gms/app_chimera/m/00000002/oat/arm/DynamiteLoader.odex" dev="dm-0" ino=5775 scontext=u:r:untrusted_app:s0:c111,c256,c512,c768 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=file app=com.android.chrome Additionally, this removes auditallow statements for older untrusted apps. Lots of big apps are executing files from their home directory. Additional restrictions in this area will need to be tied to API versions. Addresses the following audit logspam: type=1400 audit(0.0:619): avc: granted { execute } for comm="na:notification" path="/data/data/com.facebook.katana/lib-xzs/libbreakpad.so" dev="dm-3" ino=28333 scontext=u:r:untrusted_app_25:s0:c512,c768 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=file app=com.facebook.katana type=1400 audit(0.0:129): avc: granted { execute } for comm="ticlock" path="/data/data/is.shortcut/files/ticlock/ticlock" dev="dm-3" ino=58614 scontext=u:r:untrusted_app_27:s0:c512,c768 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=file app=is.shortcut type=1400 audit(0.0:1239): avc: granted { execute } for comm="Analytics-Norma" path="/data/data/com.facebook.orca/lib-xzs/libchipsetmerged.so" dev="dm-3" ino=50243 scontext=u:r:untrusted_app_25:s0:c512,c768 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=file app=com.facebook.orca type=1400 audit(0.0:58): avc: granted { execute_no_trans } for comm="sh" path="/data/data/is.shortcut/files/ticlock/ticlock" dev="dm-3" ino=58614 scontext=u:r:untrusted_app_27:s0:c512,c768 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=file app=is.shortcut type=1400 audit(0.0:1948): avc: granted { execute_no_trans } for comm="sh" path="/data/data/com.mxdata.tube.Market/files/osmcore" dev="sda13" ino=2752651 scontext=u:r:untrusted_app_25:s0:c512,c768 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=file app=com.mxdata.tube.Market type=1400 audit(0.0:2875): avc: granted { execute_no_trans } for comm="ThreadPoolManag" path="/data/data/com.amazon.kindle/files/hardwareTest" dev="sda13" ino=1935346 scontext=u:r:untrusted_app_27:s0:c512,c768 tcontext=u:object_r:app_data_file:s0:c512,c768 tclass=file app=com.amazon.kindle This reverts commit 4738b93d. Bug: 112357170 Test: policy compiles
-
- Aug 10, 2018
-
-
David Ng authored
Linux kernel 4.14+ SELinux starts explicit map permission check for file mmap operations. Add this permission to system_server for data file access, which is used in scenario such as "adb install" of APK's. test: no longer see SELinux map denial on "adb install" Change-Id: Id6016dd0b3f15dfdb0f02509ea812dee61ac78ed
-
Suren Baghdasaryan authored
Allow lmkd write access to sys.lmk. properties to be able to set sys.lmk.minfree_levels. Bug: 111521182 Test: getprop sys.lmk.minfree_levels returns value set by lmkd Change-Id: I86ff11d75917966857d3a76876a56799bb92a5ad Signed-off-by:
Suren Baghdasaryan <surenb@google.com>
-
Yifan Hong authored
Test: builds Test: vts Bug: 111655771 Change-Id: Iabad3d124bf476cb624addf7d7898e0c2894d550
-
- Aug 09, 2018
-
-
Chia-I Wu authored
This is needed to dump ANR traces for the process. Bug: 111604912 Test: adb shell am hang Change-Id: Icadc2de95a12818fe623271d1afb955843ccddbf
-
- Aug 08, 2018
-
-
Mark Salyzyn authored
/cache/overlay directory in support of overlayfs mounts on userdebug and eng devices. Overlayfs in turn can be capable of supporting adb remount for read-only or restricted-storage filesystems like squashfs or right-sized (zero free space) system partitions respectively. Test: compile Bug: 109821005 Bug: 110985612 Change-Id: I3ece03886db7cc97f864497cf93ec6c6c39bccd1
-
Nick Kralevich authored
Text relocation support was removed from the linker for apps targeting API >= 23. See https://android.googlesource.com/platform/bionic/+/master/android-changes-for-ndk-developers.md#text-relocations-enforced-for-api-level-23 However, the security policy was not updated to remove the execmod permission at that time, since we didn't have support for targeting SELinux policies to API versions. Remove execmod permissions for apps targeting API 26 or greater. The linker support was removed, so it's pointless to keep around the SELinux permissions. Retain execmod support for apps targeting API 25 or lower. While in theory we could remove support for API 23-25, that would involve the introduction of a new SELinux domain (and the associated rule explosion), which I would prefer to avoid. This change helps protect application executable code from modification, enforcing W^X properties on executable code pages loaded from files. https://en.wikipedia.org/wiki/W%5EX Test: auditallow rules were added and nothing triggered for apps targeting API >= 26. Code compiles and device boots. Bug: 111544476 Change-Id: Iab9a0bd297411e99699e3651c110e57eb02a3a41
-
- Aug 07, 2018
-
-
Nick Kralevich authored
This reverts commit 0f11ffcc. Reason for revert: libmono crashes Bug: 112292089 Bug: 111544476 Test: policy compiles, device boots Change-Id: I064090aa9337cf17b80cd2c9af9342df851a3b27
-
Gao Xiang authored
Bug: 112292714 Change-Id: I0026c13fd4335e0365496bc00c26021d83f3c39d Signed-off-by:
Gao Xiang <gaoxiang25@huawei.com>
-
- Aug 06, 2018
-
-
Nick Kralevich authored
Executing files from an application home directory violates W^X (https://en.wikipedia.org/wiki/W%5EX) constraints (loading executable code from a writable file) and is an unsafe application behavior. Test to see if we can get rid of it and establish some baseline metrics. Test: device boots and no obvious problems. Change-Id: I756c281fcbf750821307327642cc0d06605951b0
-
Nick Kralevich authored
As of https://android-review.googlesource.com/c/platform/system/sepolicy/+/536356 , the untrusted_v2_app domain is no longer used. Bug: 112233317 Test: policy compiles, device boots, and no problems Change-Id: I5a47c8305bef374b7fea06cd789e06cd48b847e6
-
- Aug 03, 2018
-
-
Tom Cherry authored
Test: boot hikey Change-Id: I8f26f858af8ccde1d7f4b346966bbb6bbeab5a92
-
Nick Kralevich authored
Currently, both untrusted apps and priv-apps use the SELinux file label "app_data_file" for files in their /data/data directory. This is problematic, as we really want different rules for such files. For example, we may want to allow untrusted apps to load executable code from priv-app directories, but disallow untrusted apps from loading executable code from their own home directories. Commit 23c9d91b introduced a new type called privapp_data_file and added rules necessary to preserve compatibility. However, that change did not relabel any existing files, so effectively the change was a no-op. This change performs the switch, relabeling priv-app's /data/data files from app_data_file to privapp_data_file. Due to the compatibility rules added in 23c9d91b, there should be no noticeable effect from this change. Test: Factory reset and boot - no problems on fresh install. Test: Upgrade to new version and test. No compatibility problems on filesystem upgrade. Merged-In: I9a476726bf01f4bcc7952d11fd57dba803a9fd8d Change-Id: I23a26cd3906fc43cbd225c05c3a2abd3cab8bd06
-
Tom Cherry authored
This is do aid developers pushing debug services to not need to modify the underlying SEPolicy avc: denied { transition } for comm="init" path="/system/bin/awk" dev="dm-0" ino=1934 scontext=u:r:init:s0 tcontext=u:r:su:s0 tclass=process avc: denied { rlimitinh } for comm="awk" scontext=u:r:init:s0 tcontext=u:r:su:s0 tclass=process avc: denied { siginh } for comm="awk" scontext=u:r:init:s0 tcontext=u:r:su:s0 tclass=process avc: denied { noatsecure } for comm="awk" scontext=u:r:init:s0 tcontext=u:r:su:s0 tclass=process Test: init can execute a system_file marked with seclabel u:r:su:s0 Change-Id: I85d9528341fe08dbb2fb9a91e34a41f41aa093be
-
Tom Cherry authored
Bug: 73660730 Test: watchdogd still runs Change-Id: I31697c7c6fa2f7009731ff48c659af051838e42f
-
- Aug 02, 2018
-
-
Nick Kralevich authored
Currently, both untrusted apps and priv-apps use the SELinux file label "app_data_file" for files in their /data/data directory. This is problematic, as we really want different rules for such files. For example, we may want to allow untrusted apps to load executable code from priv-app directories, but disallow untrusted apps from loading executable code from their own home directories. This change adds a new file type "privapp_data_file". For compatibility, we adjust the policy to support access privapp_data_files almost everywhere we were previously granting access to app_data_files (adbd and run-as being exceptions). Additional future tightening is possible here by removing some of these newly added rules. This label will start getting used in a followup change to system/sepolicy/private/seapp_contexts, similar to: -user=_app isPrivApp=true domain=priv_app type=app_data_file levelFrom=user +user=_app isPrivApp=true domain=priv_app type=privapp_data_file levelFrom=user For now, this newly introduced label has no usage, so this change is essentially a no-op. Test: Factory reset and boot - no problems on fresh install. Test: Upgrade to new version and test. No compatibility problems on filesystem upgrade. Change-Id: I9618b7d91d1c2bcb5837cdabc949f0cf741a2837
-
Alan Stokes authored
Remove the exemptions for untrusted apps and broaden the neverallow so they can't be reinstated. Modifying executable pages is unsafe. Text relocations are not supported. Bug: 111544476 Test: Builds. Change-Id: Ibff4f34d916e000203e38574bb063513e4428bb7
-
- Jul 23, 2018
-
-
Wale Ogunwale authored
Bug: 80414790 Test: boots Change-Id: I15233721fa138e0fdf1a30f66d52b64cbab18b81
-
- Jul 20, 2018
-
-
Tri Vo authored
Bug: 72458734 Test: Compile current system sepolicy with P vendor sepolicy Test: Plug in a P device then do: m selinux_policy cp $OUT/system/etc/selinux/plat_sepolicy.cil plat_sepolicy.cil cp $ANDROID_BUILD_TOP/system/sepolicy/private/compat/28.0/28.0.cil 28.0.cil adb pull /vendor/etc/selinux/plat_pub_versioned.cil adb pull /vendor/etc/selinux/vendor_sepolicy.cil secilc plat_sepolicy.cil -m -M true -G -N -c 30 28.0.cil \ plat_pub_versioned.cil vendor_sepolicy.cil Change-Id: I399b3a204eb94bee0ba1b5024b1c3463219c678e
-
Alan Stokes authored
This is to avoid merge problems if we make any further changes in AOSP. Test: Builds. Change-Id: Ib4193d31c02dda300513f82f6c7426a2e81d8111
-
Alan Stokes authored
This is so we can get data on which apps are actually doing this. Bug: 111544476 Test: Device boots. No audits seen on test device. Change-Id: I5f72200ed8606775904d353c4d3d790373fe7dea
-
- Jul 19, 2018
-
-
Jae Shin authored
Steps taken to produce the mapping files: 1. Add prebuilts/api/28.0/[plat_pub_versioned.cil|vendor_sepolicy.cil] from the /vendor/etc/selinux/[plat_pub_versioned.cil|vendor_sepolicy.cil] files built on pi-dev with lunch target aosp_arm64-eng 2. Add new file private/compat/28.0/28.0.cil by doing the following: - copy /system/etc/selinux/mapping/28.0.cil from pi-dev aosp_arm64-eng device to private/compat/28.0/28.0.cil - remove all attribute declaration statement (typeattribute ...) and sort lines alphabetically - some selinux types were added/renamed/deleted w.r.t 28 sepolicy. Find all such types using treble_sepolicy_tests_28.0 test. - for all these types figure out where to map them by looking at 27.0.[ignore.]cil files and add approprite entries to 28.0.[ignore.]cil. This change also enables treble_sepolicy_tests_28.0 and install 28.0.cil mapping onto the device. Bug: 72458734 Test: m selinux_policy Change-Id: I90e17c0b43af436da4b62c16179c198b5c74002c
-
- Jul 18, 2018
-
-
Todd Poynor authored
This hwservice isn't registered with hwservicemanager but rather passed to the thermal hal, so it doesn't need sepolicy associated with it to do so. Test: manual: boot, inspect logs Test: VtsHalThermalV1_1TargetTest Bug: 109802374 Change-Id: Ifb727572bf8eebddc58deba6c0ce513008e01861 Merged-In: Ifb727572bf8eebddc58deba6c0ce513008e01861 (cherry picked from commit c6afcb7f)
-
Todd Poynor authored
Avoids subsequent merge conflicts in this section of the file. Test: manual: compile Change-Id: I9af723dccff54039031dc4d8f3e5ee34be5960d1 Merged-In: I9af723dccff54039031dc4d8f3e5ee34be5960d1 (cherry picked from commit 66825305)
-
- Jul 17, 2018
-
-
Josh Gao authored
Test: debuggerd -j `pidof system_server` Change-Id: I6cca98b20ab5a135305b91cbb7c0fe7b57872bd3
-
Yifan Hong authored
Test: perfprofd tests Bug: 110890430 Change-Id: I0f7476d76b8d35b6b48fe6b77544ca8ccc71534d
-
- Jul 14, 2018
-
-
Steven Thomas authored
Add selinux policy for the new Binder-based vr flinger vsync service. Bug: 72890037 Test: - Manually confirmed that I can't bind to the new vsync service from a normal Android application, and system processes (other than vr_hwc) are prevented from connecting by selinux. - Confirmed the CTS test android.security.cts.SELinuxHostTest#testAospServiceContexts, when built from the local source tree with this CL applied, passes. - Confirmed the CTS test android.cts.security.SELinuxNeverallowRulesTest#testNeverallowRules521, when built from the local source tree with this CL applied, passes. Change-Id: Ib7a6bfcb1c2ebe1051f3accc18b481be1b188b06
-
- Jul 03, 2018
-
-
Florian Mayer authored
Bug: 110900684 Change-Id: I9fd141e0d56d0135c563467b7ca2f08b6af6700b`
-
- Jul 02, 2018
-
-
Yabin Cui authored
Export /proc/sys/kernel/perf_cpu_time_max_percent and /proc/sys/kernel/perf_event_mlock_kb in proc_perf. So they can be read in shell and written by init. This is needed by simpleperf to control cpu percent and memory used for profiling. Bug: 110706031 Test: build and boot hikey960 successfully. Change-Id: I2a01f583508003ab73427bab30a7982a27dfa677
-