CVE-2026-52996 json
ksmbd: fix durable fd leak on ClientGUID mismatch in durable v2 open
published 2026-06-24 4 mo ago modified 2026-07-15 3 mo ago also EUVD-2026-38864
- cvss
- 5.5
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 6%
- public exploits
- 0
- none known
Summary
In the Linux kernel, the following vulnerability has been resolved:
ksmbd: fix durable fd leak on ClientGUID mismatch in durable v2 open
ksmbd_lookup_fd_cguid() returns a ksmbd_file with its refcount incremented via ksmbd_fp_get(). parse_durable_handle_context() in the DURABLE_REQ_V2 case properly releases this reference on every path inside the ClientGUID-match branch, either by calling ksmbd_put_durable_fd() or by transferring ownership to dh_info->fp for a successful reconnect. However, when an entry exists in the global file table with the same CreateGuid but a different ClientGUID, the code simply falls through to the new-open path without dropping the reference obtained from ksmbd_lookup_fd_cguid().
Per MS-SMB2 section 3.3.5.9.10 ("Handling the SMB2_CREATE_DURABLE_HANDLE_REQUEST_V2 Create Context"), the server MUST locate an Open whose Open.CreateGuid matches the request's CreateGuid AND whose Open.ClientGuid matches the ClientGuid of the connection that received the request. If no such Open is found, the server MUST continue with the normal open execution phase. A CreateGuid hit with a ClientGUID mismatch is therefore the "Open not found" case: proceeding with a new open is correct, but the reference obtained purely as a side effect of the lookup must not be leaked.
Repeated requests that hit this mismatch pin global_ft entries, prevent __ksmbd_close_fd() from ever running for the corresponding files, and defeat the durable scavenger, leading to long-lived resource leaks.
Release the reference in the mismatch path and clear dh_info->fp so subsequent logic does not mistake a non-matching lookup result for a reconnect target.
Patch / fix
- Linux Linux 6.6.141, 6.12.91, 6.18.33, 7.0.10, 7.1
- linux Debian 13 6.12.94-1
- linux Debian 14 7.0.10-1
debian advisories DEBIAN-CVE-2026-52996
- linux Ubuntu 26.04 LTS 7.0.0-28.28
- linux-aws Ubuntu 26.04 LTS 7.0.0-1009.9
- linux-gcp Ubuntu 26.04 LTS 7.0.0-1008.8
- linux-gke Ubuntu 26.04 LTS 7.0.0-1003.4
- linux-ibm Ubuntu 26.04 LTS 7.0.0-1010.10
- linux-azure Ubuntu 26.04 LTS 7.0.0-1010.10
- linux-raspi Ubuntu 26.04 LTS 7.0.0-1015.15
- linux-riscv Ubuntu 26.04 LTS 7.0.0-28.28.1
ubuntu advisories UBUNTU-CVE-2026-52996
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- git.kernel.org/stable/c/407b6e699ba8b45b72cc265eed8a1bc8a7191609 commit
- git.kernel.org/stable/c/f31beef633fbf2b5af7805fa187a10bcff1d4b49 commit
- git.kernel.org/stable/c/06f709d0e531f3e54d88665dd426be3998a774e6 commit
- git.kernel.org/stable/c/8c4a0ef19c8264c150833131af34541495832cd0 commit
- git.kernel.org/stable/c/804054d19886ac6628883d82410f6ee42a818664 commit
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2026-52996 updated
kernel: ksmbd: fix durable fd leak on ClientGUID mismatch in durable v2 open
-
Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more Red Hat Enterprise Linux 8 perf, kernel, bpftool, kernel-rt, kernel-core, kernel-tools, +29 more Red Hat Enterprise Linux 9 rv, perf, rtla, kernel, bpftool, libperf, +83 more Red Hat Enterprise Linux 10 kernelnot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
Exploit prediction
0.17% chance of exploitation in the next 30 days, higher than 6% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 5.5 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H |
Affected products
- Linux Linux
Classification
- Weakness
-
- CWE-401 Missing Release of Memory after Effective Lifetime
- Technology feeds
References
-
git.kernel.org
/stable/c/407b6e699ba8b45b72cc265eed8a1bc8a7191609
patch
-
git.kernel.org
/stable/c/f31beef633fbf2b5af7805fa187a10bcff1d4b49
patch
-
git.kernel.org
/stable/c/06f709d0e531f3e54d88665dd426be3998a774e6
patch
-
git.kernel.org
/stable/c/8c4a0ef19c8264c150833131af34541495832cd0
patch
-
git.kernel.org
/stable/c/804054d19886ac6628883d82410f6ee42a818664
patch
Sources
- CVE List CVE-2026-52996
- NVD CVE-2026-52996
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.