Android security tags, read closely by Lightrion

CVE-2024-49740 AI-generated analysis

platform/packages/services/Telephony (PhoneInterfaceManager, visual voicemail SMS filter) and platform/frameworks/base (android.telephony.VisualVoicemailSmsFilterSettings)

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

Adds server-side enforcement in PhoneInterfaceManager so that only the visual voicemail package (default dialer, system dialer or carrier VVM app) can enable or disable the visual voicemail SMS filter. It also limits the size of VisualVoicemailSmsFilterSettings fields in the Builder: clientPrefix at most 256 chars, originatingNumbers at most 100 entries of at most 256 chars each.

Root cause

PhoneInterfaceManager.enableVisualVoicemailSmsFilter and disableVisualVoicemailSmsFilter only ran mAppOps.checkPackage(Binder.getCallingUid(), callingPackage). They then cleared the calling identity and called VisualVoicemailSmsFilterConfig to apply or remove the caller's filter settings. The API documentation requires the caller to be the default dialer, but the server side did not enforce this (per the commit message), so any package could set filter settings. In addition, VisualVoicemailSmsFilterSettings.Builder accepted a clientPrefix of any length and an originatingNumbers list of any size, with elements of any length. The bulletin classifies the result as a High severity DoS. The material does not show which resource is exhausted.

How the fix works

Completeness

Behavior changes

Per major

Unknowns

Back to March 2025 · Findings