CVE-2026-74708 (GCVE-0-2026-74708)
Vulnerability from cvelistv5
Published
2026-08-22 15:33
Modified
2026-08-25 05:41
Summary
In the Linux kernel, the following vulnerability has been resolved: xsk: validate launch-time metadata size Launch-time metadata extends beyond the first 16 bytes of struct xsk_tx_metadata. Reject the request when the registered metadata area does not contain the complete field. Snapshot the validated flags for the generic transmit path and use that snapshot for request and completion processing, avoiding inconsistent decisions if user space changes the flags concurrently. Note that only xsk_skb_metadata is properly using the flags, __xsk_buff_get_metadata ignores them. Next commits address that.
Impacted products
Vendor Product Version
Linux Linux Version: ca4419f15abd19ba8be1e109661b60f9f5b6c9f0
Version: ca4419f15abd19ba8be1e109661b60f9f5b6c9f0
Version: ca4419f15abd19ba8be1e109661b60f9f5b6c9f0
Version: d9d736c416c9a85f84e15435ba82a177262e745b
Version: 6.14.2   
Create a notification for this product.
Show details on NVD website


{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "include/net/xdp_sock_drv.h",
            "net/xdp/xsk.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "af511afa1d2977f384044df78d6fbf9fba653f7a",
              "status": "affected",
              "version": "ca4419f15abd19ba8be1e109661b60f9f5b6c9f0",
              "versionType": "git"
            },
            {
              "lessThan": "bc63d47611c07b0d5d655fe1a590861931527920",
              "status": "affected",
              "version": "ca4419f15abd19ba8be1e109661b60f9f5b6c9f0",
              "versionType": "git"
            },
            {
              "lessThan": "439ce2dddf3d22129b9113a7881637256a35e936",
              "status": "affected",
              "version": "ca4419f15abd19ba8be1e109661b60f9f5b6c9f0",
              "versionType": "git"
            },
            {
              "status": "affected",
              "version": "d9d736c416c9a85f84e15435ba82a177262e745b",
              "versionType": "git"
            },
            {
              "lessThan": "6.15",
              "status": "affected",
              "version": "6.14.2",
              "versionType": "semver"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "include/net/xdp_sock_drv.h",
            "net/xdp/xsk.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.15"
            },
            {
              "lessThan": "6.15",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "6.18.*",
              "status": "unaffected",
              "version": "6.18.45",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.1.*",
              "status": "unaffected",
              "version": "7.1.9",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.2",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "6.18.45",
                  "versionStartIncluding": "6.15",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1.9",
                  "versionStartIncluding": "6.15",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.2",
                  "versionStartIncluding": "6.15",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionStartIncluding": "6.14.2",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nxsk: validate launch-time metadata size\n\nLaunch-time metadata extends beyond the first 16 bytes of struct\nxsk_tx_metadata. Reject the request when the registered metadata area does\nnot contain the complete field.\n\nSnapshot the validated flags for the generic transmit path and use that\nsnapshot for request and completion processing, avoiding inconsistent\ndecisions if user space changes the flags concurrently.\n\nNote that only xsk_skb_metadata is properly using the flags,\n__xsk_buff_get_metadata ignores them. Next commits address that."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 7.8,
            "baseSeverity": "HIGH",
            "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
            "version": "3.1"
          },
          "scenarios": [
            {
              "lang": "en",
              "value": "AV:L - Exploitation requires a local process to create an AF_XDP socket, register UMEM/TX rings via setsockopt, bind to a netdev queue, and submit TX descriptors; the bug is hit in kernel transmit handling, not by remote packet delivery alone.\nAC:L - An attacker fully controls UMEM layout, metadata flags, and TX ring timing, so registering tx_metadata_len=16, setting XDP_TXMD_FLAGS_LAUNCH_TIME, and racing concurrent flag writes can reliably trigger the out-of-bounds launch_time read without uncontrollable kernel preconditions.\nPR:L - AF_XDP socket creation checks CAP_NET_RAW in the socket network namespace (xsk_create), which unprivileged local users can obtain via user/network namespaces; no init-namespace root or admin rights are required beyond that capability.\nUI:N - No victim interaction is needed after the attacker can run code with CAP_NET_RAW; they directly configure UMEM metadata, enqueue TX descriptors, and drive transmission via sendmsg/poll without requiring another user to open files or mount filesystems.\nS:U - Impact stays within the kernel networking stack and attacker-controlled AF_XDP context on the same host; it does not cross VM, container-to-host, or IOMMU security boundaries into a different authority.\nC:H - With only 16 bytes of registered TX metadata, enabling launch-time offload makes the kernel read meta-\u003erequest.launch_time eight bytes beyond the declared metadata area; this is an out-of-bounds read whose contents are then consumed by kernel TX processing.\nI:H - The out-of-bounds launch_time value is written into skb-\u003eskb_mstamp_ns on the generic path and can be passed to NIC launch-time hardware offload on zerocopy drivers, letting an attacker influence kernel packet scheduling state and device transmit timing from attacker-chosen memory.\nA:H - Repeated transmission with attacker-controlled launch-time values can disrupt TX scheduling and stress hardware offload paths (mlx5/igc/stmmac), enabling denial of service through stalled or mis-timed transmission rather than only a single benign misread."
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-08-25T05:41:51.238Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/af511afa1d2977f384044df78d6fbf9fba653f7a"
        },
        {
          "url": "https://git.kernel.org/stable/c/bc63d47611c07b0d5d655fe1a590861931527920"
        },
        {
          "url": "https://git.kernel.org/stable/c/439ce2dddf3d22129b9113a7881637256a35e936"
        }
      ],
      "title": "xsk: validate launch-time metadata size",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-74708",
    "datePublished": "2026-08-22T15:33:05.956Z",
    "dateReserved": "2026-08-15T05:44:03.927Z",
    "dateUpdated": "2026-08-25T05:41:51.238Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}


Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Sightings

Author Source Type Date

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
  • Confirmed: The vulnerability is confirmed from an analyst perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
  • Patched: This vulnerability was successfully patched by the user reporting the sighting.
  • Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
  • Not confirmed: The user expresses doubt about the veracity of the vulnerability.
  • Not patched: This vulnerability was not successfully patched by the user reporting the sighting.


Loading…

Loading…