Commit Graph

44851 Commits

Author SHA1 Message Date
Chen Chen
aebca7f35b BluetoothSecurity: Add BLUETOOTH_PRIVILEGED permission for pairing dialog
Bug: 194300867
Test: Build

Change-Id: I5a496df50550ea7ee6986c960e28ae3e4a056b4b
2021-10-06 18:50:23 +00:00
Bill Yi
88a0994ed8 Import translations. DO NOT MERGE ANYWHERE
BUG:167403112

Auto-generated-cl: translation import
Change-Id: Id5c579245cf72f10f4d15fcb69d24bcf58dd281a
2021-08-17 22:14:24 -07:00
Hugh Chen
c551f39977 [automerger skipped] RESTRICT AUTOMERGE Fix phishing attacks over Bluetooth due to unclear warning message am: 8fe8e0fc21 -s ours
am skip reason: subject contains skip directive

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/15016141

Change-Id: Ifef9d53b072a081c2c78437e4bc77e511024092a
2021-06-28 06:14:41 +00:00
Hugh Chen
9316df9560 [automerger skipped] RESTRICT AUTOMERGE Update string am: 3d6641a468 -s ours
am skip reason: subject contains skip directive

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/15016140

Change-Id: Ic3ca73d1126a07c955e10b7871b9ccec0038b60d
2021-06-28 06:14:38 +00:00
Hugh Chen
8fe8e0fc21 RESTRICT AUTOMERGE Fix phishing attacks over Bluetooth due to unclear warning message
This CL add more prompts presented for users to avoid phishing attacks.

Screenshot:
https://screenshot.googleplex.com/p5PZbphN46ddPFV.png
https://screenshot.googleplex.com/6Q2wKfPbNQmTtx8.png
https://screenshot.googleplex.com/987VpYgNUZL2K4T.png
https://screenshot.googleplex.com/9eVg6SAGScVXU8U.png

Bug: 167403112
Test: manually test
Change-Id: Iadec059b662fd91754ad573bbe688702cdd3c9af
(cherry picked from commit 10e4599219)
2021-06-18 04:02:52 +00:00
Hugh Chen
3d6641a468 RESTRICT AUTOMERGE Update string
1. Replace "An untrusted Bluetooth device" to "A Bluetooth device".
2. Replace "Deny" to "Don't allow"

https://docs.google.com/document/d/18bVSIAyX4MNpNeCvxqyZu7CXcBUcdV0pnh-gzVprjqU/edit?ts=60709637

Bug: 167403112
Test: send intent to test right prompts message is pop up.
make -j42 RunSettingsRoboTests

Change-Id: I38da15d4b1fb08671f6352458cbf3f735b4083bc
(cherry picked from commit 38fc9a91b5)
2021-06-18 04:02:42 +00:00
Hugh Chen
65e3c68e6f RESTRICT AUTOMERGE Fix phishing attacks over Bluetooth due to unclear warning message
This CL add more prompts presented for users to avoid phishing attacks.

Screenshot:
https://screenshot.googleplex.com/p5PZbphN46ddPFV.png
https://screenshot.googleplex.com/6Q2wKfPbNQmTtx8.png
https://screenshot.googleplex.com/987VpYgNUZL2K4T.png
https://screenshot.googleplex.com/9eVg6SAGScVXU8U.png

Bug: 167403112
Test: manually test
Change-Id: Iadec059b662fd91754ad573bbe688702cdd3c9af
(cherry picked from commit 10e4599219)
2021-06-18 03:50:33 +00:00
Hugh Chen
79ae54ca2d RESTRICT AUTOMERGE Update string
1. Replace "An untrusted Bluetooth device" to "A Bluetooth device".
2. Replace "Deny" to "Don't allow"

https://docs.google.com/document/d/18bVSIAyX4MNpNeCvxqyZu7CXcBUcdV0pnh-gzVprjqU/edit?ts=60709637

Bug: 167403112
Test: send intent to test right prompts message is pop up.
make -j42 RunSettingsRoboTests

Change-Id: I38da15d4b1fb08671f6352458cbf3f735b4083bc
(cherry picked from commit 38fc9a91b5)
2021-06-18 03:50:24 +00:00
Jakub Pawlowski
d6ed1528cb Prevent drawing on top of DevicePickerActivity am: 9d99e0b3ff
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/14487882

