Android security tags, read closely by Lightrion

CVE-2023-40105 AI-generated analysis

platform/frameworks/base, ActivityManagerService (backup agent callback, services/core/java/com/android/server/am)

AI-generated: written from the bulletin and the fixing diffs by claude-fable-5-1, then checked against the code by claude-opus-5-5 (7 corrections). Verify against the commit before relying on it.

Adds a check to ActivityManagerService.backupAgentCreated() that compares the caller's uid with the package's uid, so a caller can only report a backup agent for a package that belongs to its own uid.

Root cause

backupAgentCreated(String agentPackageName, IBinder agent, int userId) is a Binder entry point (@Override) in ActivityManagerService. Before the fix it called only mUserController.handleIncomingUser(...) to resolve and check the target user. It never checked that the calling uid owned agentPackageName, so a caller could report a backup agent for a package it does not own. The bulletin classifies this as information disclosure (ID). Per index search, the only uid check on this path is in the app process, in ActivityThread.handleCreateBackupAgent (it compares the requested package's uid to Process.myUid()). That check does not protect the server side.

How the fix works

Completeness

Behavior changes

Per major

Unknowns

Back to November 2023 · Findings