Commit graph

2689 commits

Author SHA1 Message Date
Jiyong Park
6d474849e8 Allow apexd to realpath(3) on apex_key_files
am: ecc09871ba

Change-Id: I43f3d98669537d24879f3a734e2684968813e148
2018-10-18 23:46:29 -07:00
Jiyong Park
ecc09871ba Allow apexd to realpath(3) on apex_key_files
apexd uses realpath(3) to ensure that the public key file that will use
is under /system/etc/security/apex directory. In order to support it,
allow apexd to getattr on apex_key_files.

The canonicalization is required because the key name from APEX might be
wrong. For example, if the key name from an APEX is '../../some/path'
then apexd will use '/system/etc/security/apex/../../some/path' as the
public key file, which is incorrect.

Bug: 115721587
Test: m apex.test; m
/apex/com.android.example.apex@1 exists

Change-Id: I6dc5efa0de369f8497e4f6526e0164e2de589c67
2018-10-18 20:39:37 +09:00
Nick Kralevich
f00935a550 mediaprovider: add functionfs ioctl
am: a73f58aee1

Change-Id: I573c72eb0795862a498772e74cb7f230876fa914
2018-10-17 14:02:36 -07:00
Nick Kralevich
a73f58aee1 mediaprovider: add functionfs ioctl
Addresses the following denial:

type=1400 audit(0.0:51894): avc: denied { ioctl } for comm="MtpServer" path="/dev/usb-ffs/mtp/ep1" dev="functionfs" ino=30291 ioctlcmd=0x6782 scontext=u:r:mediaprovider:s0:c512,c768 tcontext=u:object_r:functionfs:s0 tclass=file permissive=0 app=com.android.providers.media

Test: policy compiles.
Change-Id: I5290abb2848e5824669dae4cea829d4cbea98ab4
2018-10-17 10:14:40 -07:00
Dario Freni
84a010c48c Allow apexd to create symlink in /apex.
am: bab267a88f

Change-Id: I2ae046cd9434b983abe6366bd72e595b48ddfdf4
2018-10-17 09:32:41 -07:00
Dario Freni
bab267a88f Allow apexd to create symlink in /apex.
Bug: 115710947
Test: on device
Change-Id: Ie712689d80fb829f16de70e865cac4f0ff4e9b35
2018-10-17 11:25:02 +01:00
Bowgo Tsai
0a2efc1698 Merge "Allow input config to be under /vendor/odm"
am: 247f061a65

Change-Id: Ibec2927b80068cedc0c7ba7391e6fe53d9ae0892
2018-10-16 17:27:24 -07:00
Bowgo Tsai
591293111e Allow input config to be under /vendor/odm
Input config should be under /odm when it's "device-specific",
instead of /vendor (for "SoC-specific").

However, not all device have /odm partition so having the fallback
symlink: /odm -> /vendor/odm is important

Bug: 112880217
Test: build
Change-Id: I294e2b172d06d58a42c51c128e448c7644f854dc
2018-10-16 18:18:53 +08:00
Chong Zhang
c601d9e5a9 add media.codec.update service
am: 52fb3edbb6

Change-Id: I106c471e9251ec7a4f43b13103c429c3b4fc2476
2018-10-15 17:15:08 -07:00
Florian Mayer
40144ea2af Merge "Add heapprofd selinux config."
am: d5c62bfb41

Change-Id: Ie33eefd304941d2d4553eb35a91e174b2c3c859d
2018-10-15 14:21:32 -07:00
Chong Zhang
52fb3edbb6 add media.codec.update service
Add a service in mediaswcodec to load updated codecs,
and restrict it to userdebug/eng. Reuse existing
mediaextractor_update_service since the codec update
service is identical, this avoids adding a new one
for now as we may not need the service anymore
after switching to APEX.

Bug: 111407413
Bug: 117290290

Change-Id: Ia75256f47433bd13ed819c70c1fb34ecd5d507b4
2018-10-15 21:06:53 +00:00
Florian Mayer
4fde9ec7b3 Add heapprofd selinux config.
This does not actually grant any permissions but just adds the
necessary boilerplate for a new service.

Bug: 117762471
Bug: 117761873

Change-Id: I7cdd2ae368616cfd54fc685c15f775604bfc80d4
2018-10-15 18:31:26 +01:00
Tri Vo
3026dc738f Audit access to same_process_hal_file.
am: 81ade3dd1d