Change-Id: Iddc0d74ef10d404f8463544683cc913656346a34
2021-05-12 19:47:21 +00:00
Jakub Pawlowski
9d99e0b3ff Prevent drawing on top of DevicePickerActivity
Bug: 182584940
Merged-In: I8b27b397bce1708a42b96b1b647c64e23142c468
Change-Id: I8b27b397bce1708a42b96b1b647c64e23142c468
2021-05-12 19:27:32 +00:00
TreeHugger Robot
9724c735da Merge changes Ia51528f2,Id27a7809 into oc-mr1-dev am: 75e33fb315
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/14419449

Change-Id: Ia0822c53ab65ce90334aee521be99886945d41e8
2021-05-11 06:16:53 +00:00
Hugh Chen
53ff99b8b4 [automerger skipped] RESTRICT AUTOMERGE Fix unable to send file via OPP am: 2deb2829ea -s ours
am skip reason: subject contains skip directive

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/14419449

Change-Id: I23ab4bb935d65f3afda82333291d0ea7a187428a
2021-05-11 06:16:53 +00:00
TreeHugger Robot
f9c99c40d2 Merge changes Ia51528f2,Id27a7809 into pi-dev
* changes:
  RESTRICT AUTOMERGE Fix unable to send file via OPP
  RESTRICT AUTOMERGE Fix bluetooth settings will broadcast to anywhere when some cases
2021-05-11 06:03:54 +00:00
TreeHugger Robot
75e33fb315 Merge changes Ia51528f2,Id27a7809 into oc-mr1-dev
* changes:
  RESTRICT AUTOMERGE Fix unable to send file via OPP
  RESTRICT AUTOMERGE Fix bluetooth settings will broadcast to anywhere when some cases
2021-05-11 06:03:45 +00:00
Hugh Chen
2deb2829ea RESTRICT AUTOMERGE Fix unable to send file via OPP
Bluetooth app will indicate BluetoothOppReceiver to receive
device picker intent. But for fix the security issue we
removed the setClassName() method in ag/14111132 to avoid attack.
It causes BluetoothOppReceiver cannot receive the intent.

This CL will compare to calling package name with launch package name.
If they are not equal, the setClassName() will not invoke.

Bug: 186490534
Bug: 179386960
Bug: 179386068

Test: make RunSettingsRoboTests -j56
Change-Id: Ia51528f2a44ab73edbc86899ca0846d3262fe1f0
(cherry picked from commit bb5be240c0)
2021-05-04 08:17:35 +00:00
Hugh Chen
f727d5cf2a RESTRICT AUTOMERGE Fix unable to send file via OPP
Bluetooth app will indicate BluetoothOppReceiver to receive
device picker intent. But for fix the security issue we
removed the setClassName() method in ag/14111132 to avoid attack.
It causes BluetoothOppReceiver cannot receive the intent.

This CL will compare to calling package name with launch package name.
If they are not equal, the setClassName() will not invoke.

Bug: 186490534
Bug: 179386960
Bug: 179386068

Test: make RunSettingsRoboTests -j56
Change-Id: Ia51528f2a44ab73edbc86899ca0846d3262fe1f0
(cherry picked from commit bb5be240c0)
2021-05-04 08:11:01 +00:00
Tsung-Mao Fang
26f3013c32 Prevent HTML Injection on the Device Admin request screen am: 80c3f6d4d8
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/14167794

Change-Id: Iac38c0d7f7517c8d4ecac036e73524d37c66fb6e
2021-04-29 06:21:38 +00:00
Hugh Chen
c2adcb2d3a RESTRICT AUTOMERGE Fix bluetooth settings will broadcast to anywhere when some cases
BluetoothPermissionActivity and DevicePickerFragment will send
broadcast to return the result to calling apps. As this broadcast
intent is from Settings with uid 1000, it will be sent to any
protected BroadcastReceivers in the device. It can make an attacker
send broadcast to protected BroadcastReceivers like factory reset intent
(android/com.android.server.MasterClearReceiver) via
BluetoothPermissionActivity or DevicePickerFragment.

This CL will not allow to set package name and class name to avoid
the attacker.

Bug: 179386960
Bug: 179386068
Test: make -j42 RunSettingsRoboTests and use test apk to manually test
to verify factory reset not started and no system UI notification.

