CVE-2026-23307
Analyzed Analyzed - Analysis Complete
Buffer Overflow in Linux can: ems_usb Driver Fixed

Publication date: 2026-03-25

Last updated on: 2026-05-28

Assigner: kernel.org

Description
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.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-03-25
Last Modified
2026-05-28
Generated
2026-06-16
AI Q&A
2026-03-25
EPSS Evaluated
2026-06-15
NVD
EUVD
Affected Vendors & Products
Showing 9 associated CPEs
Vendor Product Version / Range
linux linux_kernel From 6.19 (inc) to 6.19.7 (exc)
linux linux_kernel 7.0
linux linux_kernel 7.0
linux linux_kernel From 6.13 (inc) to 6.18.17 (exc)
linux linux_kernel From 6.2 (inc) to 6.6.130 (exc)
linux linux_kernel From 6.7 (inc) to 6.12.77 (exc)
linux linux_kernel From 5.11 (inc) to 5.15.203 (exc)
linux linux_kernel From 5.16 (inc) to 6.1.167 (exc)
linux linux_kernel From 2.6.32 (inc) to 5.10.253 (exc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-UNKNOWN
Attack-Flow Graph
AI Quick Actions
Instant insights powered by AI
Executive Summary

This vulnerability exists in the Linux kernel's ems_usb driver, specifically in the ems_usb_read_bulk_callback() function. The issue arises because the function does not properly check the length of messages it processes. It uses actual_length, which is the size of the buffer passed to the driver, instead of transfer_buffer_length, which is the maximum buffer size set by the driver. This improper length checking can lead to parsing messages without ensuring they are large enough or without preventing overflow past the end of the buffer.

Impact Analysis

The vulnerability can lead to buffer overflows when parsing USB messages in the ems_usb driver. This could potentially cause memory corruption, crashes, or allow an attacker to execute arbitrary code within the kernel context, leading to system compromise or instability.

Chat Assistant
Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-23307. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70
EPSS Chart