Commit Graph

49942 Commits

Author SHA1 Message Date
Charles He
b1141b6ff0 [automerger] Fix security hole in GateKeeperResponse. am: e74cae8f7c
Change-Id: Ic72c354aaec594f02567949e294be2c10da47853
2017-08-15 17:51:28 +00:00
Phil Weaver
0ddd7e4714 Merge "Back-port fixes for b/62196835" into mnc-dev
am: 093c7a8e56

Change-Id: I7f734c7878cf065d15335602f9b0a6e02a786d53
2017-07-18 23:28:55 +00:00
Phil Weaver
d4a5fd1ce3 Back-port fixes for b/62196835
Bug: 62196835
Test: Created an accessibility service that displays a system
and a toast overlay, confirmed that it disappeared when we
reached the accessibility permission screen that uses this
flag.

Change-Id: Ic51ead670fc480e549512ba1d02f49d9c13bc3f0
2017-07-17 16:36:34 -07:00
Charles He
e74cae8f7c Fix security hole in GateKeeperResponse.
GateKeeperResponse has inconsistent writeToParcel() and
createFromParcel() methods, making it possible for a malicious app to
create a Bundle that changes contents after reserialization. Such
Bundles can be used to execute Intents with system privileges.

This CL changes writeToParcel() to make serialization and
deserialization consistent, thus fixing the issue.

Bug: 62998805
Test: use the debug app (see bug)
Change-Id: Ie1c64172c454c3a4b7a0919eb3454f0e38efcd09
2017-07-14 14:36:11 +00:00
Phil Weaver
d87b12a4df Make a11y node info parceling more robust
am: d0e54c1c09

Change-Id: Ie4c34b84540bc928859ef1c271b4eb9d520fa6bc
2017-04-07 22:39:22 +00:00
Phil Weaver
d0e54c1c09 Make a11y node info parceling more robust
Fix a bug where a malformed Parceled representation
of an AccessibilityNodeInfo could be used to mess with
Bundles as they get reparceled.

Bug: 36491278
Test: Verified that POC no longer works, a11y cts still passes.
Change-Id: I10f24747e3ab87d77cd1deba56db4526e3aa5441
(cherry picked from commit 687bb44b43)
2017-04-07 18:53:26 +00:00
Jeff Sharkey
32c71b078c DO NOT MERGE. Grant MMS Uri permissions as the calling UID.
am: 3f3da42ef9

Change-Id: I222c32931827d906db5fc1e3258f2095e6013481
2017-02-12 09:47:33 +00:00
Jeff Sharkey
3f3da42ef9 DO NOT MERGE. Grant MMS Uri permissions as the calling UID.
A recent security fix prevents the system UID from handing out Uri
permission grants directly from itself.  Instead, services need to
issue grants as the original calling UID to ensure that the caller
actually has access to the Uris.

Test: builds, boots, send/recv MMS works in primary/secondary users
Bug: 33231106
Change-Id: Ia9fe19843b52977c8a94ee5349b907beda1882fc
(cherry picked from commit 7ff418d9a9)
2017-02-07 04:43:24 +00:00
Charles He
00a581f882 Prevent writing to FRP partition during factory reset. am: a9437bd1ca am: 2ce5c4320d
am: 133ff4d611

Change-Id: I54b163f645f561243aac3df1a55c1023531997b3
2016-12-29 10:11:20 +00:00
Charles He
133ff4d611 Prevent writing to FRP partition during factory reset. am: a9437bd1ca
am: 2ce5c4320d

Change-Id: I29339a634fd22cd46bfc08619464da8fe159a2b7
2016-12-29 10:03:53 +00:00
Charles He
2ce5c4320d Prevent writing to FRP partition during factory reset.
am: a9437bd1ca

Change-Id: Ib0b8db2357317dc3e680910c08f15f098baf2af9
2016-12-29 09:48:45 +00:00
Charles He
a9437bd1ca Prevent writing to FRP partition during factory reset.
Avoid potential race condition between FRP wipe and write operations
during factory reset by making the FRP partition unwritable after
wipe.

Bug: 30352311
Test: manual
Change-Id: If3f024a1611366c0677a996705724458094fcfad
(cherry picked from commit a629c772f4)
2016-12-14 12:08:30 +00:00
Jeff Sharkey
792d49dfb5 DO NOT MERGE. Check provider access for content changes.
am: 91add43ae7

