{"api_version":"1","generated_at":"2026-08-22T16:05:18+00:00","cve":"CVE-2026-72408","urls":{"html":"https://cve.report/CVE-2026-72408","api":"https://cve.report/api/cve/CVE-2026-72408.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-72408","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-72408"},"summary":{"title":"geneve: gate GRO hint in geneve_gro_complete() on gs->gro_hint","description":"In the Linux kernel, the following vulnerability has been resolved:\n\ngeneve: gate GRO hint in geneve_gro_complete() on gs->gro_hint\n\ngeneve_gro_receive() reads the GRO hint through geneve_sk_gro_hint_off(),\nwhich honours it only when the socket enabled IFLA_GENEVE_GRO_HINT\n(gs->gro_hint). geneve_gro_complete() instead calls the low-level\ngeneve_opt_gro_hint_off() and acts on the hint unconditionally.\n\nOn a tunnel without the hint, receive aggregates the frames as plain\nETH_P_TEB while complete still honours an attacker-supplied hint option: it\ninflates gh_len by gro_hint->nested_hdr_len (u8) and redirects the dispatch\ntype, so the inner gro_complete handler runs at nhoff + gh_len, an offset\nreceive never pulled nor validated, reading out of bounds of the skb head:\n\n  BUG: KASAN: slab-out-of-bounds in ipv6_gro_complete (net/ipv6/ip6_offload.c:196)\n  Read of size 1 at addr ffff88800fe91980 by task exploit/153\n   ipv6_gro_complete (net/ipv6/ip6_offload.c:196)\n   geneve_gro_complete (drivers/net/geneve.c:965)\n   udp_gro_complete (net/ipv4/udp_offload.c:940)\n   inet_gro_complete (net/ipv4/af_inet.c:1621)\n   __gro_flush (net/core/gro.c:306)\n\nGate the complete path on gs->gro_hint too via geneve_sk_gro_hint_off(), so\nboth paths agree. Tunnels that enable the hint are unaffected.","state":"PUBLISHED","assigner":"Linux","published_at":"2026-08-15 06:22:14","updated_at":"2026-08-17 06:19:07"},"problem_types":[],"metrics":[{"version":"3.1","source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","type":"Secondary","score":"10","severity":"CRITICAL","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H","baseScore":10,"baseSeverity":"CRITICAL","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"CHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"}},{"version":"3.1","source":"CNA","type":"DECLARED","score":"10","severity":"CRITICAL","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H","data":{"baseScore":10,"baseSeverity":"CRITICAL","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H","version":"3.1"}}],"references":[{"url":"https://git.kernel.org/stable/c/2651c174445884ac9e85622aeade9c1f7b98d8e5","name":"https://git.kernel.org/stable/c/2651c174445884ac9e85622aeade9c1f7b98d8e5","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/49c2e7c0a69999a75ef5eaebe1559a20d0b3c15a","name":"https://git.kernel.org/stable/c/49c2e7c0a69999a75ef5eaebe1559a20d0b3c15a","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-72408","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-72408","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected fd0dd796576e1a560e1441e665810129f0a82be0 49c2e7c0a69999a75ef5eaebe1559a20d0b3c15a git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected fd0dd796576e1a560e1441e665810129f0a82be0 2651c174445884ac9e85622aeade9c1f7b98d8e5 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 7.0","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.0 semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.1.5 7.1.* semver","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 7.2 * original_commit_for_fix","platforms":[]}],"timeline":[],"solutions":[],"workarounds":[],"exploits":[],"credits":[],"nvd_cpes":[],"vendor_comments":[],"enrichments":{"kev":null,"epss":{"cve_year":"2026","cve_id":"72408","cve":"CVE-2026-72408","epss":"0.004070000","percentile":"0.338700000","score_date":"2026-08-17","updated_at":"2026-08-18 00:11:47"},"legacy_qids":[]},"source_records":{"cve_program":{"containers":{"cna":{"affected":[{"defaultStatus":"unaffected","product":"Linux","programFiles":["drivers/net/geneve.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"49c2e7c0a69999a75ef5eaebe1559a20d0b3c15a","status":"affected","version":"fd0dd796576e1a560e1441e665810129f0a82be0","versionType":"git"},{"lessThan":"2651c174445884ac9e85622aeade9c1f7b98d8e5","status":"affected","version":"fd0dd796576e1a560e1441e665810129f0a82be0","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["drivers/net/geneve.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"7.0"},{"lessThan":"7.0","status":"unaffected","version":"0","versionType":"semver"},{"lessThanOrEqual":"7.1.*","status":"unaffected","version":"7.1.5","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":"7.1.5","versionStartIncluding":"7.0","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.2","versionStartIncluding":"7.0","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\ngeneve: gate GRO hint in geneve_gro_complete() on gs->gro_hint\n\ngeneve_gro_receive() reads the GRO hint through geneve_sk_gro_hint_off(),\nwhich honours it only when the socket enabled IFLA_GENEVE_GRO_HINT\n(gs->gro_hint). geneve_gro_complete() instead calls the low-level\ngeneve_opt_gro_hint_off() and acts on the hint unconditionally.\n\nOn a tunnel without the hint, receive aggregates the frames as plain\nETH_P_TEB while complete still honours an attacker-supplied hint option: it\ninflates gh_len by gro_hint->nested_hdr_len (u8) and redirects the dispatch\ntype, so the inner gro_complete handler runs at nhoff + gh_len, an offset\nreceive never pulled nor validated, reading out of bounds of the skb head:\n\n  BUG: KASAN: slab-out-of-bounds in ipv6_gro_complete (net/ipv6/ip6_offload.c:196)\n  Read of size 1 at addr ffff88800fe91980 by task exploit/153\n   ipv6_gro_complete (net/ipv6/ip6_offload.c:196)\n   geneve_gro_complete (drivers/net/geneve.c:965)\n   udp_gro_complete (net/ipv4/udp_offload.c:940)\n   inet_gro_complete (net/ipv4/af_inet.c:1621)\n   __gro_flush (net/core/gro.c:306)\n\nGate the complete path on gs->gro_hint too via geneve_sk_gro_hint_off(), so\nboth paths agree. Tunnels that enable the hint are unaffected."}],"metrics":[{"cvssV3_1":{"baseScore":10,"baseSeverity":"CRITICAL","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H","version":"3.1"},"scenarios":[{"lang":"en","value":"AV:N - The bug is triggered by remotely delivered UDP/GENEVE packets processed in the NAPI GRO completion path (udp_gro_complete → geneve_gro_complete → __gro_flush), not via local syscalls or physical interfaces.\nAC:L - The attacker controls all packet fields (GRO hint option, nested_hdr_len, inner_proto_id) and can send multiple matching datagrams to force GRO aggregation/flush; no uncontrollable race or memory layout is required.\nPR:N - No authentication or local privileges are needed; any remote host that can send UDP to a victim's GENEVE tunnel port triggers the flaw on default tunnels without IFLA_GENEVE_GRO_HINT enabled.\nUI:N - Exploitation requires only transmission of crafted network packets; no victim interaction such as opening files, mounting filesystems, or clicking links is needed.\nS:C - In cloud/Kubernetes overlay deployments using GENEVE, a malicious tenant VM or pod can attack the host/hypervisor kernel over the underlay network, crossing the tenant-to-host security boundary.\nC:H - geneve_gro_complete() honors attacker-supplied GRO hint options that gro_receive() ignored, inflating gh_len and dispatching inner gro_complete past validated skb data, causing slab out-of-bounds reads and enabling arbitrary kernel memory disclosure.\nI:H - Misdirected gro_complete handlers (e.g., ipv6_gro_complete) read and rewrite protocol header fields at attacker-chosen offsets beyond the skb head, providing out-of-bounds write primitives exploitable for control-flow hijacking.\nA:H - The vulnerability provokes KASAN slab-out-of-bounds faults and kernel oops during GRO flush; repeated remote triggering can panic or hang the host, denying availability to all workloads."}]}],"providerMetadata":{"dateUpdated":"2026-08-17T05:43:48.541Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/49c2e7c0a69999a75ef5eaebe1559a20d0b3c15a"},{"url":"https://git.kernel.org/stable/c/2651c174445884ac9e85622aeade9c1f7b98d8e5"}],"title":"geneve: gate GRO hint in geneve_gro_complete() on gs->gro_hint","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-72408","datePublished":"2026-08-15T05:56:31.477Z","dateReserved":"2026-08-09T03:40:39.926Z","dateUpdated":"2026-08-17T05:43:48.541Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-08-15 06:22:14","lastModifiedDate":"2026-08-17 06:19:07","problem_types":[],"metrics":{"cvssMetricV31":[{"source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","type":"Secondary","cvssData":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H","baseScore":10,"baseSeverity":"CRITICAL","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"CHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"},"exploitabilityScore":3.9,"impactScore":6}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"72408","Ordinal":"1","Title":"geneve: gate GRO hint in geneve_gro_complete() on gs->gro_hint","CVE":"CVE-2026-72408","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"72408","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\ngeneve: gate GRO hint in geneve_gro_complete() on gs->gro_hint\n\ngeneve_gro_receive() reads the GRO hint through geneve_sk_gro_hint_off(),\nwhich honours it only when the socket enabled IFLA_GENEVE_GRO_HINT\n(gs->gro_hint). geneve_gro_complete() instead calls the low-level\ngeneve_opt_gro_hint_off() and acts on the hint unconditionally.\n\nOn a tunnel without the hint, receive aggregates the frames as plain\nETH_P_TEB while complete still honours an attacker-supplied hint option: it\ninflates gh_len by gro_hint->nested_hdr_len (u8) and redirects the dispatch\ntype, so the inner gro_complete handler runs at nhoff + gh_len, an offset\nreceive never pulled nor validated, reading out of bounds of the skb head:\n\n  BUG: KASAN: slab-out-of-bounds in ipv6_gro_complete (net/ipv6/ip6_offload.c:196)\n  Read of size 1 at addr ffff88800fe91980 by task exploit/153\n   ipv6_gro_complete (net/ipv6/ip6_offload.c:196)\n   geneve_gro_complete (drivers/net/geneve.c:965)\n   udp_gro_complete (net/ipv4/udp_offload.c:940)\n   inet_gro_complete (net/ipv4/af_inet.c:1621)\n   __gro_flush (net/core/gro.c:306)\n\nGate the complete path on gs->gro_hint too via geneve_sk_gro_hint_off(), so\nboth paths agree. Tunnels that enable the hint are unaffected.","Type":"Description","Title":"geneve: gate GRO hint in geneve_gro_complete() on gs->gro_hint"}]}}}