Skip to content
Heist/ feed
Back to feed
UnratedFix available

net: gro: fix outer network offset

Type: advisorySources: OSV

In the Linux kernel, the following vulnerability has been resolved: net: gro: fix outer network offset The udp GRO complete stage assumes that all the packets inserted the RX have the `encapsulation` flag zeroed. Such assumption is not true, as a few H/W NICs can set such flag when H/W offloading the checksum for an UDP encapsulated traffic, the tun driver can inject GSO packets with UDP encapsulation and the problematic layout can also be created via a veth based setup. Due to the above, in the problematic scenarios, udp4_gro_complete() uses the wrong network offset (inner instead of outer) to compute the outer UDP header pseudo checksum, leading to csum validation errors later on in packet processing. Address the issue always clearing the encapsulation flag at GRO completion time. Such flag will be set again as needed for encapsulated packets by udp_gro_complete().

Products
Kernel
Affected versions
Not specified
Fixed versions
6.12.70, 6.18.10, 6.6.124
CVEs
CVE-2026-23254
Confirmed fixed CVEs
Not specified
Updated in this feed
5 Nov 2026, 05:24 UTC · Revision 1

Source evidence

net: gro: fix outer network offset

core-osv · Original source

Published 18 Mar 2026, 17:41 UTC

In the Linux kernel, the following vulnerability has been resolved: net: gro: fix outer network offset The udp GRO complete stage assumes that all the packets inserted the RX have the `encapsulation` flag zeroed. Such assumption is not true, as a few H/W NICs can set such flag when H/W offloading the checksum for an UDP encapsulated traffic, the tun driver can inject GSO packets with UDP encapsulation and the problematic layout can also be created via a veth based setup. Due to the above, in the problematic scenarios, udp4_gro_complete() uses the wrong network offset (inner instead of outer) to compute the outer UDP header pseudo checksum, leading to csum validation errors later on in packet processing. Address the issue always clearing the encapsulation flag at GRO completion time. Such flag will be set again as needed for encapsulated packets by udp_gro_complete().

osv:CVE-2026-23254

Kernel

Fixed versions: 6.6.124, 6.12.70, 6.18.10