Change-Id: Ie3437cd699d16cbf72fca61c5646800d90feaa2a
2018-10-12 22:43:35 -07:00
Tri Vo
7151273060 Merge "Add type for /system/bin/tcpdump."
am: af9251539a

Change-Id: Ie51d95317f6613e086b2b80a5ca967779ab9eb32
2018-10-12 22:43:20 -07:00
Tri Vo
81ade3dd1d Audit access to same_process_hal_file.
same_process_hal_file is exempted from many Treble neverallows. We want
to know which processes access this type to eventually constrain access
to it.

Bug: 37211678
Test: m selinux_policy
Change-Id: I61c0df21250eb1b1ae2d9c5fa9c801a828539813
2018-10-13 05:27:03 +00:00
Tri Vo
e8b33c3139 Add type for /system/bin/tcpdump.
We add this type with the intent to expose /system/bin/tcpdump to
vendor on userdebug devices only.

Bug: 111243627
Test: device boots /system/bin/tcpdump correctly labeled as
tcpdump_exec, can browse internet, turn wifi on/off
Change-Id: Icb35e84c87120d198fbb2b44edfa5edf6021d0f0
2018-10-12 21:51:46 +00:00
Siarhei Vishniakou
c38d803278 Merge "Allow system_server to read vendor_file"
am: 25b4eb217c

Change-Id: I78ecee68fdc8dadf62b0c3977f01a0571a1bdc1f
2018-10-12 13:14:55 -07:00
Siarhei Vishniakou
3639f57960 Allow system_server to read vendor_file
Input device configuration files .idc, .kl that are placed in /vendor
are currently not accessible.
Allow the read access here.

Bug: 112880217
Test: move .idc and .kl files from /system to /vendor, then observe
logcat. With this patch, avc denials disappear.

Change-Id: I72ad62b9adf415f787565adced73fd8aaff38832
2018-10-12 02:42:09 +00:00
Chong Zhang
817027b055 Merge "add mediaswcodec service"
am: 9977e25411

Change-Id: Id64de9050f14d4f782dbdf6a9b695a52201e042e
2018-10-11 19:03:25 -07:00
Treehugger Robot
9977e25411 Merge "add mediaswcodec service" 2018-10-12 01:48:47 +00:00
Sooraj Sasindran
d09ac29451 Merge "Add ians service contexts"
am: 3158efd684

Change-Id: I1c01a879a6eeeecbaa0ecbaf211c61aa7cbec72a
2018-10-11 16:15:32 -07:00
Sooraj Sasindran
3158efd684 Merge "Add ians service contexts" 2018-10-11 22:58:32 +00:00
Chong Zhang
bdbfff1b00 add mediaswcodec service
Set up a new service for sw media codec services.

Bug: 111407413

Test: cts-tradefed run cts-dev --module CtsMediaTestCases --compatibility:module-arg CtsMediaTestCases:include-annotation:android.platform.test.annotations.RequiresDevice
Change-Id: Ia1c6a9ef3f0c1d84b2be8756eb1853ffa0597f8e
2018-10-11 15:10:17 -07:00
Nick Kralevich
b8b512528c remove system_app proc_net_type access
am: 2e251461fc

Change-Id: I8bee9014a8b4debfff0b29c7178b6126a4aaa365
2018-10-11 12:59:38 -07:00
Nick Kralevich
2e251461fc remove system_app proc_net_type access
The auditallow added in 7a4af30b3 has not triggered. This is safe to
remove.

Test: device boots and no obvious problems.
Test: No audit messages seen since May 2018 on go/sedenials
Bug: 9496886
Bug: 68016944
Change-Id: I3861b462467e1fc31e67a263ad06716a4111dcb8
2018-10-11 10:20:19 -07:00
Tri Vo
7f5c49235f Merge "Constrain cgroups access."
am: 99f2477953

