Android security tags, read closely by Lightrion

CVE-2025-48590 AI-generated analysis

platform/frameworks/base, services/core AppOps (AppOpsService)

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.

Removes the Q- app compat exemption in AppOpsService attribution tag validation. An attribution tag not declared by the package (or whose package is not found) is no longer forced to valid when SECURITY_EXCEPTION_ON_INVALID_ATTRIBUTION_TAG_CHANGE is disabled for the package or calling UID.

Root cause

In services/core/java/com/android/server/appop/AppOpsService.java, the attribution tag validation path builds an error message when the tag is not declared by the package or the package is not found. Before the fix it then queried mPlatformCompat.isChangeEnabledByPackageName(SECURITY_EXCEPTION_ON_INVALID_ATTRIBUTION_TAG_CHANGE, packageName, userId) and isChangeEnabledByUid(..., callingUid). If either returned false (the 'Q- apps' exemption named in the commit title), it set isAttributionTagValid = true and only logged an error. Invalid tags from such callers were therefore treated as valid.

How the fix works

Completeness

Behavior changes

Per major

Unknowns

Back to December 2025 · Findings