Change-Id: Id27a78091ab578077853b8fbb97a4422cff0a158
(cherry picked from commit 8adedc6249)
2021-04-26 03:45:59 +00:00
Hugh Chen
093ac45cd8 RESTRICT AUTOMERGE Fix bluetooth settings will broadcast to anywhere when some cases
BluetoothPermissionActivity and DevicePickerFragment will send
broadcast to return the result to calling apps. As this broadcast
intent is from Settings with uid 1000, it will be sent to any
protected BroadcastReceivers in the device. It can make an attacker
send broadcast to protected BroadcastReceivers like factory reset intent
(android/com.android.server.MasterClearReceiver) via
BluetoothPermissionActivity or DevicePickerFragment.

This CL will not allow to set package name and class name to avoid
the attacker.

Bug: 179386960
Bug: 179386068
Test: make -j42 RunSettingsRoboTests and use test apk to manually test
to verify factory reset not started and no system UI notification.

Change-Id: Id27a78091ab578077853b8fbb97a4422cff0a158
(cherry picked from commit 8adedc6249)
2021-04-26 03:45:01 +00:00
Tsung-Mao Fang
80c3f6d4d8 Prevent HTML Injection on the Device Admin request screen
The root issue is that CharSequence is an interface.
String implements that interface, however, Spanned class
too which is a rich text format that can store HTML code.

The solution is enforce to use String type which won't include
any HTML function.

Test: Rebuilt apk and see the string without HTML style.
Bug: 179042963
Change-Id: I53b460b12da918e022d2f2934f114d205dbaadb0
Merged-In: I53b460b12da918e022d2f2934f114d205dbaadb0
2021-04-14 12:19:21 +00:00
TreeHugger Robot
d2ee0db550 Merge "Hide non-system overlay window on ActivityPicker" into pi-dev 2021-04-09 15:58:30 +00:00
Arc Wang
636e70fbf2 Hide non-system overlay window on ActivityPicker
To improve security.

Bug: 181962311
Test: manual
      Show an AlertDialog and observe if it will hide after below command.
      adb shell am start -a android.intent.action.PICK_ACTIVITY -n com.android.settings/.ActivityPicker
Change-Id: I43bb0f47a96719c61c5beb4ddf486b14cbdd6ee8
Merged-In: I6e2845cc19dc012cba2933318a067bbb8db90a23
2021-04-07 10:06:45 +08:00
TreeHugger Robot
a5715ed5c9 [automerger skipped] Merge "Hide non-system overlay window on ActivityPicker" into oc-mr1-dev am: f43af46d1d -s ours
am skip reason: skip tag Change-Id I6e2845cc19dc012cba2933318a067bbb8db90a23 with SHA-1 855b1f428d is already in history

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13835812

Change-Id: Ife137461365b88bc33cc7e22d72ef4c6b2926357
2021-04-06 13:18:07 +00:00
TreeHugger Robot
f43af46d1d Merge "Hide non-system overlay window on ActivityPicker" into oc-mr1-dev 2021-04-06 12:51:12 +00:00
Arc Wang
bcc7f89f85 Merge "Revert "Hide non-system overlay window on ActivityPicker"" into pi-dev 2021-04-06 12:37:52 +00:00
Arc Wang
eb2ac6e455 Revert "Hide non-system overlay window on ActivityPicker"
This reverts commit 855b1f428d.

Reason for revert: <b/184623294>

Change-Id: Ie1eb6f86feda56d6444971fa5dfd2c11357fab01
2021-04-06 12:29:38 +00:00
Arc Wang
8a9fafb37d Hide non-system overlay window on ActivityPicker
To improve security.

Bug: 181962311
Test: manual
      Show an AlertDialog and observe if it will hide after below command.
      adb shell am start -a android.intent.action.PICK_ACTIVITY -n com.android.settings/.ActivityPicker
Change-Id: I6e2845cc19dc012cba2933318a067bbb8db90a23
Merged-In: I6e2845cc19dc012cba2933318a067bbb8db90a23
(cherry picked from commit 3b4853e109)
2021-04-06 11:02:10 +00:00
TreeHugger Robot
7a09c0613f Merge "Hide non-system overlay window on ActivityPicker" into pi-dev 2021-04-06 08:23:13 +00:00
Weng Su
56dc96d1f6 Merge "[DO NOT MERGE] Revert "[Security Report] Fix Settings WifiScanModeActivity Overlaid issue"" into pi-dev 2021-03-19 02:51:52 +00:00
Weng Su
f4432df069 [DO NOT MERGE] Revert "[Security Report] Fix Settings WifiScanModeActivity Overlaid issue"
This reverts commit 32d5d3a3a3.

