summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Pinyao Ting <pinyaoting@google.com> 2023-07-24 14:58:56 -0700
committer Pinyao Ting <pinyaoting@google.com> 2023-09-27 20:41:48 +0000
commit01bfd04ff445db6290ae430d44ea1bf1a115fe3c (patch)
tree60d6979f8d76f0504c4148098a02d586c949b284
parent941891258d44af4298976d3258730b8635fa5ed9 (diff)
Validate userId when publishing shortcuts
Bug: 288110451 Test: manual Change-Id: Idbde676f871db83825155730e3714f3727e25762 Merged-In: Idbde676f871db83825155730e3714f3727e25762
-rw-r--r--services/core/java/com/android/server/pm/ShortcutService.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/pm/ShortcutService.java b/services/core/java/com/android/server/pm/ShortcutService.java
index c3375d9346e5..91886336e86b 100644
--- a/services/core/java/com/android/server/pm/ShortcutService.java
+++ b/services/core/java/com/android/server/pm/ShortcutService.java
@@ -1641,6 +1641,10 @@ public class ShortcutService extends IShortcutService.Stub {
android.util.EventLog.writeEvent(0x534e4554, "109824443", -1, "");
throw new SecurityException("Shortcut package name mismatch");
}
+ final int callingUid = injectBinderCallingUid();
+ if (UserHandle.getUserId(callingUid) != si.getUserId()) {
+ throw new SecurityException("User-ID in shortcut doesn't match the caller");
+ }
}
private void verifyShortcutInfoPackages(