summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRhed Jao <rhedjao@google.com>2022-09-26 21:35:26 +0800
committerAndroid Build Coastguard Worker <android-build-coastguard-worker@google.com>2022-10-18 07:22:41 +0000
commit2800c53c7c9181a9180c1b49649304c267f184f4 (patch)
treea4ba8be630c88fe7f3e75362a0aa9afe150285e4
parentfdfd18a890512e2c5708664d6cefcb34c306e885 (diff)
downloadbase-2800c53c7c9181a9180c1b49649304c267f184f4.tar.gz
[DO NOT MERGE] Fix permanent denial of service via setComponentEnabledSetting
Do not update invalid component enabled settings to prevent the malicious apps from exhausting system server memory. Bug: 240936919 Test: atest android.security.cts.PackageManagerTest Change-Id: I08165337895e89f13a2b9fcce1201cba9ad13d7d (cherry picked from commit 5e98f267592775a2b886ccaa752377d6967f9741) Merged-In: I08165337895e89f13a2b9fcce1201cba9ad13d7d
-rw-r--r--services/core/java/com/android/server/pm/PackageManagerService.java3
1 files changed, 3 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
index 323b8209ff49..362a8cf03aaa 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -21168,6 +21168,9 @@ public class PackageManagerService extends IPackageManager.Stub
} else {
Slog.w(TAG, "Failed setComponentEnabledSetting: component class "
+ className + " does not exist in " + packageName);
+ // Safetynet logging for b/240936919
+ EventLog.writeEvent(0x534e4554, "240936919", callingUid);
+ return;
}
}
switch (newState) {