USB: serial: kl5kusb105: fix bulk-out buffer overflow
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | |||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Linux | Linux | unaffected |
|
|||||||||||||||||||||||||||||||||
| Linux | Linux | affected |
|
Configuration 1 [-]
|
No data.
| Vendor | Product | Versions | ||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Linux | Linux Kernel |
|
||||||||||||||||||||||||||||||||||||||||||||
| Linux | Linux Kernel |
|
| Source | ID | Title |
|---|---|---|
Debian DLA |
DLA-4664-1 | linux security update |
Debian DLA |
DLA-4665-1 | linux security update |
Debian DLA |
DLA-4671-1 | linux-6.1 security update |
Ubuntu USN |
USN-8726-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-8727-1 | Linux kernel (OEM) vulnerabilities |
Ubuntu USN |
USN-8728-1 | Linux kernel (GCP) vulnerabilities |
Ubuntu USN |
USN-8760-1 | Linux kernel (NVIDIA) vulnerabilities |
Ubuntu USN |
USN-8726-2 | Linux kernel (Raspberry Pi) vulnerabilities |
Ubuntu USN |
USN-8726-3 | Linux kernel (IBM) vulnerabilities |
Ubuntu USN |
USN-8800-1 | Linux kernel (NVIDIA BaseOS) vulnerabilities |
Ubuntu USN |
USN-8760-2 | Linux kernel (NVIDIA) vulnerabilities |
Ubuntu USN |
USN-8726-4 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-8728-2 | Linux kernel (Azure) vulnerabilities |
Ubuntu USN |
USN-8728-3 | Linux kernel (Oracle) vulnerabilities |
Ubuntu USN |
USN-8876-1 | Linux kernel (Azure CVM) vulnerabilities |
Ubuntu USN |
USN-8875-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-8877-1 | Linux kernel (GCP) vulnerabilities |
Ubuntu USN |
USN-8878-1 | Linux kernel (GCP) vulnerabilities |
Ubuntu USN |
USN-8879-1 | Linux kernel (Oracle) vulnerabilities |
Ubuntu USN |
USN-8903-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-8904-1 | Linux kernel (Azure) vulnerabilities |
Ubuntu USN |
USN-8905-1 | Linux kernel (GCP) vulnerabilities |
Ubuntu USN |
USN-8906-1 | Linux kernel (IBM) vulnerabilities |
Ubuntu USN |
USN-8875-2 | Linux kernel (NVIDIA) vulnerabilities |
Ubuntu USN |
USN-8903-2 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-8905-2 | Linux kernel (GCP) vulnerabilities |
Ubuntu USN |
USN-9025-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-9029-1 | Linux kernel (Raspberry Pi) vulnerabilities |
Ubuntu USN |
USN-9066-1 | Linux kernel (HWE) vulnerabilities |
No CVSS v4.0
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.148% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
cvssV3_1
|
cvssV3_1
|
| Type | Values Removed | Values Added |
|---|---|---|
| Weaknesses | CWE-122 |
| Type | Values Removed | Values Added |
|---|---|---|
| Weaknesses | CWE-787 | |
| References |
| |
| Metrics |
threat_severity
|
cvssV3_1
|
| Type | Values Removed | Values Added |
|---|---|---|
| Weaknesses | CWE-122 |
| Type | Values Removed | Values Added |
|---|---|---|
| Description | In the Linux kernel, the following vulnerability has been resolved: USB: serial: kl5kusb105: fix bulk-out buffer overflow klsi_105_prepare_write_buffer() is called by the generic write path with the bulk-out buffer and its size (bulk_out_size, 64 bytes). It stores a two-byte length header at the start of the buffer and copies the payload from the write fifo starting at buf + KLSI_HDR_LEN, but passes the full buffer size as the number of bytes to copy: count = kfifo_out_locked(&port->write_fifo, buf + KLSI_HDR_LEN, size, &port->lock); When the fifo holds at least size bytes, size bytes are copied starting two bytes into the size-byte buffer, writing KLSI_HDR_LEN bytes past its end. Copy at most size - KLSI_HDR_LEN bytes instead, leaving room for the header as safe_serial already does. Writing bulk_out_size or more bytes to the tty triggers a slab out-of-bounds write, observed with KASAN by emulating the device with dummy_hcd and raw-gadget: BUG: KASAN: slab-out-of-bounds in kfifo_copy_out+0x83/0xc0 Write of size 64 at addr ffff888112c62202 by task python3 kfifo_copy_out klsi_105_prepare_write_buffer [kl5kusb105] usb_serial_generic_write_start [usbserial] Allocated by task 139: usb_serial_probe [usbserial] The buggy address is located 2 bytes inside of allocated 64-byte region The out-of-bounds write no longer occurs with this change applied. | |
| Title | USB: serial: kl5kusb105: fix bulk-out buffer overflow | |
| First Time appeared |
Linux
Linux linux Kernel |
|
| CPEs | cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* | |
| Vendors & Products |
Linux
Linux linux Kernel |
|
| References |
|
|