Change-Id: Ib2dd4f787fb6fb00234ee70d2a6e1569b3d96fd5
2018-10-11 09:44:01 -07:00
Tri Vo
f55c989d18 Constrain cgroups access.
What changed:
- Removed cgroup access from untrusted and priv apps.
- Settings app writes to /dev/stune/foreground/tasks, so system_app domain
retains access to cgroup.
- libcutils exports API to /dev/{cpuset, stune}/*. This API seems to be used
abundantly in native code. So added a blanket allow rule for (coredomain - apps)
to access cgroups.
- For now, only audit cgroup access from vendor domains. Ultimately, we want to
either constrain vendor access to individual domains or, even better, remove
vendor access and have platform manage cgroups exclusively.

Changes from original aosp/692189 which was reverted:
- There seem to be spurious denials from vendor-specific apps. So added
back access from { appdomain -all_untrusted_apps -priv_app } to cgroup.
Audit this access with intent to write explicit per-domain rules for it.

Bug: 110043362
Test: adb shell setprop ro.config.per_app_memcg true, device correctly populates
/dev/memcg on a per app basis on a device that supports that.
Test: aosp_sailfish, wahoo boot without cgroup denials
This reverts commit cacea25ed0.
Change-Id: I05ab404f348a864e8409d811346c8a0bf49bc47a
2018-10-10 17:41:09 -07:00
Tri Vo
fc25373422 Merge "Label /data/asan/* libs as system_lib_file."
am: 9a06d551c6

Change-Id: Ib00c42dea5a1f89b9a45c01df80680ecf7a76381
2018-10-10 13:43:57 -07:00
Sooraj Sasindran
ffaf66d48b Add ians service contexts
Add ians service contexts

Bug: 113106744
Test: verified from service list that ianas is
      registered
Change-Id: Iea653416ffa45cba07a544826e0a2395d31cedca
Merged-In: Iea653416ffa45cba07a544826e0a2395d31cedca
2018-10-10 20:43:05 +00:00
Tri Vo
45d521a577 Label /data/asan/* libs as system_lib_file.
This patch gives global access to asan libraries. This is not ideal since the
labeling is not symmetric with standard locations, but this approach is easy to
maintain.

Fixes: 117555408
Test: processes on asan builds load /data/asan/* libs correctly
Change-Id: If54558c1808d8b16e06073c150c9f3eb358dda67
2018-10-10 11:23:00 -07:00
Nick Kralevich
d3d4fe8e8c Merge "Move to ioctl whitelisting for plain files / directories"
am: ae079b88bb

Change-Id: I334de5f9528e4b84fc656b95de2832b6e63502df
2018-10-10 08:55:52 -07:00
Nick Kralevich
6a4f72fecc Revert "Constrain cgroups access."
am: cacea25ed0

Change-Id: I501b64576a2f059ce5c56064777cad07251d72cb
2018-10-10 06:10:40 -07:00
Nick Kralevich
ebc3a1a34c Move to ioctl whitelisting for plain files / directories
Remove kernel attack surface associated with ioctls on plain files. In
particular, we want to ensure that the ioctls FS_IOC_ENABLE_VERITY and
FS_IOC_MEASURE_VERITY are not exposed outside a whitelisted set of
entities. However, it's straight forward enough to turn on ioctl
whitelisting for everything, so we choose to do so.

Test: policy compiles and device boots
Test: device boots with data wipe
Test: device boots without data wipe
Change-Id: I545ae76dddaa2193890eeb1d404db79d1ffa13c2
2018-10-10 13:02:57 +00:00
Nick Kralevich
cacea25ed0 Revert "Constrain cgroups access."
This reverts commit 9899568f6c.

Reason for revert: Reports of high numbers of SELinux denials
showing up on the SELinux dashboard.

Bug: 110043362
Change-Id: Id8fc260c47ffd269ac2f15ff7dab668c959e3ab0
2018-10-10 04:25:17 +00:00
Tri Vo
0b4e4f47f7 Constrain cgroups access.
am: 9899568f6c

Change-Id: I253a0b620daa55663eda04baecba2d2ffd925925
2018-10-09 16:52:32 -07:00
Tri Vo
9899568f6c Constrain cgroups access.
What changed:
- Removed cgroup access from untrusted and priv apps.
- Settings app writes to /dev/stune/foreground/tasks, so system_app domain
retains access to cgroup.
- libcutils exports API to /dev/{cpuset, stune}/*. This API seems to be used
abundantly in native code. So added a blanket allow rule for (coredomain - apps)
to access cgroups.
- For now, only audit cgroup access from vendor domains. Ultimately, we want to
either constrain vendor access to individual domains or, even better, remove
vendor access and have platform manage cgroups exclusively.

Bug: 110043362
Test: adb shell setprop ro.config.per_app_memcg true, device correctly populates
/dev/memcg on a per app basis on a device that supports that.
Test: aosp_sailfish, wahoo boot without cgroup denials
Change-Id: I9e441b26792f1edb1663c660bcff422ec7a6332b
2018-10-09 23:42:06 +00:00
Igor Murashkin
9a88ef46a9 Merge "iorapd: Add new binder service iorapd."
am: 77e40fbd06

Change-Id: Ibf6517366094b6d47cc0e1551b2ed709c3b10937
2018-10-09 16:29:10 -07:00
Treehugger Robot
77e40fbd06 Merge "iorapd: Add new binder service iorapd." 2018-10-09 23:09:16 +00:00
Sudheer Shanka
f8990c95e0 Allow zygote to search sdcardfs dirs.
am: 684cdb6615

Change-Id: Ic2f5eb4f8c66143bb92135effc893aa7519b7b37
2018-10-09 10:32:49 -07:00
Howard Ro
e9e8d0163a Allow zygote to write to statsd and refactor
am: 98de322a03

Change-Id: I2c4b8f3fe83d9f21c7194d9aafd2654f48596320
2018-10-08 16:25:09 -07:00
Sudheer Shanka
684cdb6615 Allow zygote to search sdcardfs dirs.
Bug: 117440207
Bug: 111890351
Test: manual
Change-Id: Ie218dec3e4f0f5dbade6d1c4d28b259909664056
2018-10-08 16:21:03 -07:00
Igor Murashkin
72a88b194c iorapd: Add new binder service iorapd.
This daemon is very locked down. Only system_server can access it.

Bug: 72170747
Change-Id: I7b72b9191cb192be96001d84d067c28292c9688f
2018-10-08 15:00:34 -07:00
Howard Ro
98de322a03 Allow zygote to write to statsd and refactor
We plan on migrating MetricsLogger to write to statsd socket. So we need to
allow zygote, which writes to logd using MetricsLogger, to also be able
to statsd. We also re-locate some sepolicies to write to statsd socket
in their respective policy definitions.

Bug: 110537511
Test: no failure/violations observed
Change-Id: I21fd352a25ed946516f9a45ac3b5e9bf97b059bc
2018-10-08 13:48:28 -07:00
Tri Vo
393ada790e asan: global read access to /system/asan.options
am: 93318192a0

Change-Id: I08b56ad2714f121b3f88bc545148e2b893d91325
2018-10-08 11:38:15 -07:00
Tri Vo
93318192a0 asan: global read access to /system/asan.options
Bug: 117178352
Test: no denials to /system/asan.options on asan walleye
Change-Id: I6042693afb926a22a3e2be79bd2a7ba062806143
2018-10-08 17:27:06 +00:00
Mark Salyzyn
2ecacbf915 fs_mgr: add /mnt/scratch to possible overlayfs support directories
am: 1369dfcaad

Change-Id: I0ce24e8f3ba8609e851ea767ea4b4386d0963385
2018-10-08 09:28:38 -07:00
Mark Salyzyn
1369dfcaad fs_mgr: add /mnt/scratch to possible overlayfs support directories
A default set of options are available, but can override in a fstab
overlay entry with upperdir=, lowerdir= to the same mount point,
workdir=.  The default is a valid /mnt/scratch/overlay/
or /cache/overlay/ directory, with .../<mount_point>/upper and
.../<mount_point>/work, associated with each system partition
<mount_point>.

Test: manual
Bug: 109821005
Change-Id: I5662c01fad17d105665be065f6dcd7c3fdc40d95
2018-10-08 14:23:01 +00:00
Christine Franks
dd76f14229 Merge "Add system_api_service to color_display_service"
am: 12bbbc69a1

Change-Id: I4ee2c40f80b7e08ecc8ebfc0660e19181f64de6f
2018-10-05 08:47:11 -07:00
Christine Franks
ce3e87c06a Add system_api_service to color_display_service
Bug: 111215474
Test: boots
Change-Id: Ib8cabeb64a8b4ec9f592d870bd0af611a2720cc7
2018-10-04 16:21:23 -07:00
Martijn Coenen
563e5b36e6 Add policy for apexd.
am: ac097ac4c7

Change-Id: Ic6958aa709f9b8253d15cef475864f845fc25715
2018-10-04 00:16:20 -07:00