{
  "affected": [
    {
      "ranges": [
        {
          "events": [
            {
              "introduced": "b84bbaf7a6c8cca24f8acf25a2c8e46913a947ba"
            },
            {
              "fixed": "91f041451f967cd87ed722a8f43c0b767a64f1a0"
            },
            {
              "fixed": "9052756290962ffb9a661bcf319e92dedaaedfed"
            },
            {
              "fixed": "5bb10753d428aadfc356a2bfe9acea09c82a62ec"
            },
            {
              "fixed": "b06b6fce6d7deaf7238e09b48ce3b1125ff41acd"
            },
            {
              "fixed": "03390aa32e669cc4ecd7d34108e2e1afc13d689d"
            }
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "type": "GIT"
        },
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "last_affected": "d9fb8cc230b2a4757e9fe4f81468f81212d4deaa"
            },
            {
              "last_affected": "6190cce26e40bf71c4d375b21eea74bb07b6a0f3"
            },
            {
              "last_affected": "01a658c1b9d4b5393c38d5a92d9112ab1425382a"
            },
            {
              "last_affected": "8809ae6747e760e6f1d2453ceb08c9bcc4939766"
            }
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "type": "GIT"
        },
        {
          "events": [
            {
              "introduced": "4.4.133"
            },
            {
              "fixed": "4.5"
            }
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "type": "GIT"
        },
        {
          "events": [
            {
              "introduced": "4.9.103"
            },
            {
              "fixed": "4.10"
            }
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "type": "GIT"
        },
        {
          "events": [
            {
              "introduced": "4.14.44"
            },
            {
              "fixed": "4.15"
            }
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "type": "GIT"
        },
        {
          "events": [
            {
              "introduced": "4.16.12"
            },
            {
              "fixed": "4.17"
            }
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "type": "GIT"
        }
      ]
    },
    {
      "package": {
        "ecosystem": "Linux",
        "name": "Kernel"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "4.17.0"
            },
            {
              "fixed": "6.6.152"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "6.7.0"
            },
            {
              "fixed": "6.12.104"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "6.13.0"
            },
            {
              "fixed": "6.18.45"
            }
          ],
          "type": "ECOSYSTEM"
        },
        {
          "events": [
            {
              "introduced": "6.19.0"
            },
            {
              "fixed": "7.1.9"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "database_specific": {
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/74xxx/CVE-2026-74582.json"
  },
  "details": "In the Linux kernel, the following vulnerability has been resolved:\n\npacket: use consistent hard_header_len in non-ring send paths\n\npacket_snd() reads dev-\u003ehard_header_len multiple times while allocating\nand constructing an skb. Device reconfiguration can change this value\nconcurrently, for example through bonding device type changes.\n\nFor SOCK_RAW, packet_snd() can save a larger value in reserve and later\nallocate headroom using a smaller value. Moving skb-\u003edata back by reserve\nthen places it before skb-\u003ehead, and the following copy from userspace can\nattempt an out-of-bounds write.\n\npacket_sendmsg_spkt() has the same issue because it calculates its\nreservation and header offset from separate reads before dropping the RCU\nread lock to allocate the skb.\n\nAdd LL_RESERVED_SPACE_EX() for callers that already saved a header length.\nRead hard_header_len once in packet_snd() and use it for allocation and\nconstruction. In packet_sendmsg_spkt(), preserve the allocation-time value\nthrough the device lookup retry.\n\nThe separate SOCK_DGRAM consistency problem between hard_header_len and\nheader_ops-\u003ecreate is not addressed here.",
  "id": "CVE-2026-74582",
  "modified": "2026-08-23T03:42:45.431118495Z",
  "published": "2026-08-21T16:31:55.283Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/03390aa32e669cc4ecd7d34108e2e1afc13d689d"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/5bb10753d428aadfc356a2bfe9acea09c82a62ec"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/9052756290962ffb9a661bcf319e92dedaaedfed"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/91f041451f967cd87ed722a8f43c0b767a64f1a0"
    },
    {
      "type": "WEB",
      "url": "https://git.kernel.org/stable/c/b06b6fce6d7deaf7238e09b48ce3b1125ff41acd"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/74xxx/CVE-2026-74582.json"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-74582"
    },
    {
      "type": "PACKAGE",
      "url": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"
    }
  ],
  "schema_version": "1.9.0",
  "summary": "packet: use consistent hard_header_len in non-ring send paths"
}