Android security tags, read closely by Lightrion

CVE-2024-31315 AI-generated analysis

platform/frameworks/base, system_server notification service (com.android.server.notification.ManagedServices)

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

ManagedServices now checks that a managed service component (e.g. a NotificationListenerService) still declares the required bind permission before rebinding it, and removes approved component entries that lost the permission when their package changes.

Root cause

In services/core/java/com/android/server/notification/ManagedServices.java, two rebind paths only checked that the package or the flattened component name was in the approved list (isPackageOrComponentAllowed): reregisterService, and the enabled branch of the mMutex-guarded path near line 1150. Neither path checked that the resolved ServiceInfo still carried mConfig.bindPermission. As a result, an approved component whose package was updated so that the service no longer declared the bind permission could still be bound. The package-change handling also did not remove such entries from mApproved.

How the fix works

Completeness

Behavior changes

Per major

Unknowns

Back to June 2024 · Findings