Critical severity · published Jul 19, 2026
CVE-2026-63795
9p: avoid putting oldfid in p9_client_walk() error path
10.0
CVSS
0.6%
EPSS
No
On KEV
Description
In the Linux kernel, the following vulnerability has been resolved:
9p: avoid putting oldfid in p9_client_walk() error path
When p9_client_walk() is called with clone set to false, fid aliases
oldfid. If the walk subsequently fails after the request has been sent,
the error path jumps to clunk_fid, which currently calls p9_fid_put(fid)
unconditionally.
This drops a reference to oldfid even though ownership of oldfid remains
with the caller. If this is the last reference, oldfid can be clunked and
destroyed while the caller still expects it to be valid. A later use or
put of oldfid can then trigger a use-after-free or refcount underflow.
Fix this by only putting fid in the clunk_fid error path when it does not
alias oldfid, matching the existing guard in the error path below.
This can be triggered when a multi-component walk is split into multiple
p9_client_walk() calls and a later non-cloning walk fails. A reproducer
and refcount warning logs are available on request.
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
None
Confidentiality
High
Integrity
High
Availability
High
Scope
Changed
Exploitation
Is it being used?
Exploit prediction (EPSS)0.6% · higher than 49% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
KE
Kernel · Linux
6.0 before 6.1.177; 6.2 before 6.6.144; 6.7 before 6.12.95; 6.13 before 6.18.38; 6.19 before 7.1.3 · source: NVD
LI
Linux · Linux
b48dbb998d70b7f48c2ec0a15c3cf47136808e4e before 99c379ca1e221c3d75c7c804ebbf4e5ee37a3070; b48dbb998d70b7f48c2ec0a15c3cf47136808e4e before b84f46179c806450b89821221ea5bd9a1698aba8; b48dbb998d70b7f48c2ec0a15c3cf47136808e4e before a61bdcba4f64c2f90d01461913f429ab151f1ca6; b48dbb998d70b7f48c2ec0a15c3cf47136808e4e before 6dbe9443d9f5f7fb6d319a7b77108853ae6c6bea; b48dbb998d70b7f48c2ec0a15c3cf47136808e4e before a7656d368265d085ac9bb85ab31b0cdb72ad8c38; b48dbb998d70b7f48c2ec0a15c3cf47136808e4e before 1a3860d46e3eb47dbd60339783cdad7904486b9f; +1 more · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-63795
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-63795
Patch
https://git.kernel.org/stable/c/1a3860d46e3eb47dbd60339783cdad7904486b9f
Patch
https://git.kernel.org/stable/c/6dbe9443d9f5f7fb6d319a7b77108853ae6c6bea
Patch
https://git.kernel.org/stable/c/99c379ca1e221c3d75c7c804ebbf4e5ee37a3070
Patch
https://git.kernel.org/stable/c/a61bdcba4f64c2f90d01461913f429ab151f1ca6
Patch
https://git.kernel.org/stable/c/a7656d368265d085ac9bb85ab31b0cdb72ad8c38
Patch
https://git.kernel.org/stable/c/b84f46179c806450b89821221ea5bd9a1698aba8
More from Kernel
9.8
CVE-2025-39682
tls: fix handling of zero-length records on the rx_list
8.8
CVE-2026-53266
netfilter: bridge: make ebt_snat ARP rewrite writable
8.8
CVE-2013-6282
Linux Kernel Improper Input Validation Vulnerability
8.4
CVE-2022-0185
Linux Kernel Heap-Based Buffer Overflow Vulnerability
8.4
CVE-2013-2094
Linux Kernel Privilege Escalation Vulnerability
