Bluetooth: L2CAP: Validate PDU length before reading SDU length in l2cap_ecred_data_rcv()
CVE-2026-31512 is fixed in 51 products on 1 platform, first by DEBIAN-CVE-2026-31512, released May 15, 2026. It is not reported as exploited. Patch Radar priority: High.
In the Linux kernel, the following vulnerability has been resolved: Bluetooth: L2CAP: Validate PDU length before reading SDU length in l2cap_ecred_data_rcv() l2cap_ecred_data_rcv() reads the SDU length field from skb->data using get_unaligned_le16() without first verifying that skb contains at least L2CAP_SDULEN_SIZE (2) bytes. When skb->len is less than 2, this reads past the valid data in the skb. The ERTM reassembly path correctly calls pskb_may_pull() before reading the SDU length (l2cap_reassemble_sdu, L2CAP_SAR_START case). Apply the same validation to the Enhanced Credit Based Flow Control data path.
Where it's fixed
| Product | Fixed in | Fix | Released |
|---|---|---|---|
| Linux | |||
| dtb-aarch64 · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-64kb · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-64kb · sles 15.7 | 6.4.0-150700.53.55.1 | SUSE-SU-2026:2238-1 | Jun 30, 2026 |
| kernel-64kb · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-azure · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-azure · sles 15.7 | 6.4.0-150700.53.55.1 | SUSE-SU-2026:2238-1 | Jun 30, 2026 |
| kernel-azure · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-default · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-default · sles 15.6 | 6.4.0-150600.23.112.1 | SUSE-SU-2026:2195-1 | Jul 1, 2026 |
| kernel-default · sles 15.7 | 6.4.0-150700.53.55.1 | SUSE-SU-2026:2238-1 | Jun 30, 2026 |
| kernel-default · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23237-1 | Aug 11, 2026 |
| kernel-default-base · opensuse-leap 16.0 | 6.12.0-160000.37.1.160000.2.19 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-default-base · sles 15.6 | 6.4.0-150600.23.112.1.150600.12.52.1 | SUSE-SU-2026:2195-1 | Jul 1, 2026 |
| kernel-default-base · sles 15.7 | 6.4.0-150700.53.55.1.150700.17.33.1 | SUSE-SU-2026:2238-1 | Jun 30, 2026 |
| kernel-default-base · sles 16.0 | 6.12.0-160000.37.1.160000.2.19 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-docs · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-docs · sles 15.6 | 6.4.0-150600.23.112.1 | SUSE-SU-2026:2195-1 | Jul 1, 2026 |
| kernel-docs · sles 15.7 | 6.4.0-150700.53.55.1 | SUSE-SU-2026:2238-1 | Jun 30, 2026 |
| kernel-docs · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-kvmsmall · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-kvmsmall · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-livepatch-SLE15-SP6_Update_26 · sles 15.6 | 1-150600.13.3.1 | SUSE-SU-2026:2195-1 | Jul 1, 2026 |
| kernel-livepatch-SLE15-SP7_Update_15 · sles 15.7 | 1-150700.15.3.1 | SUSE-SU-2026:2238-1 | Jun 30, 2026 |
| kernel-obs-build · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-obs-build · sles 15.6 | 6.4.0-150600.23.112.1 | SUSE-SU-2026:2195-1 | Jul 1, 2026 |
| kernel-obs-build · sles 15.7 | 6.4.0-150700.53.55.1 | SUSE-SU-2026:2238-1 | Jun 30, 2026 |
| kernel-obs-qa · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-obs-qa · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-rt · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-source · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-source · sles 15.6 | 6.4.0-150600.23.112.1 | SUSE-SU-2026:2195-1 | Jul 1, 2026 |
| kernel-source · sles 15.7 | 6.4.0-150700.53.55.1 | SUSE-SU-2026:2238-1 | Jun 30, 2026 |
| kernel-source · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-syms · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-syms · sles 15.6 | 6.4.0-150600.23.112.1 | SUSE-SU-2026:2195-1 | Jul 1, 2026 |
| kernel-syms · sles 15.7 | 6.4.0-150700.53.55.1 | SUSE-SU-2026:2238-1 | Jun 30, 2026 |
| kernel-syms · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| kernel-uek · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-core · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-core · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-core · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-core · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-devel · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-devel · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules-core · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules-core · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules-deprecated · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules-deprecated · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules-desktop · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules-desktop · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules-extra · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules-extra · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules-extra-netfilter · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules-extra-netfilter · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules-usb · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules-usb · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules-wireless · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-debug-modules-wireless · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-devel · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-devel · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-doc · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-doc · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules-core · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules-core · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules-deprecated · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules-deprecated · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules-desktop · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules-desktop · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules-extra · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules-extra · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules-extra-netfilter · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules-extra-netfilter · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules-usb · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules-usb · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules-wireless · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-modules-wireless · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-tools · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek-tools · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-core · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-core · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-devel · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-devel · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules-core · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules-core · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules-deprecated · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules-deprecated · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules-desktop · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules-desktop · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules-extra · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules-extra · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules-extra-netfilter · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules-extra-netfilter · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules-usb · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules-usb · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules-wireless · ol 10 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-uek64k-modules-wireless · ol 9 | 0:6.12.0-204.92.4.2.el9uek | ELSA-2026-50372 | Jul 2, 2026 |
| kernel-zfcpdump · opensuse-leap 16.0 | 6.12.0-160000.37.1 | OPENSUSE-SU-2026:21555-1 | Aug 12, 2026 |
| kernel-zfcpdump · sles 15.7 | 6.4.0-150700.53.55.1 | SUSE-SU-2026:2238-1 | Jun 30, 2026 |
| kernel-zfcpdump · sles 16.0 | 6.12.0-160000.37.1 | SUSE-SU-2026:23231-1 | Aug 11, 2026 |
| linux · Debian 12.15 (bookworm) | 6.1.170-1 | DEBIAN-CVE-2026-31512 | May 15, 2026 |
| linux · Debian 13.5 (trixie) | 6.12.85-1 | DEBIAN-CVE-2026-31512 | May 15, 2026 |
| linux · Debian 14 | 6.19.11-1 | DEBIAN-CVE-2026-31512 | May 15, 2026 |
Patch Radar data is free to use with attribution. Terms and how to credit it.
Product names, logos and trademarks shown on Patch Radar belong to their respective owners. They are used only to identify the software each security fix applies to and to help readers find their platform. Their use does not imply any affiliation with, or endorsement by, those owners, and Patchblox is not affiliated with any of them.