Android security tags, read closely by Lightrion

CVE-2026-0050 AI-generated analysis

platform/packages/modules/Bluetooth, btservice/AdapterService (bond state handling and per-device access permissions)

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

AdapterService.handleBondStateChanged now also revokes the stored per-device access permissions (message, phonebook and a third stored permission) when a device's bond state leaves BOND_BONDED (fromState == BOND_BONDED), not only when it reaches BOND_NONE. A device that reuses a bonded address and tries to rebond therefore loses the previously granted permissions, and the user is asked for consent again.

Root cause

In AdapterService.handleBondStateChanged, the stored device permissions (setMessageAccessPermission, setPhonebookAccessPermission and a third permission set in the same block) were reset to ACCESS_UNKNOWN only when toState == BOND_NONE. The commit message says that when a device with the same address as a previously bonded device tries to bond again, the adapter service may not receive a BOND_NONE state change. The new test models this as a direct BOND_BONDED to BOND_BONDING transition. As a result, the permissions granted to the original device stayed in place for the new, possibly different, device, and the user was not asked for consent again.

How the fix works

Completeness

Behavior changes

Per major

Unknowns

Back to June 2026 · Findings