Skip to content
Heist/ feed
High

inet: frags: invalidate queues before flushing them

Type: advisorySource: Official CVE List1 source record

In the Linux kernel, the following vulnerability has been resolved: inet: frags: invalidate queues before flushing them fqdir_pre_exit() flushes the skbs from incomplete queues without changing their completion state. A fragment which found a queue before high_thresh was cleared can then acquire the queue lock and reuse stale reassembly metadata. A queue concurrently killed after fqdir->dead is set can instead become INET_FRAG_COMPLETE|INET_FRAG_HASH_DEAD while still holding its old skbs; skipping it because it is complete leaves those references behind until asynchronous fqdir teardown. For IPv6, stale metadata can make ip6_frag_reasm() use the old nhoffset with a new skb and access memory out of bounds. The resulting heap corruption can be leveraged for local privilege escalation when unprivileged network namespaces are available. Unflushed fragments can also keep conntrack references alive after the conntrack per-net cleanup point. Kill each incomplete queue, then flush every queue still owned by the dying rhashtable. HASH_DEAD identifies that ownership, while complete queues without it are already owned by another destroy path and must be left alone. Releasing a timer reference removed by inet_frag_kill() is deferred to inet_frag_putn(), after the queue lock is dropped. KASAN report: BUG: KASAN: slab-out-of-bounds in ipv6_frag_rcv (net/ipv6/reassembly.c:289 (discriminator 2) net/ipv6/reassembly.c:229 (discriminator 2) net/ipv6/reassembly.c:391 (discriminator 2)) Write of

Announced Group revision 1
Original source ↗

CVE-2026-97602

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: cve:CVE-2026-97602

Linux

Source reference: /containers/cna/affected/0/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Linux

Source reference: /containers/cna/affected/1/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "22ee4010866da81aeee08e1ea3fddbe418feb212",
        "lessThan": "ff83367cda8eefbd62007ef1dff4f8104226d18a",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "543555954b1ee8d1903a7020324efb41b0c97428",
        "lessThan": "b9d77f1652e79e58eac48430d0431c329137efcc",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "c70df25214ac9b32b53e18e6ae3b8f073ffa6903",
        "lessThan": "7cb5f4643a7fcdbfbee1fad3cdfc678add62d378",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "006a5035b495dec008805df249f92c22c89c3d2e",
        "lessThan": "bf3d6c44c84c57e8a4bb7f40ad95b64f9b0198ba",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "006a5035b495dec008805df249f92c22c89c3d2e",
        "lessThan": "b824476c56a153934c67c9e0f873e1fd967743d6",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "6.6.143",
        "lessThan": "6.6.158",
        "versionType": "semver"
      },
      {
        "status": "affected",
        "version": "6.12.93",
        "lessThan": "6.12.111",
        "versionType": "semver"
      },
      {
        "status": "affected",
        "version": "6.18.3",
        "lessThan": "6.18.53",
        "versionType": "semver"
      }
    ],
    "programFiles": [
      "net/ipv4/inet_fragment.c"
    ],
    "defaultStatus": "unaffected"
  },
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "6.19"
      },
      {
        "status": "unaffected",
        "version": "0",
        "lessThan": "6.19",
        "versionType": "semver"
      },
      {
        "status": "unaffected",
        "version": "6.6.158",
        "versionType": "semver",
        "lessThanOrEqual": "6.6.*"
      },
      {
        "status": "unaffected",
        "version": "6.12.111",
        "versionType": "semver",
        "lessThanOrEqual": "6.12.*"
      },
      {
        "status": "unaffected",
        "version": "6.18.53",
        "versionType": "semver",
        "lessThanOrEqual": "6.18.*"
      },
      {
        "status": "unaffected",
        "version": "7.2.7",
        "versionType": "semver",
        "lessThanOrEqual": "7.2.*"
      },
      {
        "status": "unaffected",
        "version": "7.3",
        "versionType": "original_commit_for_fix",
        "lessThanOrEqual": "*"
      }
    ],
    "programFiles": [
      "net/ipv4/inet_fragment.c"
    ],
    "defaultStatus": "affected"
  }
]
Related CVEs
CVE-2026-97602

Source reference: /cveMetadata/cveId

Publisher severity

high

Source reference: /containers/cna/metrics

Event
#38042 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement