CVE Catalog

CVE-2026-98232

Low risk· EPSS 7%
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.18%

7th percentile - higher than 7% of all known CVEs

Summary

A vulnerability was found in the Linux kernel in scsi_cdl_enable() in the SCSI core. During scanning of USB devices that identify as ATA and support CDL, lengths returned by MODE SENSE can be invalid, leading to out-of-bounds stack read/write and disclosure of stack contents to the attacker.

Risk Assessment

An attacker can exploit this during automatic scanning of a plugged USB device, without requiring filesystem mount or userspace access to the block device. This can lead to kernel stack data leak or memory corruption, potentially enabling privilege escalation or system integrity compromise.

Recommendation

Apply the upstream patch that caps the available length to the buffer size, validates and consumes the mode header and block descriptor lengths before using the page, and requires five bytes to access the CDL field. Update the kernel to a version containing this fix.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: scsi: core: Validate MODE SENSE lengths in scsi_cdl_enable() scsi_cdl_enable() uses length fields returned by MODE SENSE to locate the ATA feature mode page in a 64-byte stack buffer. A target can report a total length shorter than its mode header and block descriptors. The unsigned subtraction used for the MODE SELECT length can wrap, and the separately computed buf_data can point beyond buf. During automatic scan, enable is false, so the read-modify-write of buf_data[4] can clear the low two bits of a target-selected out-of-bounds stack byte. scsi_mode_select() can then copy up to 64 bytes from outside the buffer into the outgoing MODE SELECT payload, disclosing stack contents to the target. This is reachable while scanning a USB storage device that identifies as an ATA device and advertises CDL support. No filesystem mount or userspace access to the block device is required. On upstream commit cee9395acd80 ("Linux 7.3-rc1"), a build-specific, one-vCPU QEMU/Raw Gadget proof using QEMU-only multi-UDC allocator sampling executed a fixed proof command inside the guest and created a UID-0-owned marker during automatic enumeration, with KASLR and NX enabled. The issue was independently found during security research at Drivesec S.r.l. Cap the available length to the buffer size. Validate and consume the mode header and block descriptor lengths before using the page, and require the five bytes needed to access the CDL field.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS