Android security tags, read closely by Lightrion

CVE-2025-48572 AI-generated analysis

platform/frameworks/base, services/core media (MediaSessionService / MediaButtonReceiverHolder)

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 (3 corrections). Verify against the commit before relying on it.

MediaButtonReceiverHolder.send no longer attaches BroadcastOptions that grant background-activity-start and FGS temp-allowlist privileges to the media button receiver; it instead calls MediaSessionService.tempAllowlistTargetPkgIfPossible for the target package, with caller identity.

Root cause

In services/core/java/com/android/server/media/MediaButtonReceiverHolder.java, send() built BroadcastOptions with setTemporaryAppAllowlist(fgsAllowlistDurationMs, TEMPORARY_ALLOWLIST_TYPE_FOREGROUND_SERVICE_ALLOWED, REASON_MEDIA_BUTTON) and setBackgroundActivityStartsAllowed(true). It passed options.toBundle() both to mPendingIntent.send(...) and to context.sendBroadcastAsUser(...) in the legacy default path. These options gave the media button receiver (the package in the holder) background activity start and FGS allowlist capabilities without regard to the dispatching caller's identity. The commit message says this accidentally propagated BAL abilities to the receiver.

How the fix works

Completeness

Behavior changes

Per major

Unknowns

Back to December 2025 · Findings