PatchSiren cyber security CVE debrief
CVE-2026-31771 Linux CVE debrief
CVE-2026-31771 is a Linux kernel Bluetooth vulnerability in HCI event processing. The issue was published on 2026-05-01 and updated on 2026-05-11, with fixes referenced in the NVD record and Linux kernel stable patches. The bug allowed wake-reason storage to run before per-event length validation, so a short HCI event frame could reach a memory-copy path before bounds checks completed. The fix moves wake-address storage into already-validated event handlers and tightens the locking contract around the helper.
- Vendor
- Linux
- Product
- CVE-2026-31771
- CVSS
- HIGH 8.1
- CISA KEV
- Not listed in stored evidence
- Original CVE published
- 2026-05-01
- Original CVE updated
- 2026-05-11
- Advisory published
- 2026-05-01
- Advisory updated
- 2026-05-11
Who should care
Linux kernel maintainers, distro security teams, and operators of systems with Bluetooth enabled—especially those running affected kernel ranges identified by NVD.
Technical summary
According to the supplied description, hci_store_wake_reason() was called from hci_event_packet() after the HCI event header was stripped but before hci_event_func() enforced per-event minimum payload length from hci_ev_table. That ordering meant malformed or short HCI event frames could reach bacpy() without a prior bounds check. The remediation moves wake-address storage into individual event handlers after their existing event-length validation succeeds, and turns hci_store_wake_reason() into a small helper that stores only an already-validated bdaddr while hdev->lock is held. The helper is annotated with __must_hold(&hdev->lock) and lockdep_assert_held(&hdev->lock) to preserve the locking contract. The affected handler set listed in the source includes hci_conn_request_evt(), hci_conn_complete_evt(), hci_sync_conn_complete_evt(), le_conn_complete_evt(), hci_le_adv_report_evt(), hci_le_ext_adv_report_evt(), hci_le_direct_adv_report_evt(), hci_le_pa_sync_established_evt(), and hci_le_past_received_evt().
Defensive priority
High. The CVSS vector is AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H, indicating a Bluetooth-proximate attack surface with potential confidentiality and availability impact in kernel space. Systems with Bluetooth enabled should prioritize patching.
Recommended defensive actions
- Apply the Linux kernel fixes referenced by the official stable patch links.
- Upgrade kernel builds in the affected ranges listed by NVD, including 5.10 through before 6.19.12 and the referenced 7.0 release candidates.
- Verify vendor backports for your distribution rather than relying only on upstream version numbers.
- If Bluetooth is not required on a system, consider disabling it as a temporary reduction of exposure until patched.
- Track distro advisories that incorporate the upstream fix into supported kernel packages.
Evidence notes
This debrief is based only on the supplied CVE/NVD corpus and the official kernel patch references. The description explicitly states the validation-order bug, the helper refactor, the lock contract annotations, and the affected event handlers. NVD marks the issue analyzed with CVSS 3.1 AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H and lists affected Linux kernel CPE ranges starting at 5.10 through before 6.19.12, plus 7.0 rc1 through rc6. No KEV data was supplied.
Official resources
-
CVE-2026-31771 CVE record
CVE.org
-
CVE-2026-31771 NVD detail
NVD
-
Source item URL
nvd_modified
-
Mitigation or vendor reference
416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch
-
Mitigation or vendor reference
416baaa9-dc9f-4396-8d5f-8c081fb06d67 - Patch
Publicly disclosed in the CVE/NVD record on 2026-05-01 and updated by NVD on 2026-05-11 with patch references.