Change-Id: I158a5dab0643fb5d2c07393f0df030e93b3c006a
2016-12-02 18:19:51 +00:00
Jeff Sharkey
6b89229d14 Merge "DO NOT MERGE. Check provider access for content changes." into lmp-mr1-dev 2016-12-02 18:10:16 +00:00
Jeff Sharkey
48f6bdfce4 Merge "DO NOT MERGE: Check provider access for content changes." into mnc-dr-dev 2016-12-02 18:10:14 +00:00
Jeff Sharkey
8e14278209 Merge "DO NOT MERGE: Check provider access for content changes." into mnc-dev 2016-12-02 18:10:11 +00:00
Jeff Sharkey
b9a0b79675 DO NOT MERGE. Retain DownloadManager Uri grants when clearing.
am: 1de465bec2

Change-Id: I14f82fa9c555bea0e71553713436a6836a421691
2016-12-02 00:50:29 +00:00
Jeff Sharkey
1de465bec2 DO NOT MERGE. Retain DownloadManager Uri grants when clearing.
As part of fixing a recent security issue, DownloadManager now needs
to issue Uri permission grants for all downloads.  However, if an app
that requested a download is upgraded or otherwise force-stopped,
the required permission grants are removed.

We could tell DownloadManager about the app being stopped, but that
would be racy (due to background broadcast), and waking it up would
degrade system health.  Instead, as a special case we now only
consider clearing DownloadManager permission grants when app data
is being cleared.

Bug: 32172542, 30537115
Test: builds, boots, app upgrade doesn't clear grants
Change-Id: I7e3d4546fd12bfe5f81b9fb9857ece58d574a6b9
(cherry picked from commit 23ec811266)
2016-12-01 23:54:04 +00:00
Jeff Sharkey
fbf395c220 DO NOT MERGE. Retain DownloadManager Uri grants when clearing.
As part of fixing a recent security issue, DownloadManager now needs
to issue Uri permission grants for all downloads.  However, if an app
that requested a download is upgraded or otherwise force-stopped,
the required permission grants are removed.

We could tell DownloadManager about the app being stopped, but that
would be racy (due to background broadcast), and waking it up would
degrade system health.  Instead, as a special case we now only
consider clearing DownloadManager permission grants when app data
is being cleared.

Bug: 32172542, 30537115
Test: builds, boots, app upgrade doesn't clear grants
Change-Id: I7e3d4546fd12bfe5f81b9fb9857ece58d574a6b9
(cherry picked from commit 23ec811266)
2016-12-01 23:51:25 +00:00
Jeff Sharkey
3b0aa060a3 DO NOT MERGE. Retain DownloadManager Uri grants when clearing.
As part of fixing a recent security issue, DownloadManager now needs
to issue Uri permission grants for all downloads.  However, if an app
that requested a download is upgraded or otherwise force-stopped,
the required permission grants are removed.

We could tell DownloadManager about the app being stopped, but that
would be racy (due to background broadcast), and waking it up would
degrade system health.  Instead, as a special case we now only
consider clearing DownloadManager permission grants when app data
is being cleared.

Bug: 32172542, 30537115
Test: builds, boots, app upgrade doesn't clear grants
Change-Id: I7e3d4546fd12bfe5f81b9fb9857ece58d574a6b9
(cherry picked from commit 23ec811266)
2016-12-01 16:50:29 -07:00
Jeff Sharkey
91add43ae7 DO NOT MERGE. Check provider access for content changes.
For an app to either send or receive content change notifications,
require that they have some level of access to the underlying
provider.

Without these checks, a malicious app could sniff sensitive user data
from the notifications of otherwise private providers.

Test: builds, boots, PoC app now fails
Bug: 32555637
Change-Id: If2dcd45cb0a9f1fb3b93e39fc7b8ae9c34c2fdef
2016-11-18 15:37:57 -07:00
Jeff Sharkey
ff2fede0dd DO NOT MERGE: Check provider access for content changes.
For an app to either send or receive content change notifications,
require that they have some level of access to the underlying
provider.

Without these checks, a malicious app could sniff sensitive user data
from the notifications of otherwise private providers.

Test: builds, boots, PoC app now fails
Bug: 32555637
Change-Id: If2dcd45cb0a9f1fb3b93e39fc7b8ae9c34c2fdef
2016-11-17 21:02:40 +00:00
Jeff Sharkey
4ddbf942a0 DO NOT MERGE: Check provider access for content changes.
For an app to either send or receive content change notifications,
require that they have some level of access to the underlying
provider.

Without these checks, a malicious app could sniff sensitive user data
from the notifications of otherwise private providers.

Test: builds, boots, PoC app now fails
Bug: 32555637
Change-Id: If2dcd45cb0a9f1fb3b93e39fc7b8ae9c34c2fdef
2016-11-17 21:02:37 +00:00
Xin Li
7e0483fcec Merge "Merge "DO NOT MERGE - Added Emergency affordance feature" into
lollipop-mr1-dev" into lmp-mr1-dev.

