ZeroHour

CVE-2026-90010

mass

Buffer overrun in Linux kernel SCSI bsg io_uring sense-data copy

CVSS 3.1
7.8 high
EPSS
Published
()
Modified
AI analysis

The Linux kernel's SCSI bsg driver overruns the user-supplied response buffer when completing io_uring passthrough requests: the completion path copied the reported sense length into the user's buffer without capping the copy to the user-declared max_response_len. A local user who can submit commands to a bsg device can trigger this by issuing a command that returns SCSI sense data longer than their response buffer, since after valid sense the midlayer sets sense_len to the real length, up to SCSI_SENSE_BUFFERSIZE. The overrun writes past the end of the caller's buffer, giving a local attacker potential denial of service, memory corruption, or disclosure per the CVSS 7.8 rating (C:H/I:H/A:H, local, low privileges). Any Linux system running a kernel with io_uring bsg passthrough support and SCSI devices present is affected, though exploitation requires access to the /dev/bsg device node, which distributions typically restrict to root or the disk group. No public proof-of-concept or in-the-wild exploitation is currently known, and the issue is not in CISA's KEV catalog.

What to do: Update to a kernel build that includes the upstream fix 'scsi: bsg: Cap io_uring sense copy to max_response_len' as it lands in your distribution's security updates. Until patched, restrict write/open access to /dev/bsg/* device nodes to trusted root or disk-group users and audit udev rules for looser permissions; where supported, kernel.io_uring_disabled can be set to block unprivileged io_uring use as a stopgap. Check whether any local service accounts or containers can reach bsg device nodes on affected hosts.

Affected
Linux kernel (SCSI bsg subsystem, io_uring passthrough completion path)
Estimated exposure
masshundreds of millions of Linux installations carry the affected bsg/io_uring code path (mainstream distro kernels on SCSI/SATA-equipped servers and desktops) — The bsg driver and io_uring are shipped in standard kernels across all major distributions and most systems with SCSI-family storage expose /dev/bsg nodes, though only accounts permitted to open those nodes can actually trigger the flaw.

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

In the Linux kernel, the following vulnerability has been resolved: scsi: bsg: Cap io_uring sense copy to max_response_len Completion copied scmd->sense_len to the user response buffer without honoring max_response_len. After a valid sense, the midlayer sets sense_len to the real length (up to SCSI_SENSE_BUFFERSIZE), so a smaller user buffer was overrun.

Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

In the news

No ingested article mentions this CVE yet.