Skip to main content

Linux ksmbd EUVDEUVD-2026-81755

| CVE-2026-90162 HIGH
2026-09-17 Linux GHSA-x2qc-qfqc-6vmr
8.8
CVSS 3.1 · Vendor: Linux
View

Attack ChainAIDerived

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

  1. Access
    Authenticate to ksmbd share as SMB user
  2. Delivery
    Send batched SMB2_LOCK with failing element
  3. Exploit
    Race concurrent UNLOCK to free granted lock
  4. Execution
    Rollback loop dereferences freed object
  5. Persist
    UAF/double-free corrupts kernel memory
  6. Impact
    Kernel crash or memory corruption

Vulnerability Assessment

Exploitation Conditions

Requires the target to be running the Linux in-kernel SMB server (ksmbd, CONFIG_SMB_SERVER) with an exported share, and the attacker must be an authenticated SMB user (PR:L) able to issue SMB2_LOCK and UNLOCK requests on the same connection. Exploitation is further limited by a race window: the attacker must trigger a multi-element SMB2_LOCK batch that fails on a later element AND land a concurrent UNLOCK that frees a mid-batch granted lock before the granting thread's rollback loop executes - this timing dependency raises real complexity to AC:H. ksmbd is not enabled by default on most distributions (userspace Samba is far more common), which substantially narrows the exposed population.

Impact

The vendor CVSS 3.1 score of 8.8 (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H) overstates the practical severity on two fronts. First, this is a use-after-free/double-free triggered by a RACE: a concurrent UNLOCK request on the same connection must kfree() a granted ksmbd_lock object in the window before the granting thread walks its rollback_list. Winning that timing window makes real-world complexity AC:H, not AC:L, so my adjusted 3.1 score is closer to ~7.0. Second, the most reliable outcome of a UAF/double-free in kernel is a crash/oops (A:H), while the C:H/I:H claims (kernel memory disclosure or privilege escalation) are theoretically reachable but not demonstrated here - defensible as a ceiling but optimistic. Signals are otherwise weak: no EPSS score, no CISA KEV listing, and no public exploit code are present in the input, meaning this is 'no public exploit identified at time of analysis' rather than an actively exploited priority. The 'Information Disclosure' tag conflicts with the described mechanism (memory-corruption UAF/double-free) and should not be read as confirmed data exposure. Net: a genuine authenticated remote memory-corruption bug worth patching, but far less urgent than the 8.8 number alone implies given race-gated exploitation, niche ksmbd deployment, and no exploitation evidence.

Exploit ScenarioDerived

An authenticated SMB user connected to a Linux host running the in-kernel ksmbd server sends a crafted SMB2_LOCK request containing a multi-element lock array where a later element fails validation, then races a concurrent UNLOCK request on the same connection to free a mid-batch granted lock before the rollback loop runs. The resulting use-after-free and double-free on the ksmbd_lock and struct file_lock corrupt kernel memory, most reliably crashing the server (DoS) and potentially enabling further exploitation. No public proof-of-concept is identified in the provided data.

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

Kernel memory corruption in the Linux kernel's in-kernel SMB server (ksmbd) lets an authenticated SMB client trigger a use-after-free and double-free by racing a multi-element SMB2_LOCK batch against a concurrent UNLOCK on the same connection. The granting thread publishes mid-batch locks to the connection-wide and file-wide lock lists before the batch completes; when a later element fails, rollback walks a request-local list whose entry a concurrent UNLOCK has already kfree()'d, so both the ksmbd_lock and its struct file_lock are freed twice. The vendor rates this CVSS 3.1 8.8, but our assessment keeps AC:H because exploitation requires a narrow timing window and ksmbd is off by default on most distributions; no public exploit code and no confirmed active exploitation were identified at time of analysis, and authentication as a valid SMB user (PR:L) is a hard prerequisite.

RemediationAI