Change-Id: Ia47211f647d0d49b0adf3cb65eba4b9b686bcbff
2016-10-13 13:54:54 -07:00
Xin Li
ee2903686f Merge "Merge "DO NOT MERGE - Added Emergency affordance feature" into
marshmallow-dev" into mnc-dev.

Change-Id: I7215eebd4a2cc9a4b6ccf2a3e36ed8edc556d208
2016-10-13 13:51:42 -07:00
Selim Cinek
cd22634003 DO NOT MERGE - Added Emergency affordance feature
Added a service that listens whether emergency affordances
are necessary.

If the they are needed, it adds an option to the
global actions dialog that directly launches the
emergency call and also adds a long-press listener
to the keyguard emergency button.

Test: adb shell settings put global force_emergency_affordance 1 && adb shell settings put global emergency_affordance_number 111112
Bug: 30404490
Change-Id: Ib96a15da2ef4b568a8d77140ebca6aa6f20f5ddb
2016-10-06 02:15:31 +00:00
Selim Cinek
5fbc86bfd6 DO NOT MERGE - Added Emergency affordance feature
Added a service that listens whether emergency affordances
are necessary.

If the they are needed, it adds an option to the
global actions dialog that directly launches the
emergency call and also adds a long-press listener
to the keyguard emergency button.

Test: adb shell settings put global force_emergency_affordance 1 && adb shell settings put global emergency_affordance_number 111112
Bug: 30404490
Change-Id: Ib96a15da2ef4b568a8d77140ebca6aa6f20f5ddb
2016-10-05 18:40:07 -07:00
Ajay Panicker
46442d1be1 [DO NOT MERGE] Prevent FDs from being leaked when accepted sockets are closed
am: 85bc33a8f4

Change-Id: I2194d4c01e8bff53a7d6fcdf25513b216a511155
2016-09-21 21:15:32 +00:00
Ajay Panicker
447ac4b31d Merge "[DO NOT MERGE] Prevent FDs from being leaked when accepted sockets are closed" into lmp-mr1-dev 2016-09-21 21:08:10 +00:00
Ajay Panicker
cc4fd13113 [DO NOT MERGE] Fix setPairingConfirmation permissions issue (2/2)
am: bb9b38b957

Change-Id: I8083cdc24b838d235c83360372afc198c2f9f6c5
2016-09-21 01:02:28 +00:00
Marie Janssen
3106e3ae27 Fix setPairingConfirmation permissions issue (2/2)
am: 93326cfd9f

Change-Id: If8fdb8c3f5c167e1b6465c67cf64b8310d55b80b
2016-09-21 00:19:12 +00:00
TreeHugger Robot
22046e7323 Merge "Fix setPairingConfirmation permissions issue (2/2)" into mnc-dev 2016-09-21 00:12:07 +00:00
Ajay Panicker
bb9b38b957 [DO NOT MERGE] Fix setPairingConfirmation permissions issue (2/2)
setPairingConfirmation was set to only require BLUETOOTH_ADMIN
permission which shouldn't be able to set the confirmation itself.

This is restricted to BLUETOOTH_PRIVILEGED permission.

Bug: 29043989
Change-Id: Iddc935f0b02f5ff56e930914b4b664377e786184
2016-09-20 23:47:09 +00:00
Jeff Sharkey
afcd1135c3 Merge commit '0a9d537f623b2c11dce707fb9b91fea016fd0e9f' into manual_merge_0a9d537
am: df42d732f8

Change-Id: Ib7efd9dacf476d8a717456d8e6fc7ee617483d17
2016-09-16 23:14:51 +00:00
Jeff Sharkey
df42d732f8 Merge commit '0a9d537f623b2c11dce707fb9b91fea016fd0e9f' into manual_merge_0a9d537
Change-Id: Ib1a0bbb34edb61666ac5739f0b0eaadbe4c5fe06
2016-09-16 16:57:55 -06:00
Jeff Sharkey
0a9d537f62 Use "all_downloads" instead of "my_downloads". am: 1547194418 am: f6d7c1ed15
am: 6db572cf00

Change-Id: I687a883d528cc260aad3ee3da5600d3e0542c940
2016-09-16 22:07:27 +00:00
Jeff Sharkey
6db572cf00 Use "all_downloads" instead of "my_downloads". am: 1547194418
am: f6d7c1ed15

Change-Id: Icb352ec7b0e746264a6311b5fba1fc1272b627b0
2016-09-16 21:53:37 +00:00
Jeff Sharkey
f6d7c1ed15 Use "all_downloads" instead of "my_downloads".
am: 1547194418