Bug: 174047492
Reason for revert:
Look like the WindowManager.LayoutParams.SYSTEM_FLAG_HIDE_NON_SYSTEM_OVERLAY_WINDOWS system flag is not supported in the pi-dev branch.

Change-Id: Iec3c28e8c148f83fc171d696b2fc67f359d03eb8
2021-03-18 09:02:20 +00:00
Andras Kloczl
94ed37dacf [automerger skipped] Prevent using invalid result uri during multi user image change am: 6746add669 -s ours
am skip reason: Change-Id I258c305f825da94474c8027828e3b9707b463699 with SHA-1 9c0024f455 is in history

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13816457

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: Ia7e57866c554495b9f8fd8b48b9c03ccde9f8160
2021-03-11 10:24:31 +00:00
András Klöczl
f1125282f9 Merge "Prevent using invalid result uri during multi user image change" into pi-dev 2021-03-11 09:48:07 +00:00
Arc Wang
855b1f428d Hide non-system overlay window on ActivityPicker
To improve security.

Bug: 181962311
Test: manual
      Show an AlertDialog and observe if it will hide after below command.
      adb shell am start -a android.intent.action.PICK_ACTIVITY -n com.android.settings/.ActivityPicker
Change-Id: I6e2845cc19dc012cba2933318a067bbb8db90a23
(cherry picked from commit 3b4853e109)
2021-03-11 07:47:37 +00:00
Andras Kloczl
6746add669 Prevent using invalid result uri during multi user image change
Test: manual
Bug: 172939189
Change-Id: I258c305f825da94474c8027828e3b9707b463699
Merged-In: I258c305f825da94474c8027828e3b9707b463699
Merged-In: I3e6f6200e82e86d6a2085652906ad2d0d44814f5
Merged-In: Id2e598878b3250e8b3590905c6def561e2437d55
Merged-In: I15e15ad88b768a5b679de32c5429d921d850a3cb
2021-03-11 00:16:46 +00:00
Andras Kloczl
9c0024f455 Prevent using invalid result uri during multi user image change
Test: manual
Bug: 172939189
Change-Id: I258c305f825da94474c8027828e3b9707b463699
Merged-In: I258c305f825da94474c8027828e3b9707b463699
Merged-In: I3e6f6200e82e86d6a2085652906ad2d0d44814f5
Merged-In: Id2e598878b3250e8b3590905c6def561e2437d55
Merged-In: I15e15ad88b768a5b679de32c5429d921d850a3cb
2021-03-11 00:16:03 +00:00
Weng Su
32d5d3a3a3 [Security Report] Fix Settings WifiScanModeActivity Overlaid issue
- Disallowed non system overlay windows

- Screenshot
  https://screenshot.googleplex.com/77fJ9QN6pV4zFYc

Bug: 174047492
Test: manual test

Merged-In: Ia7acad6d456ce5ebea2d982d4cb063d4f28cbfff
Change-Id: Ia7acad6d456ce5ebea2d982d4cb063d4f28cbfff
(cherry picked from commit d47d8e4fc5)
2021-02-01 03:45:27 +00:00
Bryan Ferris
8a79a4314d Merge "RESTRICT AUTOMERGE Update String" into pi-dev 2021-01-08 01:35:51 +00:00
Hugh Chen
57358903b3 [automerger skipped] RESTRICT AUTOMERGE Update String am: 48ec74592d -s ours
am skip reason: subject contains skip directive

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13275407

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I94614a9cac3555ec44d6cfef6e7af4a6b24f6272
2021-01-07 01:55:50 +00:00
Hugh Chen
d6bc0a328f [automerger skipped] RESTRICT AUTOMERGE Fix phishing attacks over Bluetooth due to unclear warning message am: 9037e43fa8 -s ours
am skip reason: subject contains skip directive

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13275406

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I0e109407102ce058e806f3a239882dc8abaa36a7
2021-01-07 01:55:49 +00:00
TreeHugger Robot
1a6a1b12ef Merge "RESTRICT AUTOMERGE Fix phishing attacks over Bluetooth due to unclear warning message" into pi-dev 2021-01-07 01:27:50 +00:00
Hugh Chen
ccbe74f555 RESTRICT AUTOMERGE Update String
Remove brackets.

