Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to ksmbd SMB session
-
DeliveryBind channel via multichannel SESSION_SETUP
-
ExploitReauthenticate to clear conn->binding
-
ExecutionDisconnect leaving stale channel on session list
-
PersistTrigger owner connection teardown
-
ImpactUAF write into freed ksmbd_conn (kernel memory corruption)
Vulnerability Assessment
| Exploitation Conditions | Requires that the target Linux host has the ksmbd in-kernel SMB server (CONFIG_SMB_SERVER) built and actively serving, and that the attacker can establish an authenticated SMB3 session supporting multichannel (PR:L). The concrete trigger stated in the description: a connection binds a channel into another session's ksmbd_chann_list, then conn->binding is cleared - either by the binding SESSION_SETUP completing, a reauthentication on a bound channel, or a new SessionId==0 SESSION_SETUP - so the channel is left behind on disconnect; the subsequent owner teardown then dereferences the stale channel. Limiting factors: ksmbd is not enabled in most deployments, valid SMB credentials are needed, and SMB3 multichannel must be in use, all of which sharply narrow realistic exposure beyond the raw CVSS. |
| Impact | Signals are consistent in pointing to a real-but-not-urgent issue. The input CVSS is 8.8 (AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H) and the vuln.today decision label is 'this_week', yet EPSS is only 0.25% (16th percentile) and there is no CISA KEV listing - no public exploit identified at time of analysis (the only references are the kernel stable fix commits, not PoC code). The high CVSS is driven by the kernel-level memory-corruption impact (a use-after-free write into a freed struct ksmbd_conn, plus a parallel stale-channel walk via /proc in show_proc_session()), but the input vector's AC:L understates the trigger: the description requires a specific SMB3 multichannel sequence (bind a channel into another session, clear conn->binding via reauthentication or a new SessionId==0 setup, then disconnect), which is a non-trivial orchestration rather than a single crafted packet. Crucially, exploitation presupposes the in-kernel ksmbd SMB server is compiled in and running and that the attacker holds an authenticated SMB session (PR:L) - conditions absent from the large majority of Linux deployments. Tag conflict to note: the input Tag 'Information Disclosure' does not match the described primary defect, which is a UAF write and a session/memory leak (memory corruption / potential DoS), not disclosure. Net: a legitimately high-severity kernel flaw where real-world risk is bounded by the uncommon ksmbd deployment footprint and the authenticated, multichannel-specific trigger. |
| Exploit ScenarioDerived | An attacker with valid credentials to a Linux host running the ksmbd in-kernel SMB server opens an SMB3 multichannel session, binds a channel into another session's channel list, then issues a reauthenticating or new SESSION_SETUP that clears conn->binding, and disconnects - leaving a stale channel whose conn pointer references freed memory. When the owning connection later tears down, the kernel performs a use-after-free write into the freed ksmbd_conn, corrupting kernel memory. No public exploit code has been identified; this is an authenticated, local-network-service attack path. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 24, 2026
Use-after-free in the Linux kernel's ksmbd SMB server lets an authenticated SMB3 client that has bound a multichannel connection leave a stale channel pointing at a freed struct ksmbd_conn when that connection disconnects, so later session teardown or a /proc session walk dereferences freed memory. Exploitation requires ksmbd (CONFIG_SMB_SERVER) to be built and actively serving, valid SMB credentials, and SMB3 multichannel in use, which narrows realistic exposure; the assessed vector is AC:H/PR:L. EPSS is 0.25% (16th percentile), no KEV confirmation appears in the supplied intelligence, and no public exploit was identified at time of analysis; priority is this_week.
RemediationAI
Apply the upstream stable fixes referenced for CVE-2026-98870: f8200bb4994e65a2e5c5b314789eeae39078619d, b10665730fbf6b5e45fe422badcbbc3f0df96ef5, a15cae16f4432a5ad919ee633e31b07178492955, 9cd6d714d3ca0cff296542dc989696884e41970f, and b145f9b56c87f9c23ad5464ab0844dbc1de12b36, available at https://git.kernel.org/stable/c/<commit>, and run a kernel release that contains the relevant branch fix; EUVD lists the 5.15.222 < 5.16 range. Patch availability is reported as vendor-available, but the supplied references are upstream stable commits rather than a tagged advisory enumerating per-branch version numbers. If updating is not immediately possible, stop or unload ksmbd and do not expose the in-kernel SMB server; the trade-off is loss of SMB file-serving functionality. No other vendor-stated workaround is provided.
Affected VersionsENISA
Affected Packages
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 Linux kernel's in-kernel SMB3 server, enabled via CONFIG_SMB_SERVER. SMB3 multichannel allows a client connection to bind a channel into another session's channel list. The fix targets ksmbd_sessions_deregister(), which previously removed a connection's channels from other sessions only while conn->binding was set. That flag is transient: it is cleared when a binding SESSION_SETUP completes, on reauthentication over a bound channel, or on a new SessionId==0 SESSION_SETUP. If the connection disconnects after the flag is cleared, its channel remains on the owner session's ksmbd_chann_list with chann->conn pointing at the now-freed struct ksmbd_conn. When the owning connection tears down, the loop walks the stale channel and calls ksmbd_conn_set_exiting(chann->conn), a use-after-free write; show_proc_session() also walks the stale channel through /proc. The patch removes the conn->binding gate so a connection always removes its channels from every session on teardown. The trigger is as described in the source material, and no CWE identifier is supplied.
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
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Requires an authenticated SMB session (PR:L) and orchestrating multichannel binding then conn->binding clearing before teardown (AC:H); the kernel use-after-free write yields high C/I/A.
Primary rating from Vendor (Linux).
CVSS VectorVendor: Linux
Lifecycle Timeline
4DescriptionCVE.org
In the Linux kernel, the following vulnerability has been resolved:
ksmbd: remove stale channels from all sessions on teardown
ksmbd_sessions_deregister() removes a connection's channels from other sessions' channel lists only while conn->binding is still set:
if (conn->binding) { hash_for_each_safe(sessions_table, ...) ksmbd_chann_del(conn, sess); }
conn->binding is a transient flag: it is cleared once a binding SESSION_SETUP completes, and also by a subsequent non-binding SESSION_SETUP on the same connection (a reauthentication on a bound channel, or a new SessionId==0 setup). A connection that has bound a channel into another session's ksmbd_chann_list and then clears conn->binding leaves that channel behind when it disconnects: the channel, whose chann->conn points at the now freed struct ksmbd_conn, stays on the owner session's list.
When the owning connection later tears down, the second loop dereferences the stale channel:
xa_for_each(&sess->ksmbd_chann_list, chann_id, chann) if (chann->conn != conn) ksmbd_conn_set_exiting(chann->conn); /* freed */
which is a use-after-free write into the freed ksmbd_conn (the same stale channel is also walked by show_proc_session() through /proc). The session is leaked as well, because its channel list never empties.
Remove the conn->binding gate so a connection always removes its channels from every session on teardown.
Executive ViewAI
A high-severity use-after-free vulnerability in the Linux kernel's ksmbd SMB server (CVE-2026-98870) could allow authenticated attackers with valid SMB credentials to crash or potentially compromise systems running ksmbd with SMB3 multichannel. While exploitation requires specific conditions and no public exploit is currently known, the risk is non-trivial for organizations exposing SMB file services, as a successful attack could lead to service disruption or arbitrary code execution.
Apply vendor patch.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
EUVD-2026-108716
GHSA-wr5r-399q-pwfr
NVD
CVE.org
EPSS
Exploit-DB