Android security tags, read closely by Lightrion

CVE-2024-23707 AI-generated analysis

platform/packages/apps/Settings, search (SearchResultTrampoline / SearchFeatureProviderImpl)

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

SearchResultTrampoline in Settings now identifies the caller of its authorization check with Activity.getLaunchedFromPackage() instead of getCallingActivity(), and SearchFeatureProvider.verifyLaunchSearchResultPageCaller is changed to take the launching package name as a String.

Root cause

SearchResultTrampoline.onCreate() called getCallingActivity() and passed the resulting ComponentName to SearchFeatureProviderImpl.verifyLaunchSearchResultPageCaller(). That method allowed the launch only if the package name was the Settings package, the SettingsIntelligence package (getSettingsIntelligencePkgName), or signature-allowlisted (isSignatureAllowlisted). The same ComponentName also drove isSettingsIntelligence(), which selects the launch path for the result page. Per the commit message, getCallingActivity() reports who will get the result of the Activity, not who launched it, so the identity the check relied on did not reliably reflect the launching package. getLaunchedFromPackage() reports who launched the Activity or built the PendingIntent used to launch it.

How the fix works

Completeness

Behavior changes

Per major

Unknowns

Back to May 2024 · Findings