CVE-2026-90176
What it is
In the Linux kernel, the following vulnerability has been resolved: ksmbd: Do not skip lock checks for single-byte ranges check_lock_range() uses inclusive ranges. Its callers pass the end offset as start + length - 1, so start == end represents a valid single-byte range rather than an empty range. The start == end shortcut therefore skips mandatory byte-range lock checks for one-byte reads, writes, copychunk operations and one-byte truncate ranges. A conflicting lock covering that byte is not checked and the operation is allowed to proceed. Remove the shortcut. The truncate size == inode->i_size case is already handled by only calling check_lock_range() when the new size differs from the current file size.
At a glance
- Exploitability
- Can be exploited over the network with a low-privilege account. High risk of data exposure, data tampering.
- Exploit odds
- 0.5% chance of exploitation in the next 30 days (EPSS).
- Fix
- No patch or advisory is linked yet. Look at mitigations or restrict exposure.
Timeline
- ReservedThe CVE id was reserved by its CNA
- PublishedDisclosed publicly on CVE.org and NVD
- Last updatedMost recent change to the record
Details
- Published
- Last modified
- Exploit probability
- 0.5% · EPSS, next 30 days
- Record status
- Received
Attack profile CVSS 3.1 · 8.1
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- Low
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- High
- Integrity
- High
- Availability
- None
Raw vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
References
- https://git.kernel.org/stable/c/07a9e289ff7edcc004f58952405f8a65c4e37512
- https://git.kernel.org/stable/c/84c2d8e807ac489f5c91769293fb15dfdae8bae8
- https://git.kernel.org/stable/c/993e0158331d37c04da18efe551b5e1e35fb3078
- https://git.kernel.org/stable/c/a89cc145832e81c32199d4ca2e1ea8bd51ed601d
- https://git.kernel.org/stable/c/d40c24634fe077a0dc91fd11fccf44ce12b454d5
- https://git.kernel.org/stable/c/f751d6e39d4c937c45f8fedc66699aa7d2d52288