CVE-2026-23307

Summary

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

can: ems_usb: ems_usb_read_bulk_callback(): check the proper length of a message

When looking at the data in a USB urb, the actual_length is the size of the buffer passed to the driver, not the transfer_buffer_length which is set by the driver as the max size of the buffer.

When parsing the messages in ems_usb_read_bulk_callback() properly check the size both at the beginning of parsing the message to make sure it is big enough for the expected structure, and at the end of the message to make sure we don't overflow past the end of the buffer for the next message.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux702171adeed3607ee9603ec30ce081411e36ae42 < aed172a2e2330131f0977d2acd3ec8883f413ec1affected
LinuxLinux702171adeed3607ee9603ec30ce081411e36ae42 < f10177e6c4575aedaea580ce67d792fab7a2235eaffected
LinuxLinux702171adeed3607ee9603ec30ce081411e36ae42 < c703bbf8e9b4947e111c88d2ed09236a6772a471affected
LinuxLinux702171adeed3607ee9603ec30ce081411e36ae42 < 1818974e1b5ef200e27f144c8cb8a246420bb54daffected
LinuxLinux702171adeed3607ee9603ec30ce081411e36ae42 < 18f75b9cbdc3703f15965425ab69dee509b07785affected
LinuxLinux702171adeed3607ee9603ec30ce081411e36ae42 < 1cf469026d4a2308eaa91d04dca4a900d07a5c2eaffected
LinuxLinux702171adeed3607ee9603ec30ce081411e36ae42 < 2833e13e2b099546abf5d40a483b4eb04ddd1f7baffected
LinuxLinux702171adeed3607ee9603ec30ce081411e36ae42 < 38a01c9700b0dcafe97dfa9dc7531bf4a245deffaffected
LinuxLinux2.6.32affected
LinuxLinux0 < 2.6.32unaffected
LinuxLinux5.10.253 <= 5.10.*unaffected
LinuxLinux5.15.203 <= 5.15.*unaffected
LinuxLinux6.1.167 <= 6.1.*unaffected
LinuxLinux6.6.130 <= 6.6.*unaffected
LinuxLinux6.12.77 <= 6.12.*unaffected
LinuxLinux6.18.17 <= 6.18.*unaffected
LinuxLinux6.19.7 <= 6.19.*unaffected
LinuxLinux7.0 <= *unaffected

Weaknesses

References