Complete source record
{
  "id": "6833aa0714813caf6fab9df0a76b4709995532a790c904992549c47d462cc0c7",
  "url": "https://osv.dev/vulnerability/CVE-2026-23254",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "net: gro: fix outer network offset",
    "summary": "In the Linux kernel, the following vulnerability has been resolved: net: gro: fix outer network offset The udp GRO complete stage assumes that all the packets inserted the RX have the `encapsulation` flag zeroed. Such assumption is not true, as a few H/W NICs can set such flag when H/W offloading the checksum for an UDP encapsulated traffic, the tun driver can inject GSO packets with UDP encapsulation and the problematic layout can also be created via a veth based setup. Due to the above, in the problematic scenarios, udp4_gro_complete() uses the wrong network offset (inner instead of outer) to compute the outer UDP header pseudo checksum, leading to csum validation errors later on in packet processing. Address the issue always clearing the encapsulation flag at GRO completion time. Such flag will be set again as needed for encapsulated packets by udp_gro_complete().",
    "evidence": "osv:CVE-2026-23254",
    "products": [
      {
        "name": {
          "value": "Kernel",
          "evidence": "/affected/1/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "6.6.124",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.12.70",
            "evidence": "/affected/1/ranges"
          },
          {
            "value": "6.18.10",
            "evidence": "/affected/1/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "unknown",
    "structured": {
      "id": "CVE-2026-23254",
      "aliases": [
        "CVE-2026-23254"
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "af276a5ac8e938c8b058e3e124073cc1e322d98b"
                },
                {
                  "fixed": "9d40a85138568696387ef04cd004c64612a70874"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "5ef31ea5d053a8f493a772ebad3f3ce82c35d845"
                },
                {
                  "fixed": "b83557bc6f560433fe5d727e241069f8db5ba709"
                },
                {
                  "fixed": "2e5edb69e5d0e23ef248c56fc977039268c77a7b"
                },
                {
                  "fixed": "5c2c3c38be396257a6a2e55bd601a12bb9781507"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "6.6.31"
                },
                {
                  "fixed": "6.6.124"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "6.8.10"
                },
                {
                  "fixed": "6.9"
                }
              ]
            },
            {
              "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
              "type": "GIT",
              "events": [
                {
                  "introduced": "dbd9466d323a72e22efe09151253d195d36d3bf6"
                }
              ]
            }
          ],
          "versions": [
            "v6.6.123",
            "v6.6.122",
            "v6.6.121",
            "v6.6.120",
            "v6.6.119",
            "v6.6.118",
            "v6.6.117",
            "v6.6.116",
            "v6.6.115",
            "v6.6.114",
            "v6.6.113",
            "v6.6.112",
            "v6.6.111",
            "v6.6.110",
            "v6.6.109",
            "v6.6.108",
            "v6.6.107",
            "v6.6.106",
            "v6.6.105",
            "v6.6.104",
            "v6.6.103",
            "v6.6.102",
            "v6.6.101",
            "v6.6.100",
            "v6.6.99",
            "v6.6.98",
            "v6.6.97",
            "v6.6.96",
            "v6.6.95",
            "v6.6.94",
            "v6.6.93",
            "v6.6.92",
            "v6.6.91",
            "v6.6.90",
            "v6.6.89",
            "v6.6.88",
            "v6.6.87",
            "v6.6.86",
            "v6.6.85",
            "v6.6.84",
            "v6.6.83",
            "v6.6.82",
            "v6.6.81",
            "v6.6.80",
            "v6.6.79",
            "v6.6.78",
            "v6.6.77",
            "v6.6.76",
            "v6.6.75",
            "v6.6.74",
            "v6.6.73",
            "v6.6.72",
            "v6.6.71",
            "v6.6.70",
            "v6.6.69",
            "v6.6.68",
            "v6.6.67",
            "v6.6.66",
            "v6.6.65",
            "v6.6.64",
            "v6.6.63",
            "v6.6.62",
            "v6.6.61",
            "v6.6.60",
            "v6.6.59",
            "v6.6.58",
            "v6.6.57",
            "v6.6.56",
            "v6.6.55",
            "v6.6.54",
            "v6.6.53",
            "v6.6.52",
            "v6.6.51",
            "v6.6.50",
            "v6.6.49",
            "v6.6.48",
            "v6.6.47",
            "v6.6.46",
            "v6.6.45",
            "v6.6.44",
            "v6.6.43",
            "v6.6.42",
            "v6.6.41",
            "v6.6.40",
            "v6.6.39",
            "v6.6.38",
            "v6.6.37",
            "v6.6.36",
            "v6.6.35",
            "v6.6.34",
            "v6.6.33",
            "v6.6.32",
            "v6.6.31",
            "v6.8.12",
            "v6.8.11",
            "v6.8.10"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-23254.json"
          }
        },
        {
          "ranges": [
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "6.6.124"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.7.0"
                },
                {
                  "fixed": "6.12.70"
                }
              ]
            },
            {
              "type": "ECOSYSTEM",
              "events": [
                {
                  "introduced": "6.9.0"
                },
                {
                  "fixed": "6.18.10"
                }
              ]
            }
          ],
          "package": {
            "name": "Kernel",
            "ecosystem": "Linux"
          },
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-23254.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:43.172296783Z",
      "provider": "osv",
      "references": [
        "https://git.kernel.org/stable/c/2e5edb69e5d0e23ef248c56fc977039268c77a7b",
        "https://git.kernel.org/stable/c/5c2c3c38be396257a6a2e55bd601a12bb9781507",
        "https://git.kernel.org/stable/c/9d40a85138568696387ef04cd004c64612a70874",
        "https://git.kernel.org/stable/c/b83557bc6f560433fe5d727e241069f8db5ba709",
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/23xxx/CVE-2026-23254.json",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-23254",
        "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
      ],
      "provider_metadata": {
        "cna_assigner": "Linux",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/23xxx/CVE-2026-23254.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-23254",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": null
  },
  "source_id": "core-osv",
  "document_id": 510685,
  "published_at": "2026-03-18T17:41:00.591+00:00"
}