Android security tags, read closely by Lightrion

CVE-2025-48618 AI-generated analysis

platform/frameworks/opt/telephony, CAT/SIM Toolkit proactive command decoding (com.android.internal.telephony.cat)

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.

Adds a KeyguardManager.isDeviceLocked() check to CommandParamsFactory.processLaunchBrowser so that a SIM Toolkit LAUNCH BROWSER proactive command is rejected with a ResultException(ResultCode.LAUNCH_BROWSER_ERROR) while the device is locked. It also relaxes ResultException so this result code can be thrown with only a text explanation.

Root cause

CommandParamsFactory.processLaunchBrowser decoded every LAUNCH BROWSER proactive command it received, whether or not the device was locked. The resulting params went on to the STK app, which (per index search, StkAppService.launchBrowser in packages/apps/Stk) builds an ACTION_VIEW intent for the supplied URL or a default URL. Nothing in the decode path checked the keyguard state. In addition, ResultException's single-argument constructor listed LAUNCH_BROWSER_ERROR (0x26) as a code that requires additional info and threw an AssertionError without it. Throwing that code with only an explanation string would therefore have asserted.

How the fix works

Completeness

Behavior changes

Per major

Unknowns

Back to December 2025 · Findings