Linux: Bluetooth: hci_codec: validate vendor codec count length
What fixes it
- 9c04b9a4d08b95dee901d24b7607c4cbd65fa0a8LinuxCVE List
- 12a82819b0cada6e304790b1097f8f9006eb6123LinuxCVE 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: hci_codec: validate vendor codec count length
The Read Local Supported Codecs parsers consume the variable-sized standard codec array before parsing the vendor codec count. Although the initial reply-size check includes a vendor count byte in the fixed layout, it does not guarantee that the byte remains after the standard codec array.
If a controller reply ends immediately after that array, calculating the vendor codec array size reads vnd_codecs->num beyond the skb data. Use skb_pull_data() to validate and consume each codec header before using its count in both command variants.
Text from CVE List
Affected versions 14
- Linuxaffected: 8961987f3f5fa2f2618e72304d013c8dd5e604a6 before 9c04b9a4d08b95dee901d24b7607c4cbd65fa0a8CVE List
- Linuxaffected: 8961987f3f5fa2f2618e72304d013c8dd5e604a6 before a6da782fefae611e68a1aa79644065fc8ca5abcdCVE List
- Linuxaffected: 8961987f3f5fa2f2618e72304d013c8dd5e604a6 before e4cfd3c4299105237458b27958bd7b0aa4c60795CVE List
- Linuxaffected: 8961987f3f5fa2f2618e72304d013c8dd5e604a6 before f49a543d76d48f184b34225d9c0e2fc4cbdea8ecCVE List
- Linuxaffected: 8961987f3f5fa2f2618e72304d013c8dd5e604a6 before 12a82819b0cada6e304790b1097f8f9006eb6123CVE List
- Linuxaffected: 8961987f3f5fa2f2618e72304d013c8dd5e604a6 before d0795cfd6f655f4de84868a4f4bb41a03f037b3dCVE List
- Linuxaffected: 5.16CVE List
- Linuxunaffected: all versions before 5.16CVE 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.54 through 6.18.*CVE List
- Linuxunaffected: 7.2.8 through 7.2.*CVE List
- Linuxunaffected: 7.3CVE List
References 6
- git.kernel.org/stable/c/9c04b9a4d08b95dee901d24b7607c4cbd65fa0a8Referencevia CVE List
- git.kernel.org/stable/c/a6da782fefae611e68a1aa79644065fc8ca5abcdReferencevia CVE List
- git.kernel.org/stable/c/e4cfd3c4299105237458b27958bd7b0aa4c60795Referencevia CVE List
- git.kernel.org/stable/c/f49a543d76d48f184b34225d9c0e2fc4cbdea8ecReferencevia CVE List
- git.kernel.org/stable/c/12a82819b0cada6e304790b1097f8f9006eb6123Referencevia CVE List
- git.kernel.org/stable/c/d0795cfd6f655f4de84868a4f4bb41a03f037b3dReferencevia CVE List