Bug: 176106404
Bug: 167403112
Test: build pass
Change-Id: Ib9a3c4fa3c6ea1ca54244d672bdc3e12d51a719f
2020-12-30 18:33:12 -08:00
Hugh Chen
01a50db645 RESTRICT AUTOMERGE Fix phishing attacks over Bluetooth due to unclear warning message
Before this CL, there is a possible phishing attack allowing a malicious
BT device to acquire permissions based on insufficient information
presented to the user in the consent dialog. This could lead to local
escalation of privilege with no additional execution privileges needed.
User interaction is needed for exploitation.

This CL add more prompts presented for users to avoid phishing attacks.

Merge Conflict Notes:
There were a number of entries in strings.xml that did not exist on this
branch. However, as the CL only adds new entries rather than modifying
old ones this should not cause a problem. There were no merge conflicts
in the java files.

Bug: 167403112
Test: send intent to test right prompts message is pop up. make -j42 RunSettingsRoboTests
Change-Id: Idc6ef558b692115bb82ea58cf223f5919b618633
2020-12-30 18:32:58 -08:00
Hugh Chen
48ec74592d RESTRICT AUTOMERGE Update String
Remove brackets.

Bug: 176106404
Bug: 167403112
Test: build pass
Change-Id: Ib9a3c4fa3c6ea1ca54244d672bdc3e12d51a719f
2020-12-30 18:31:39 -08:00
Hugh Chen
9037e43fa8 RESTRICT AUTOMERGE Fix phishing attacks over Bluetooth due to unclear warning message
Before this CL, there is a possible phishing attack allowing a malicious
BT device to acquire permissions based on insufficient information
presented to the user in the consent dialog. This could lead to local
escalation of privilege with no additional execution privileges needed.
User interaction is needed for exploitation.

This CL add more prompts presented for users to avoid phishing attacks.

Merge Conflict Notes:
There were a number of entries in strings.xml that did not exist on this
branch. However, as the CL only adds new entries rather than modifying
old ones this should not cause a problem. There were no merge conflicts
in the java files.

Bug: 167403112
Test: send intent to test right prompts message is pop up. make -j42 RunSettingsRoboTests
Change-Id: Idc6ef558b692115bb82ea58cf223f5919b618633
2020-12-30 18:31:22 -08:00
TreeHugger Robot
2117006bc6 Merge "Add bluetooth package to permission request intent" into oc-mr1-dev am: 504b96d76c
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13088581

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I7d7dcaefd10f297c9e268d8f9d8bf666d98b08fd
2020-12-09 12:08:40 +00:00
TreeHugger Robot
504b96d76c Merge "Add bluetooth package to permission request intent" into oc-mr1-dev 2020-12-09 12:06:33 +00:00
Jakub Pawlowski
c721dc5bad Prevent overlay drawing on top of Bluetooth activity dialog am: b29c036522
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13090436

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I956e8906633af45f12617dabbec4e060c14502f2
2020-12-09 11:32:56 +00:00
Jakub Pawlowski
b29c036522 Prevent overlay drawing on top of Bluetooth activity dialog
Bug: 168504491
Merged-In: I04ebe580db2b299af2bd5e44e0b0f20bd42f8535
Change-Id: I04ebe580db2b299af2bd5e44e0b0f20bd42f8535
2020-12-09 08:00:22 +00:00
Eugene Susla
74ca730b4a [automerger skipped] RESTRICT AUTOMERGE am: 0c870fd7df -s ours
am skip reason: subject contains skip directive

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/13066751

Change-Id: Idd2522623b35128ccc207d99d21371aefa0c4454
2020-12-07 18:47:31 +00:00
Chris Manton
1951d27669 Add bluetooth package to permission request intent
Limit the component that may resolve this intent to the
bluetooth package.

Bug: 158219161
Test: Security Fix
Tag: #security
Change-Id: If732f940a7aa256f5975349118e8eb6cf5584676
2020-11-19 10:20:24 +00:00