CVE-2026-90009: scsi: bsg: Fix TOCTOU in io_uring passthrough command setup

Published Sep 16, 2026
·
Updated

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

scsi: bsg: Fix TOCTOU in iouring passthrough command setup

scsibsguringcmd() reads bsguringcmd from the shared mmap'd SQE. Userspace can change a field after we check it and before we use it. requestlen is the sharp case: it can grow past sizeof(scmd->cmnd) after the bound check and overflow scmd->cmnd in copyfromuser().

READONCE() the SQE fields we check or use into locals before use.

Affected Software

1 affected component
Linux Linux kernel

Event History

Sep 16, 2026
CVE Published
via MITRE·10:33 AM
Data Sourced
via MITRE·10:33 AM
Description

Frequently Asked Questions

1

What access does an attacker need to exploit this issue?

An attacker needs the ability to submit io_uring passthrough commands through the SCSI BSG interface and modify fields in the shared memory-mapped submission queue entry while the kernel is processing it.

2

What is the security impact of the race condition?

The request_len field can be changed after its bounds check, allowing it to exceed the size of scmd->cmnd when copy_from_user() runs. This can overflow the kernel command buffer.

3

How is the vulnerability fixed?

The fix reads the relevant bsg_uring_cmd fields from the shared SQE once into local variables using READ_ONCE(), then uses those local values for validation and processing.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203