Skip to main content
← All vulnerabilities
CVE-2026-90089

Bluetooth: btnxpuart: Validate the FW dump header length

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 6.18.52, 7.2.6
None on Exploit-DB, Metasploit or GitHub

Summary

In the Linux kernel, the following vulnerability has been resolved: Bluetooth: btnxpuart: Validate the FW dump header length nxp_process_fw_dump() pulls the ACL header off the frame and then reads seq_num and buf_len from a struct nxp_fw_dump_hdr placed at skb->data, without checking that the ACL payload is long enough to contain it. h4_recv_buf() collects HCI_ACL_HDR_SIZE bytes of header followed by the number of payload bytes named in that header, so skb->len is 4 + dlen with dlen supplied by the controller and possibly smaller than the 8 byte dump header, or zero. A short frame with connection handle 0xfff therefore reads both fields from beyond the received data. Beyond the read itself, buf_len is what terminates a dump: a value of zero makes the driver call hci_devcd_complete() and reset the controller, so a truncated frame can end a dump early. Use skb_pull_data() to validate and pull the FW dump header before accessing its fields. Warn and reject the chunk if the header is truncated.

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Linux Linux

    From 998e447f443f138c90faa6ff3845082af419070e · fixed in a644b8df94966b672ac656577df98bd01bc88393; From 998e447f443f138c90faa6ff3845082af419070e · fixed in 22d419db7f9a01bea22cfcf66774d2b2fd4bb354; From 998e447f443f138c90faa6ff3845082af419070e · fixed in 060fa7592bdc043a93b6b7870f5b8551206d315d

  • Linux Linux

    6.15

  • KernelLinux

    From 6.15.0 · fixed in 6.18.52; From 6.19.0 · fixed in 7.2.6

References 3

git.kernel.org