All vulnerabilities
CVE-2026-98457

Linux: Bluetooth: L2CAP: validate frame length before control and FCS access

Linux LinuxOperating systems
CVSS
NoneNot scored
ExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)0.18%Chance of exploitation activity in the next 30 days, higher than 7% of CVEs. Scored 23 Oct 2026FIRST EPSS
Fixed in4373ba79a267947e771c438507f7b103e30bdb21Also 965bd88ed4b4763cb765dd65885adcfa588c6b14, 3acf6a0038ec0d4e8f4dcbfc2a557dff5f61cb70 and 3 moreCVE List
Published18 Oct 2026Updated 19 Oct 2026CVE List

What fixes it

  • 4373ba79a267947e771c438507f7b103e30bdb21LinuxCVE List
  • 965bd88ed4b4763cb765dd65885adcfa588c6b14LinuxCVE List
  • 3acf6a0038ec0d4e8f4dcbfc2a557dff5f61cb70LinuxCVE List
  • 8c7556c7cd17e073bbefdc4a9a4694a207544c37LinuxCVE List
  • 1fdbb2a712a9a162ee817c959740face80b3d929LinuxCVE List
  • 6c78a213d9070b610c7f418af2c25b66180b7e37LinuxCVE List

A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.

Description

In the Linux kernel, the following vulnerability has been resolved:

Bluetooth: L2CAP: validate frame length before control and FCS access

l2cap_data_rcv() unpacks either a two-byte or four-byte control field without first ensuring that it is present. A short ERTM or streaming-mode frame can therefore cause an out-of-bounds read.

There is a second short-frame case when CRC16 is enabled. After the control field is pulled, l2cap_check_fcs() subtracts two from skb->len without checking it. If fewer than two bytes remain, the subtraction wraps; skb_trim() leaves the buffer unchanged and the subsequent FCS load reads past the logical end of the frame.

Validate that the frame contains both its control field and, when enabled, its FCS before either field is accessed.

Text from CVE List

Affected versions 18

  • Linuxaffected: 1c2acffb76d4bc5fd27c4ea55cc27ad8ead10f9a before 4373ba79a267947e771c438507f7b103e30bdb21CVE List
  • Linuxaffected: 1c2acffb76d4bc5fd27c4ea55cc27ad8ead10f9a before 965bd88ed4b4763cb765dd65885adcfa588c6b14CVE List
  • Linuxaffected: 1c2acffb76d4bc5fd27c4ea55cc27ad8ead10f9a before 3acf6a0038ec0d4e8f4dcbfc2a557dff5f61cb70CVE List
  • Linuxaffected: 1c2acffb76d4bc5fd27c4ea55cc27ad8ead10f9a before 8c7556c7cd17e073bbefdc4a9a4694a207544c37CVE List
  • Linuxaffected: 1c2acffb76d4bc5fd27c4ea55cc27ad8ead10f9a before 1fdbb2a712a9a162ee817c959740face80b3d929CVE List
  • Linuxaffected: 1c2acffb76d4bc5fd27c4ea55cc27ad8ead10f9a before c6a288e6001bcce16553c3853e0f5a45eaaf85c7CVE List
  • Linuxaffected: 1c2acffb76d4bc5fd27c4ea55cc27ad8ead10f9a before f557274af7b94b6134692e6f26b880f1e34c15bfCVE List
  • Linuxaffected: 1c2acffb76d4bc5fd27c4ea55cc27ad8ead10f9a before 6c78a213d9070b610c7f418af2c25b66180b7e37CVE List
  • Linuxaffected: 2.6.32CVE List
  • Linuxunaffected: all versions before 2.6.32CVE List
  • Linuxunaffected: 5.10.271 through 5.10.*CVE List
  • Linuxunaffected: 5.15.222 through 5.15.*CVE List
  • Linuxunaffected: 6.1.189 through 6.1.*CVE List
  • Linuxunaffected: 6.6.158 through 6.6.*CVE List
  • Linuxunaffected: 6.12.112 through 6.12.*CVE List
  • Linuxunaffected: 6.18.55 through 6.18.*CVE List
  • Linuxunaffected: 7.2.9 through 7.2.*CVE List
  • Linuxunaffected: 7.3CVE List

References 8