Merge "Checking if package belongs to UID before registering broadcast receiver"

This commit is contained in:
Kunal Malhotra
2022-12-05 18:23:57 +00:00
committed by Android (Google) Code Review

View File

@@ -3838,6 +3838,11 @@ public final class ActiveServices {
throw new SecurityException("BIND_EXTERNAL_SERVICE failed, "
+ className + " is not an isolatedProcess");
}
if (AppGlobals.getPackageManager().getPackageUid(callingPackage,
0, userId) != callingUid) {
throw new SecurityException("BIND_EXTERNAL_SERVICE failed, "
+ "calling package not owned by calling UID ");
}
// Run the service under the calling package's application.
ApplicationInfo aInfo = AppGlobals.getPackageManager().getApplicationInfo(
callingPackage, ActivityManagerService.STOCK_PM_FLAGS, userId);