CVE-2026-63800
Awaiting Analysis
Awaiting Analysis - Queue
Use-After-Free in Linux Kernel pNFS
Vulnerability report for CVE-2026-63800, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.
Publication date: 2026-07-19
Last updated on: 2026-07-29
Assigner: kernel.org
Description
Description
In the Linux kernel, the following vulnerability has been resolved:
pNFS: Fix use-after-free in pnfs_update_layout()
When hitting the NFS_LAYOUT_RETURN branch in pnfs_update_layout(),
the code calls pnfs_prepare_to_retry_layoutget(lo). If it succeeds,
pnfs_put_layout_hdr(lo) is called before trace_pnfs_update_layout(),
which still references 'lo'. This results in a use-after-free when the
tracepoint accesses lo's fields.
Fix this by moving the tracepoint call before pnfs_put_layout_hdr(lo).
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| linux | linux_kernel | 5.11 |
| linux | linux_kernel | 5.11 |
| linux | linux_kernel | 5.11 |
| linux | linux_kernel | 5.11 |
| linux | linux_kernel | 5.11 |
| linux | linux_kernel | From 5.4.91 (inc) to 5.5 (exc) |
| linux | linux_kernel | From 5.16 (inc) to 6.1.177 (exc) |
| linux | linux_kernel | From 6.2 (inc) to 6.6.144 (exc) |
| linux | linux_kernel | From 6.7 (inc) to 6.12.95 (exc) |
| linux | linux_kernel | From 6.13 (inc) to 6.18.38 (exc) |
| linux | linux_kernel | From 6.19 (inc) to 7.1.3 (exc) |
| linux | linux_kernel | From 5.10.9 (inc) to 5.10.260 (exc) |
| linux | linux_kernel | From 5.11.1 (inc) to 5.15.211 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-416 | The product reuses or references memory after it has been freed. At some point afterward, the memory may be allocated again and saved in another pointer, while the original pointer references a location somewhere within the new allocation. Any operations using the original pointer are no longer valid because the memory "belongs" to the code that operates on the new pointer. |