Change-Id: I6dabba1f82ef1989eb2a52c3c493127a174ff315
2016-09-16 21:48:24 +00:00
Jeff Sharkey
1547194418 Use "all_downloads" instead of "my_downloads".
We can no longer return the "my_downloads" paths: if those Uris were
shared beyond the app that requested the download, access would be
denied.  Instead, we need to switch to using "all_downloads" Uris so
that permission grants can be issued to third-party viewer apps.

Since an app requesting a download doesn't normally have permission
to "all_downloads" paths, DownloadProvider now issues narrow grants
toward the owner of each download, both at device boot and when new
downloads are started.

Bug: 30537115, 30945409
Change-Id: I533125b36444877f54373d88922f2acc777e250b
2016-09-16 12:04:05 -06:00
Ajay Panicker
85bc33a8f4 [DO NOT MERGE] Prevent FDs from being leaked when accepted sockets are closed
Bug: 28672558
Change-Id: I4bc14bd7f098e34012c2ae1eeba2d439145901f0
2016-09-14 19:17:49 +00:00
Marie Janssen
93326cfd9f Fix setPairingConfirmation permissions issue (2/2)
setPairingConfirmation was set to only require BLUETOOTH_ADMIN
permission which shouldn't be able to set the confirmation itself.

This is restricted to BLUETOOTH_PRIVILEGED permission.

Bug: 29043989
Change-Id: I887de32d156e672ec44aa0b286cd7ea7f9f8ad55
2016-09-08 18:15:26 +00:00
David Christie
0777ad8253 resolve merge conflicts of b4a5615 to lmp-dev am: 288166cbb2 am: b7f8b59e24 am: 41a0dd41f1 am: af369f6e66
am: d610363a48

Change-Id: I186b4bedcf057489deca1e161a052619ce594e56
2016-08-24 22:23:49 +00:00
David Christie
d610363a48 resolve merge conflicts of b4a5615 to lmp-dev am: 288166cbb2 am: b7f8b59e24 am: 41a0dd41f1
am: af369f6e66

Change-Id: I6973f8f1053644548062b94c1696c123f47f0ad4
2016-08-24 22:14:28 +00:00
David Christie
af369f6e66 Fix vulnerability where large GPS XTRA data can be injected. -Can potentially crash system with OOM. Bug: 29555864 am: dde12c6923 am: 3462e52676 am: 5a6b11114a am: 655361b2b1 am: 62783bde30
am: 8788a2413c

Change-Id: If9d5385d7d949e85932e5586d4884ffe84d51d47
2016-08-24 20:30:06 +00:00
Jim Miller
b6f4b48df2 Bind fingerprint when we start authentication - DO NOT MERGE
This fixes a bug where it was possible to authenticate the wrong user.
We now bind the userId when we start authentication and confirm it when
authentication completes.

Fixes bug 30744668

Change-Id: I346d92c301414ed81e11fa9c171584c7ae4341c2
2016-08-19 03:46:40 +00:00
Narayan Kamath
8788a2413c Process: Fix communication with zygote. am: e29c6493c0
am: 1bd43c162f

Change-Id: Ic38c43db48584b3d899e120fd65a4058d806a39f
2016-08-18 09:58:45 +00:00
Narayan Kamath
1bd43c162f Process: Fix communication with zygote.
am: e29c6493c0

Change-Id: I86b073f7f69943911aa0bea782e29ae6d86609a2
2016-08-18 09:53:12 +00:00
Narayan Kamath
e29c6493c0 Process: Fix communication with zygote.
Don't write partial requests, and don't return (or throw) early after
partially reading a response.

bug: 30143607

(cherry-picked from commit 448be0a622)

Change-Id: I5881fdd5e81023cd21fb4d23a471a5031987a1f1
2016-08-16 16:17:29 +00:00
Christopher Tate
d6f3a11107 DO NOT MERGE: Backport N backup/restore stability work to M
This is a squashed rollup of backup/restore infrastructural work in
the N release.  It intentionally omits semantic/API changes such
as the introduction of the onQuotaExceeded() callback.

This patchset should not be merged beyond M maintenance releases.

Bug 29617908
Bug 29848715

Change-Id: I1eb25ad07f3bbf1132198d8a233722c41f1ac4cc
2016-08-08 10:48:26 -07:00
fionaxu
b4849f8d74 DO NOT MERGE revert system api loadSafeLabel am: 863ac471cf
am: 92b8cbd472

Change-Id: Ie23b6f96b4d624469f842c8822dc78f83c2d9714
2016-07-07 01:13:47 +00:00