Vendor-released patch: apply the upstream fix commits (a1d26dfb32919088e3638dca01068df3c4507433 and 29f74f0f2e6df3b393b7b66e810136d0c64e3c59 from https://git.kernel.org/stable/c/a1d26dfb32919088e3638dca01068df3c4507433 and https://git.kernel.org/stable/c/29f74f0f2e6df3b393b7b66e810136d0c64e3c59), delivered by updating to a kernel containing them - EUVD records the patched versions as 7.2.6 and 7.3-rc1, with the 5.15 line among the affected branches, so confirm your distribution's backport before assuming you are covered. If the mainline fix is not yet in your stable kernel, the strongest compensating control is to stop running ksmbd: do not load the ksmbd module and build with CONFIG_SMB_SERVER=n, then serve the shares with userspace Samba - the trade-off is the loss of the in-kernel fast path and a required migration of share configuration, but it removes the vulnerable code path entirely. Blocking TCP 445 from untrusted networks reduces exposure but breaks legitimate SMB clients and does not help against an internal authenticated attacker. Because the flaw requires a valid SMB session (PR:L), tightening share-level permissions and auditing/limiting which accounts may mount shares narrows the attacker set, though it does not eliminate the race for authorized users; note that the EUVD tag 'Information Disclosure' understates the impact, since the primitive is a kernel use-after-free/double-free that can corrupt the file-lock subsystem rather than merely leak data.

Affected VersionsENISA

Linux patch: 0
Linux patch: 7.2.6
Linux 5.15
Linux e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 <a1d26dfb32919088e3638dca01068df3c4507433
Linux patch: 7.3-rc1
Linux e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9 <29f74f0f2e6df3b393b7b66e810136d0c64e3c59

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

ksmbd is the in-kernel SMB2/3 server (CONFIG_SMB_SERVER) that lets a Linux host export shares without userspace Samba, and it handles byte-range locks through smb2_lock(). For each element of an SMB2_LOCK request array, the driver calls vfs_lock_file(); on success the resulting ksmbd_lock is linked into both conn->lock_list (connection scope) and fp->lock_list (open-file scope) while still being tracked on a stack-local rollback_list. That double bookkeeping is the root cause: a lock is visible to the rest of the connection before the whole batch is known-good. If a later array element fails validation or execution, the code jumps to out: and unwinds rollback_list, but a concurrent SMB2 UNLOCK on the same connection may already have located the newly published lock and freed it, so the rollback path dereferences and frees an already-freed ksmbd_lock plus its underlying struct file_lock - classic CWE-416 use-after-free chained into CWE-415 double-free, with the freed struct file_lock pointing into the locking subsystem. The upstream fix defers publication to conn->lock_list and fp->lock_list until the entire request array has been processed successfully, keeping mid-batch grants reachable only from the request-local rollback_list and closing the race window. Affected CPE data identifies the Linux kernel itself (cpe:2.3:a:linux:linux), and the introducing commit is e2f34481b24db2fd634b5edb0a5bd0e4d38cc6e9.

Know when Ksmbd gets its next vulnerability

  • 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 8.8 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 7.5 HIGH

Race-gated UAF/double-free (AC:H) reachable by an authenticated SMB user (PR:L) over the network (AV:N); memory-corruption ceiling justifies C/I/A:H though crash (A:H) is the most reliable impact.

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

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

Attack Vector
Network
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
8.8 (HIGH)
Patch available
Sep 17, 2026 - 17:19 EUVD
CVE Published
Sep 17, 2026 - 16:06 cve.org
HIGH 8.8
CVE Published
Sep 17, 2026 - 16:06 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

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

ksmbd: defer publishing granted locks to prevent UAF/double-free race

In smb2_lock(), mid-batch granted locks are published to connection-wide (conn->lock_list) and file-wide (fp->lock_list) lists immediately upon vfs_lock_file() success, while also remaining tracked on the stack-local rollback_list.

If a subsequent element in the same SMB2_LOCK request array fails validation or execution, the thread jumps to out: and walks rollback_list to undo previously granted locks. However, because the granted lock was already published to conn->lock_list, a concurrent UNLOCK request on the same connection can find the lock object and kfree() it before the rollback loop executes.

When the granting thread subsequently walks rollback_list, it dereferences and frees the already-freed ksmbd_lock structure, resulting in a Use-After-Free and Double-Free (on both ksmbd_lock and struct file_lock).

Fix this by deferring the publication of granted locks to conn->lock_list and fp->lock_list until after the entire array of lock elements has been processed without error. Mid-batch grants remain tracked exclusively on the request-local rollback_list until the whole batch succeeds, eliminating the race window.

Executive ViewAI

Why It Matters

A memory-corruption flaw in the Linux kernel's built-in SMB server (ksmbd) allows a user who can already authenticate to an SMB share to crash or potentially take control of the underlying host by racing legitimate lock and unlock operations. The exposure is limited to systems where ksmbd has been deliberately enabled - it is off by default on most distributions - but where it is running, the affected host is typically a file server or NAS holding the organization's shared data, and a successful exploit would give an attacker kernel-level control over that system and everything it stores or connects to. Leadership should care because the affected asset class is central to file-sharing services, and remediation is a straightforward kernel update rather than an architectural change.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 89% exploitable
Prevalence
Medium
Linux kernel ubiquitous but in-kernel ksmbd SMB server is opt-in and niche
Data Quality
6 sources
Confidence: High

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
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

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

Vendor StatusVendor

SUSE

Severity: Important
Product Status
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
SUSE Linux Enterprise High Availability Extension 16.0 Affected

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