Android security tags, read closely by Lightrion

CVE-2026-49933 AI-generated analysis

platform/packages/modules/Bluetooth, system/gd/hci (GD HCI layer, MsftExtensionManager / Microsoft vendor extension)

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

Default-initializes MsftExtensionManager::impl::scanning_callbacks_ to nullptr and adds a null check in handle_le_monitor_device_event, so a MSFT LE monitor device vendor event received before the scanning callbacks are registered is dropped instead of invoking a virtual method through an indeterminate pointer.

Root cause

In system/gd/hci/msft.cc the member `ScanningCallback* scanning_callbacks_` of `struct MsftExtensionManager::impl` was declared without an initializer, so it held an indeterminate value until it was set later. `handle_le_monitor_device_event` called `scanning_callbacks_->OnTrackAdvFoundLost(...)` with no null check whenever the event's monitor state was 0x00 or 0x01. Per the commit message, a controller that sends an MSFT_LE_MONITOR_DEVICE_EVENT during stack bring-up triggers a virtual call through the uninitialized pointer. The commit message says this could lead to control-flow hijack or denial of service in the privileged bluetooth process.

How the fix works

Completeness

Behavior changes

Per major

Unknowns

Back to October 2026 · Findings