CVE-2026-63795 (GCVE-0-2026-63795)

Vulnerability from cvelistv5 – Published: 2026-07-19 12:02 – Updated: 2026-07-20 13:40
VLAI
Title
9p: avoid putting oldfid in p9_client_walk() error path
Summary
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.
Assigner
Impacted products
Vendor Product Version
Linux Linux Affected: b48dbb998d70b7f48c2ec0a15c3cf47136808e4e , < 99c379ca1e221c3d75c7c804ebbf4e5ee37a3070 (git)
Affected: b48dbb998d70b7f48c2ec0a15c3cf47136808e4e , < b84f46179c806450b89821221ea5bd9a1698aba8 (git)
Affected: b48dbb998d70b7f48c2ec0a15c3cf47136808e4e , < a61bdcba4f64c2f90d01461913f429ab151f1ca6 (git)
Affected: b48dbb998d70b7f48c2ec0a15c3cf47136808e4e , < 6dbe9443d9f5f7fb6d319a7b77108853ae6c6bea (git)
Affected: b48dbb998d70b7f48c2ec0a15c3cf47136808e4e , < a7656d368265d085ac9bb85ab31b0cdb72ad8c38 (git)
Affected: b48dbb998d70b7f48c2ec0a15c3cf47136808e4e , < 1a3860d46e3eb47dbd60339783cdad7904486b9f (git)
Create a notification for this product.
Linux Linux Affected: 6.0
Unaffected: 0 , < 6.0 (semver)
Unaffected: 6.1.177 , ≤ 6.1.* (semver)
Unaffected: 6.6.144 , ≤ 6.6.* (semver)
Unaffected: 6.12.95 , ≤ 6.12.* (semver)
Unaffected: 6.18.38 , ≤ 6.18.* (semver)
Unaffected: 7.1.3 , ≤ 7.1.* (semver)
Unaffected: 7.2-rc1 , ≤ * (original_commit_for_fix)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "net/9p/client.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "99c379ca1e221c3d75c7c804ebbf4e5ee37a3070",
              "status": "affected",
              "version": "b48dbb998d70b7f48c2ec0a15c3cf47136808e4e",
              "versionType": "git"
            },
            {
              "lessThan": "b84f46179c806450b89821221ea5bd9a1698aba8",
              "status": "affected",
              "version": "b48dbb998d70b7f48c2ec0a15c3cf47136808e4e",
              "versionType": "git"
            },
            {
              "lessThan": "a61bdcba4f64c2f90d01461913f429ab151f1ca6",
              "status": "affected",
              "version": "b48dbb998d70b7f48c2ec0a15c3cf47136808e4e",
              "versionType": "git"
            },
            {
              "lessThan": "6dbe9443d9f5f7fb6d319a7b77108853ae6c6bea",
              "status": "affected",
              "version": "b48dbb998d70b7f48c2ec0a15c3cf47136808e4e",
              "versionType": "git"
            },
            {
              "lessThan": "a7656d368265d085ac9bb85ab31b0cdb72ad8c38",
              "status": "affected",
              "version": "b48dbb998d70b7f48c2ec0a15c3cf47136808e4e",
              "versionType": "git"
            },
            {
              "lessThan": "1a3860d46e3eb47dbd60339783cdad7904486b9f",
              "status": "affected",
              "version": "b48dbb998d70b7f48c2ec0a15c3cf47136808e4e",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "net/9p/client.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.0"
            },
            {
              "lessThan": "6.0",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.1.*",
              "status": "unaffected",
              "version": "6.1.177",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.6.*",
              "status": "unaffected",
              "version": "6.6.144",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.12.*",
              "status": "unaffected",
              "version": "6.12.95",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.38",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.3",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.2-rc1",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.1.177",
                  "versionStartIncluding": "6.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.6.144",
                  "versionStartIncluding": "6.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.12.95",
                  "versionStartIncluding": "6.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.38",
                  "versionStartIncluding": "6.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.3",
                  "versionStartIncluding": "6.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2-rc1",
                  "versionStartIncluding": "6.0",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\n9p: avoid putting oldfid in p9_client_walk() error path\n\nWhen p9_client_walk() is called with clone set to false, fid aliases\noldfid. If the walk subsequently fails after the request has been sent,\nthe error path jumps to clunk_fid, which currently calls p9_fid_put(fid)\nunconditionally.\n\nThis drops a reference to oldfid even though ownership of oldfid remains\nwith the caller. If this is the last reference, oldfid can be clunked and\ndestroyed while the caller still expects it to be valid. A later use or\nput of oldfid can then trigger a use-after-free or refcount underflow.\n\nFix this by only putting fid in the clunk_fid error path when it does not\nalias oldfid, matching the existing guard in the error path below.\n\nThis can be triggered when a multi-component walk is split into multiple\np9_client_walk() calls and a later non-cloning walk fails. A reproducer\nand refcount warning logs are available on request."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 10,
            "baseSeverity": "CRITICAL",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H",
            "version": "3.1"
          }
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-07-20T13:40:06.613Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/99c379ca1e221c3d75c7c804ebbf4e5ee37a3070"
        },
        {
          "url": "https://git.kernel.org/stable/c/b84f46179c806450b89821221ea5bd9a1698aba8"
        },
        {
          "url": "https://git.kernel.org/stable/c/a61bdcba4f64c2f90d01461913f429ab151f1ca6"
        },
        {
          "url": "https://git.kernel.org/stable/c/6dbe9443d9f5f7fb6d319a7b77108853ae6c6bea"
        },
        {
          "url": "https://git.kernel.org/stable/c/a7656d368265d085ac9bb85ab31b0cdb72ad8c38"
        },
        {
          "url": "https://git.kernel.org/stable/c/1a3860d46e3eb47dbd60339783cdad7904486b9f"
        }
      ],
      "title": "9p: avoid putting oldfid in p9_client_walk() error path",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-63795",
    "datePublished": "2026-07-19T12:02:04.069Z",
    "dateReserved": "2026-07-19T07:54:57.012Z",
    "dateUpdated": "2026-07-20T13:40:06.613Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-63795",
      "date": "2026-07-21",
      "epss": "0.00483",
      "percentile": "0.38608"
    },
    "microsoft_vex": {
      "current_release_date": "2026-07-20T14:46:53.000Z",
      "cve": "CVE-2026-63795",
      "id": "msrc_CVE-2026-63795",
      "initial_release_date": "2026-07-20T01:08:03.000Z",
      "product_status:known_affected": "1",
      "source": "Microsoft CSAF VEX",
      "status": "final",
      "title": "9p: avoid putting oldfid in p9_client_walk() error path",
      "url": "https://msrc.microsoft.com/csaf/vex/2026/msrc_cve-2026-63795.json",
      "version": "2"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-63795\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-07-19T12:16:51.910\",\"lastModified\":\"2026-07-20T15:16:46.193\",\"vulnStatus\":\"Received\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\n9p: avoid putting oldfid in p9_client_walk() error path\\n\\nWhen p9_client_walk() is called with clone set to false, fid aliases\\noldfid. If the walk subsequently fails after the request has been sent,\\nthe error path jumps to clunk_fid, which currently calls p9_fid_put(fid)\\nunconditionally.\\n\\nThis drops a reference to oldfid even though ownership of oldfid remains\\nwith the caller. If this is the last reference, oldfid can be clunked and\\ndestroyed while the caller still expects it to be valid. A later use or\\nput of oldfid can then trigger a use-after-free or refcount underflow.\\n\\nFix this by only putting fid in the clunk_fid error path when it does not\\nalias oldfid, matching the existing guard in the error path below.\\n\\nThis can be triggered when a multi-component walk is split into multiple\\np9_client_walk() calls and a later non-cloning walk fails. A reproducer\\nand refcount warning logs are available on request.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"net/9p/client.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"b48dbb998d70b7f48c2ec0a15c3cf47136808e4e\",\"lessThan\":\"99c379ca1e221c3d75c7c804ebbf4e5ee37a3070\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b48dbb998d70b7f48c2ec0a15c3cf47136808e4e\",\"lessThan\":\"b84f46179c806450b89821221ea5bd9a1698aba8\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b48dbb998d70b7f48c2ec0a15c3cf47136808e4e\",\"lessThan\":\"a61bdcba4f64c2f90d01461913f429ab151f1ca6\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b48dbb998d70b7f48c2ec0a15c3cf47136808e4e\",\"lessThan\":\"6dbe9443d9f5f7fb6d319a7b77108853ae6c6bea\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b48dbb998d70b7f48c2ec0a15c3cf47136808e4e\",\"lessThan\":\"a7656d368265d085ac9bb85ab31b0cdb72ad8c38\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"b48dbb998d70b7f48c2ec0a15c3cf47136808e4e\",\"lessThan\":\"1a3860d46e3eb47dbd60339783cdad7904486b9f\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"net/9p/client.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"6.0\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"6.0\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.1.177\",\"lessThanOrEqual\":\"6.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.6.144\",\"lessThanOrEqual\":\"6.6.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.12.95\",\"lessThanOrEqual\":\"6.12.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"6.18.38\",\"lessThanOrEqual\":\"6.18.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.1.3\",\"lessThanOrEqual\":\"7.1.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.2-rc1\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H\",\"baseScore\":10.0,\"baseSeverity\":\"CRITICAL\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"NONE\",\"scope\":\"CHANGED\",\"confidentialityImpact\":\"HIGH\",\"integrityImpact\":\"HIGH\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":3.9,\"impactScore\":6.0}]},\"references\":[{\"url\":\"https://git.kernel.org/stable/c/1a3860d46e3eb47dbd60339783cdad7904486b9f\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/6dbe9443d9f5f7fb6d319a7b77108853ae6c6bea\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/99c379ca1e221c3d75c7c804ebbf4e5ee37a3070\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/a61bdcba4f64c2f90d01461913f429ab151f1ca6\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/a7656d368265d085ac9bb85ab31b0cdb72ad8c38\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"},{\"url\":\"https://git.kernel.org/stable/c/b84f46179c806450b89821221ea5bd9a1698aba8\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\"}]}}",
    "redhat_vex": {
      "aggregate_severity": "Important",
      "current_release_date": "2026-07-20T15:22:17+00:00",
      "cve": "CVE-2026-63795",
      "id": "CVE-2026-63795",
      "initial_release_date": "2026-07-19T00:00:00+00:00",
      "product_status:known_not_affected": "260",
      "product_status:under_investigation": "14",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: 9p: avoid putting oldfid in p9_client_walk() error path",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-63795.json",
      "version": "3"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…