Skip to content
Heist/ feed
Unrated

seg6: ensure packet data is writable before modifying SRH and IPv6 DA

Type: advisorySource: Official CVE List1 source record

In the Linux kernel, the following vulnerability has been resolved: seg6: ensure packet data is writable before modifying SRH and IPv6 DA advance_nextseg() modifies the SRH Segments Left field and the IPv6 destination address without ensuring the packet data is writable. seg6_next_csid_advance_arg() has the same problem when it advances the NEXT-C-SID argument in the destination address. The skb may be cloned, for example by an AF_PACKET socket receiving on the ingress device. advance_nextseg() and seg6_next_csid_advance_arg() then write into the packet data shared with the clone. A read from that socket can return the modified packet instead of the received one. The simplified path below shows this for advance_nextseg(): __netif_receive_skb_one_core __netif_receive_skb_core deliver_skb [orig: users=2, cloned=0] packet_rcv skb_clone clone queued to the AF_PACKET socket consume_skb(orig) [orig: users=1, cloned=1] ipv6_rcv ip6_rcv_core skb_share_check: no-op [orig: users=1] [...] input_action_end_core advance_nextseg writes into the data shared with the clone Call skb_ensure_writable() in advance_nextseg() and in seg6_next_csid_advance_arg() before they modify the packet data. skb_ensure_writable() may reallocate skb->head, which invalidates the pointers into the packet data taken before the call. advance_nextseg() now returns a valid SRH pointer, or NULL if skb_ensure_writable() fails. seg6_next_csid_advance_arg() takes the pointer to the destination address from the skb after

Announced Group revision 1
Original source ↗

CVE-2026-98802

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-98802

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": "140f04c33bbcf89440dcaf8bef04918abff5a52d",
        "lessThan": "e9141fdb7a2ead48cfcd60c681aba91d3014255b",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "140f04c33bbcf89440dcaf8bef04918abff5a52d",
        "lessThan": "8ae3f4067ba4ae3a15581392f6dac422e3d3def0",
        "versionType": "git"
      }
    ],
    "programFiles": [
      "net/ipv6/seg6_local.c"
    ],
    "defaultStatus": "unaffected"
  },
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "4.14"
      },
      {
        "status": "unaffected",
        "version": "0",
        "lessThan": "4.14",
        "versionType": "semver"
      },
      {
        "status": "unaffected",
        "version": "7.2.10",
        "versionType": "semver",
        "lessThanOrEqual": "7.2.*"
      },
      {
        "status": "unaffected",
        "version": "7.3",
        "versionType": "original_commit_for_fix",
        "lessThanOrEqual": "*"
      }
    ],
    "programFiles": [
      "net/ipv6/seg6_local.c"
    ],
    "defaultStatus": "affected"
  }
]
Related CVEs
CVE-2026-98802

Source reference: /cveMetadata/cveId

Publisher severity

No explicit severity was provided.

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