Skip to main content

Linux Kernel EUVDEUVD-2026-81985

| CVE-2026-90324 HIGH
2026-09-17 Linux GHSA-9f96-m8pp-q99r
7.8
CVSS 3.1 · Vendor: Linux
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain local ability to run ublk server
  2. Delivery
    Create/control ublk block device
  3. Exploit
    Submit request with out-of-bounds user buffer address
  4. Execution
    import_ubuf() fails, uninitialized iov_iter used
  5. Persist
    Kernel copy against undefined target
  6. Impact
    Kernel crash / memory corruption (DoS)

Vulnerability Assessment

Exploitation Conditions

Requires the ability to run or control a userspace ublk server bound to a ublk block device on the target host - i.e., ublk (CONFIG_BLK_DEV_UBLK) must be built/loaded and the actor must have permission to create/drive a ublk device (CAP_SYS_ADMIN by default, or a lower-privileged user only when the device was created with UBLK_F_UNPRIVILEGED_DEV). The trigger is a ublk-server-supplied user-buffer address range that lies outside the allowed user address space, causing import_ubuf() to fail. Limiting factors: no remote/network vector (local only), the ublk subsystem exists only in modern 6.x kernels and is not enabled/used on most general-purpose systems, and the primary observable outcome is a kernel crash rather than reliable code execution or data theft.

Impact

This is a Linux kernel ublk (userspace block driver) defensive-coding fix: the code failed to check the return value of import_ubuf(), so when a userspace ublk server supplied an address range outside the allowed user address space, an uninitialized struct iov_iter was passed onward to ublk_copy_user_pages(). The vendor CVSS 3.1 vector (AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H = 7.8) correctly captures the local, low-privilege, no-interaction attack surface, but the C:H/I:H/A:H impact is overstated: this is an error-path use-of-uninitialized-resource bug whose primary consequence is undefined behavior/crash (DoS), with only a marginal uninitialized-memory disclosure or misdirected-copy corruption angle. There is NO EPSS score, NO CISA KEV listing, and NO public exploit - consistent with no public exploit identified at time of analysis. There is no signal conflict on the network/local dimension (both CVSS vector and description agree this is a local ublk-server-triggered flaw), but the severity is inflated relative to the crash-primary technical reality. Realistic priority is moderate-to-low: patch on normal kernel-update cadence rather than as an emergency.

Exploit ScenarioDerived

A local user who controls (or can run) a ublk userspace server intentionally submits a block request describing a user-buffer address range that lies outside the permitted user address space, forcing import_ubuf() to fail; the kernel then operates on an uninitialized iov_iter, producing a copy against an undefined target that typically crashes the kernel and could, in the worst case, read/write unintended memory. No public proof-of-concept is known, and exploitation requires the ability to operate a ublk device rather than a remote network path.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 18, 2026

Missing return-value validation in the Linux kernel's ublk userspace block driver lets a local actor who can drive a ublk block device pass an uninitialized struct iov_iter into ublk_copy_user_pages(), because import_ubuf() failures are silently ignored. Exploitation requires the ublk subsystem (CONFIG_BLK_DEV_UBLK) to be built or loaded and the attacker to control a userspace ublk server bound to a ublk device - by default this means holding CAP_SYS_ADMIN, or any user if the device was created with UBLK_F_UNPRIVILEGED_DEV. The practical outcome is a kernel crash from dereferencing garbage iov_iter fields (with a possibility of limited kernel memory disclosure), not reliable remote code execution; there is no network vector, and no public exploit identified at time of analysis, though the affected component is narrow enough that most general-purpose hosts are unaffected. The vendor-published CVSS of 7.8 (AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H) rates confidentiality and integrity impact high, while independent assessment is more conservative (6.5-level, AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:H), treating availability loss from the crash as the dominant risk.

RemediationAI

Vendor-released patched kernel versions are Linux 6.18.52, Linux 7.2.6, and Linux 7.3-rc1 (or any later release containing the fix); distributions that backport stable patches should update to the kernel build carrying commits 5ac6019cb78e98c9608fda72726b36ddf8474dd7, 3831568792af75b6523fa93bb91560e29189cf55, or 0121c84adb6a4cd6f7560b5895bd88f9899bbc1f, and administrators should track their distribution's advisory rather than relying on the generic CPE entry. Until the kernel is updated, the most effective compensating control is to ensure the ublk driver is not available to untrusted code: verify CONFIG_BLK_DEV_UBLK is disabled at build time or unload/blacklist the ublk module (modprobe -r ublk, blacklist ublk), understanding that this disables all userspace block device functionality and any storage stack depending on it. Where ublk must remain in use, restrict device creation to fully trusted processes and avoid UBLK_F_UNPRIVILEGED_DEV so that only CAP_SYS_ADMIN holders can bind a server and supply buffers - this narrows the attack surface but does not fix the unchecked import_ubuf() path, and any privileged ublk server that can be induced to present an out-of-range user pointer still triggers the bug. Patching remains the only complete fix; note that no vendor mitigation other than the code change is documented in the available references, and monitoring for kernel oops/BUG splats originating in ublk_copy_user_pages() can serve as a detection signal.

