Android security tags, read closely by Lightrion

CVE-2025-32326 AI-generated analysis

platform/packages/apps/Settings, users / AppRestrictionsFragment (app restrictions UI)

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

In Settings' AppRestrictionsFragment, the custom restrictions Intent supplied by an app is now launched only as a copy pinned to the component and package that the safety check resolved, instead of relaunching a copy of the original Intent after vetting.

Root cause

RestrictionsResultReceiver.onReceive reads an Intent from the broadcast result extras (results.getParcelable(Intent.EXTRA_RESTRICTIONS_INTENT)). assertSafeToStartCustomActivity resolved it with mPackageManager.resolveActivity(intent, PackageManager.MATCH_DEFAULT_ONLY) and threw a SecurityException if the resolved activity was not allowed, but it returned void. The caller then called startActivityForResult(new Intent(restrictionsIntent), ...) with a copy of the original Intent. Nothing tied what was launched to the ResolveInfo that passed the check.

How the fix works

Completeness

Behavior changes

Per major

Unknowns

Back to September 2025 · Findings