Android security tags, read closely by Lightrion

CVE-2025-48556 AI-generated analysis

platform/frameworks/base, core/java/android/app/NotificationChannel (notification framework)

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.

NotificationChannel.setId() and setConversationId() now pass their string arguments through the existing getTrimmedString() helper so mId, mParentId and mConversationId are capped at MAX_TEXT_LENGTH instead of being stored unbounded.

Root cause

NotificationChannel already limits some text fields to MAX_TEXT_LENGTH: setDescription uses getTrimmedString(), and an existing parcel round-trip test (NotificationChannelTest lines 204-215) shows that an unparceled channel has id, name, description, parent id, group and conversation id bounded to MAX_TEXT_LENGTH. The setters setId(String) (@hide) and setConversationId(String parentChannelId, String conversationId) assigned their arguments directly to mId, mParentId and mConversationId, so a channel built or mutated through these setters could hold ids longer than MAX_TEXT_LENGTH. The bulletin rates the issue as a High-severity EoP; the material does not show the concrete downstream consequence of the oversized ids.

How the fix works

Completeness

Behavior changes

Per major

Unknowns

Back to September 2025 · Findings