Affected VersionsENISA

Linux patch: 7.3-rc1
Linux 981f95a571e3ca20a496c0b77dbf6b06039c6648 <5ac6019cb78e98c9608fda72726b36ddf8474dd7
Linux 981f95a571e3ca20a496c0b77dbf6b06039c6648 <3831568792af75b6523fa93bb91560e29189cf55
Linux 6.5
Linux patch: 6.18.52
Linux 981f95a571e3ca20a496c0b77dbf6b06039c6648 <0121c84adb6a4cd6f7560b5895bd88f9899bbc1f
Linux patch: 7.2.6
Linux patch: 0

Affected Packages

euvd linux no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

ublk is the Linux userspace block device driver (CONFIG_BLK_DEV_UBLK, introduced in the 6.x series) that lets an unprivileged-or-privileged userspace server implement a block device by sharing memory with the kernel. When the kernel mediates I/O between the ublk server and the block layer, it converts server-supplied user buffers into an iterator via import_ubuf(); that struct iov_iter is then consumed by ublk_copy_user_pages(), which walks the iterator to pin and copy pages. import_ubuf() returns nonzero when the supplied user address range falls outside the allowed user address space (for example a bogus or out-of-bounds pointer from the ublk server), but the vulnerable code path discarded that return value and continued with a stack-local struct iov_iter that had never been initialized. Consuming uninitialized fields (iov_base, iov_len, iterator type, page arrays) leads to arbitrary kernel page access attempts, memory corruption of kernel state, or an immediate fault in kernel context. The root-cause class is an unchecked function return value combined with use of an uninitialized variable (roughly CWE-252 unchecked return value / CWE-457 use of uninitialized variable; no CWE was assigned in the source data). No CPE entries beyond the generic cpe:2.3:a:linux:linux:*:*:*:*:*:*:*:* are available, so affected systems must be identified by kernel version and by whether ublk is enabled and reachable.

Know when the next one hits your stack

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (Linux) PRIMARY 7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 6.6 MEDIUM

Local ublk-server trigger (AV:L), deliberately supplied bad address makes it reliably reproducible (AC:L), needs ublk device control (PR:L); crash-primary (A:H) with only marginal uninitialized-memory leak/misdirected-copy (C:L/I:L).

3.1 AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:H
4.0 AV:L/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:H/SC:N/SI:N/SA:N
SUSE 5.5 MEDIUM
AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Red Hat 5.5 MEDIUM

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

4
CVSS changed
Sep 18, 2026 - 18:22 NVD
7.8 (HIGH)
Patch available
Sep 17, 2026 - 17:19 EUVD
CVE Published
Sep 17, 2026 - 16:08 cve.org
HIGH 7.8
CVE Published
Sep 17, 2026 - 16:08 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

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

ublk: check import_ubuf() return value

import_ubuf() can fail if the address range (provided by the userspace ublk server) is outside the allowed user address space. Return that 0 bytes were copied if import_ubuf() fails rather than passing an uninitialized struct iov_iter to ublk_copy_user_pages().

Executive ViewAI

Why It Matters

The Linux kernel's ublk userspace block driver contains a high-severity validation flaw (CVE-2026-90324) that a local, authenticated user can exploit to crash the kernel and potentially disclose limited kernel memory on systems where the ublk subsystem is enabled. Organizations running Linux hosts with ublk built or loaded-especially those granting CAP_SYS_ADMIN or using unprivileged ublk devices (UBLK_F_UNPRIVILEGED_DEV)-should care because a kernel crash can disrupt service availability, though there is no network attack vector and most general-purpose hosts are unaffected. No public exploit identified at time of analysis; patch available per vendor advisory and should be applied promptly.

Business Impact: Medium
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 90% exploitable
Prevalence
Low
ublk userspace-block-driver subsystem is niche, present only in modern (6.x) kernels
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
None
System Exposure· derived
Small
Automatable· derived
No
Human Impact
Medium

Priority Score

39
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +39
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
openSUSE Tumbleweed Fixed
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy