CVE-2026-63795 Details
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.
A vulnerability in the Linux kernel's 9p file system handling can cause a use-after-free or reference count underflow. This issue arises in the 'p9_client_walk()' function when the 'clone' parameter is set to false. In this scenario, the file identifier (fid) being used can mistakenly reference an old fid, which is still expected to be valid by the caller. If the walk operation fails after the request has been sent, the error handling process unconditionally releases the reference to the old fid. This premature release can lead to the old fid being destroyed while it is still in use, causing a use-after-free condition. The vulnerability can be triggered when a multi-component walk is divided into separate 'p9_client_walk()' calls, and a subsequent non-cloning walk fails. A reproducer for this vulnerability, along with reference count warning logs, is available upon request.
The vulnerability has been fixed in the Linux kernel. Users should upgrade to the latest version.
Metrics
CVSS 4.0 Severity and Vector Strings:
No CVSS 4.0 data is available for this CVE.
CVSS 3.x Severity and Vector Strings:
No data available for CVSS Version 2.0 on this CVE.
No SSVC data is available for this CVE.
References to Advisories, Solutions, and Tools
By selecting these links, you will be leaving this site. These are references gathered from the official CVE record and are not endorsed by Volerion.
| URL | Source(s) | Tag(s) |
|---|---|---|
| https://git.kernel.org/stable/c/1a3860d46e3eb47dbd60339783cdad7904486b9f | kernel.org | Patch |
| https://git.kernel.org/stable/c/6dbe9443d9f5f7fb6d319a7b77108853ae6c6bea | kernel.org | Patch |
| https://git.kernel.org/stable/c/99c379ca1e221c3d75c7c804ebbf4e5ee37a3070 | kernel.org | Patch |
| https://git.kernel.org/stable/c/a61bdcba4f64c2f90d01461913f429ab151f1ca6 | kernel.org | Patch |
| https://git.kernel.org/stable/c/a7656d368265d085ac9bb85ab31b0cdb72ad8c38 | kernel.org | Patch |
| https://git.kernel.org/stable/c/b84f46179c806450b89821221ea5bd9a1698aba8 | kernel.org | Patch |
Weakness Enumeration
| CWE-ID | CWE Name | Source |
|---|---|---|
| CWE-416 | Use After Free | [email protected] |
Affected Products
| Product | Versions |
|---|---|
| linux linux kernel | >= 6.0, < 6.1.177 >= 6.2, < 6.6.144 >= 6.7, < 6.12.95 >= 6.13, < 6.18.38 >= 6.19, < 7.1.3 |
CPE
Remediation
| |
Change History
4 change records found show changes
| Date | Action | Recorded By |
|---|---|---|
| Aug 17, 2026 | CVE Modified | kernel.org |
| Jul 30, 2026 | Initial Analysis | [email protected] |
| Jul 20, 2026 | CVE Modified | kernel.org |
| Jul 19, 2026 | New CVE Received | kernel.org |