GHSA-Q3V2-68CR-QHRM

Vulnerability from github – Published: 2026-07-19 18:31 – Updated: 2026-07-20 15:32
VLAI
Details

In the Linux kernel, the following vulnerability has been resolved:

net: hsr: defer node table free until after RCU readers

HSR node-list and node-status generic-netlink operations run under rcu_read_lock(). They walk hsr->node_db through hsr_get_next_node() and hsr_get_node_data(), but RTM_DELLINK teardown removes the same node table with plain list_del() and frees each node immediately.

That lets a generic-netlink reader hold a struct hsr_node pointer across hsr_dellink(). In a KASAN build, widening the reader window after hsr_get_next_node() obtains the node reproduces a slab-use-after-free when the reader copies node->macaddress_A; the freeing stack is hsr_del_nodes() from hsr_dellink().

Use list_del_rcu() and defer the free through the existing hsr_free_node_rcu() callback. This matches the lifetime rule used by the HSR prune paths, which already delete nodes with list_del_rcu() and call_rcu().

Show details on source website

{
  "affected": [],
  "aliases": [
    "CVE-2026-64123"
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-416"
    ],
    "github_reviewed": false,
    "github_reviewed_at": null,
    "nvd_published_at": "2026-07-19T16:17:53Z",
    "severity": "HIGH"
  },
  "details": "In the Linux kernel, the following vulnerability has been resolved:\n\nnet: hsr: defer node table free until after RCU readers\n\nHSR node-list and node-status generic-netlink operations run under\nrcu_read_lock(). They walk hsr-\u003enode_db through hsr_get_next_node() and\nhsr_get_node_data(), but RTM_DELLINK teardown removes the same node table\nwith plain list_del() and frees each node immediately.\n\nThat lets a generic-netlink reader hold a struct hsr_node pointer across\nhsr_dellink(). In a KASAN build, widening the reader window after\nhsr_get_next_node() obtains the node reproduces a slab-use-after-free\nwhen the reader copies node-\u003emacaddress_A; the freeing stack is\nhsr_del_nodes() from hsr_dellink().\n\nUse list_del_rcu() and defer the free through the existing\nhsr_free_node_rcu() callback. This matches the lifetime rule used by the\nHSR prune paths, which already delete nodes with list_del_rcu() and\ncall_rcu().",
  "id": "GHSA-q3v2-68cr-qhrm",
  "modified": "2026-07-20T15:32:00Z",
  "published": "2026-07-19T18:31:52Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-64123"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/0ea70fb46940620848c08d9d399455c9e82fecdb"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/6324423a8e6591f41a16c09a8f9a84e554ac147c"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/7713f4aafb577ff49fa67f0488d9c7dddc64d6ce"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/8be6685cdd1255bcc85f9b59e4bfc313aefc5c1b"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/8c3af18bb0d7c921a5219194037509463eb2ffde"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/aaec7096f9961eb223b5b149abe9495525c205d9"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/c5580114e0492bcd2e0a37613ed4c311e3fa3d4d"
    }
  ],
  "schema_version": "1.4.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
      "type": "CVSS_V3"
    }
  ]
}



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…

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…