CVEvulnerability
CVE-2026-98461
- Status
- Received
- Published
- 2026-10-18
- Last modified
- 2026-10-19
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Description
In the Linux kernel, the following vulnerability has been resolved:
Bluetooth: hci_sock: validate event length before filtering
is_filtered_packet() reads the event code from skb->data[0] without first
checking that the skb is nonempty. When an opcode filter is configured,
it also reads the command opcode at offsets 3 or 4 without checking that
a Command Complete or Command Status event is long enough.
hci_send_to_sock() invokes the filter before hci_event_packet() validates
the event header. A malformed event supplied by a controller or a vhci
device can therefore cause an out-of-bounds read.
Keep the unmasked event code for the opcode checks. The masked value is
needed for the 64-bit event bitmap, but using it to identify command events
aliases event codes above 0x3f. In particular, Synchronous Train Complete
(0x4f) was treated as Command Status (0x0f) even though its payload has no
opcode.
Reject actual command events that are too short for the field being
inspected. A truncated command event cannot match a configured opcode.
References
- https://git.kernel.org/stable/c/1a92763c2ba721bf113cd83f913fe8c511b4a4dc git.kernel.org
- https://git.kernel.org/stable/c/2501a3b7b7144d1d11939b355a48ed01f83d0c62 git.kernel.org
- https://git.kernel.org/stable/c/3976bbcd43b9b94c53ac9b0fd28888011588f4cc git.kernel.org
- https://git.kernel.org/stable/c/39e99d85071bca0feeec3164a9437ca1bff297fc git.kernel.org
- https://git.kernel.org/stable/c/b0a6cf99afd57a39598b1beca0e86ef5004980de git.kernel.org
- https://git.kernel.org/stable/c/dca25c204f71be0556a15177dbe037237ac43e5e git.kernel.org
- https://git.kernel.org/stable/c/ebdd49cec380731844ed9df4092a29a014623df4 git.kernel.org
- https://git.kernel.org/stable/c/f894f6292d5122cd62d30600736b4a0ae79f7770 git.kernel.org