CVE-2026-72351 (GCVE-0-2026-72351)
Vulnerability from cvelistv5
Published
2026-08-15 05:55
Modified
2026-08-17 05:43
Severity ?
VLAI Severity ?
EPSS score ?
Summary
In the Linux kernel, the following vulnerability has been resolved:
gue: validate REMCSUM private option length
GUE private flags can indicate that remote checksum offload metadata is
present. The private flags field itself is accounted for by
guehdr_flags_len(), but guehdr_priv_flags_len() currently returns 0 even
when GUE_PFLAG_REMCSUM is set.
This lets a packet with only the private flags field pass
validate_gue_flags(), after which gue_remcsum() and gue_gro_remcsum()
read the missing REMCSUM start/offset fields from the following bytes.
Account for GUE_PLEN_REMCSUM when GUE_PFLAG_REMCSUM is present so that
malformed packets are rejected during option validation.
References
Impacted products
| Vendor | Product | Version | ||
|---|---|---|---|---|
| Linux | Linux |
Version: c1aa8347e73e4092411fbd96cc59531fb7e76d04 Version: c1aa8347e73e4092411fbd96cc59531fb7e76d04 Version: c1aa8347e73e4092411fbd96cc59531fb7e76d04 Version: c1aa8347e73e4092411fbd96cc59531fb7e76d04 Version: c1aa8347e73e4092411fbd96cc59531fb7e76d04 Version: c1aa8347e73e4092411fbd96cc59531fb7e76d04 Version: c1aa8347e73e4092411fbd96cc59531fb7e76d04 Version: c1aa8347e73e4092411fbd96cc59531fb7e76d04 |
||
{
"containers": {
"cna": {
"affected": [
{
"defaultStatus": "unaffected",
"product": "Linux",
"programFiles": [
"include/net/gue.h"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"lessThan": "158b9995d3c87f3b93f5c22df54a12e12a3438b3",
"status": "affected",
"version": "c1aa8347e73e4092411fbd96cc59531fb7e76d04",
"versionType": "git"
},
{
"lessThan": "7c6876ec1b227261b51803f784c7be1b2242a1a0",
"status": "affected",
"version": "c1aa8347e73e4092411fbd96cc59531fb7e76d04",
"versionType": "git"
},
{
"lessThan": "2c4de9988e9ddc760b750d6b6e701c35ff60ad14",
"status": "affected",
"version": "c1aa8347e73e4092411fbd96cc59531fb7e76d04",
"versionType": "git"
},
{
"lessThan": "2a99224c120823987e4d829726f4ecb33e03fc1e",
"status": "affected",
"version": "c1aa8347e73e4092411fbd96cc59531fb7e76d04",
"versionType": "git"
},
{
"lessThan": "61e78679c7c9ca685bff58e4b6348304dc60aafd",
"status": "affected",
"version": "c1aa8347e73e4092411fbd96cc59531fb7e76d04",
"versionType": "git"
},
{
"lessThan": "4a4a1d41c6e901e773bcf795f562a47fa71f692a",
"status": "affected",
"version": "c1aa8347e73e4092411fbd96cc59531fb7e76d04",
"versionType": "git"
},
{
"lessThan": "f618cbe9b24cd0202004d2db781d5f80ab77037f",
"status": "affected",
"version": "c1aa8347e73e4092411fbd96cc59531fb7e76d04",
"versionType": "git"
},
{
"lessThan": "d335dcc6f521571d57117b8deeebc940836e5450",
"status": "affected",
"version": "c1aa8347e73e4092411fbd96cc59531fb7e76d04",
"versionType": "git"
}
]
},
{
"defaultStatus": "affected",
"product": "Linux",
"programFiles": [
"include/net/gue.h"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"versions": [
{
"status": "affected",
"version": "3.19"
},
{
"lessThan": "3.19",
"status": "unaffected",
"version": "0",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.10.*",
"status": "unaffected",
"version": "5.10.261",
"versionType": "semver"
},
{
"lessThanOrEqual": "5.15.*",
"status": "unaffected",
"version": "5.15.212",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.1.*",
"status": "unaffected",
"version": "6.1.178",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.6.*",
"status": "unaffected",
"version": "6.6.145",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.12.*",
"status": "unaffected",
"version": "6.12.97",
"versionType": "semver"
},
{
"lessThanOrEqual": "6.18.*",
"status": "unaffected",
"version": "6.18.40",
"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": "5.10.261",
"versionStartIncluding": "3.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "5.15.212",
"versionStartIncluding": "3.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.1.178",
"versionStartIncluding": "3.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.6.145",
"versionStartIncluding": "3.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.12.97",
"versionStartIncluding": "3.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "6.18.40",
"versionStartIncluding": "3.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.1.5",
"versionStartIncluding": "3.19",
"vulnerable": true
},
{
"criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
"versionEndExcluding": "7.2",
"versionStartIncluding": "3.19",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\ngue: validate REMCSUM private option length\n\nGUE private flags can indicate that remote checksum offload metadata is\npresent. The private flags field itself is accounted for by\nguehdr_flags_len(), but guehdr_priv_flags_len() currently returns 0 even\nwhen GUE_PFLAG_REMCSUM is set.\n\nThis lets a packet with only the private flags field pass\nvalidate_gue_flags(), after which gue_remcsum() and gue_gro_remcsum()\nread the missing REMCSUM start/offset fields from the following bytes.\n\nAccount for GUE_PLEN_REMCSUM when GUE_PFLAG_REMCSUM is present so that\nmalformed packets are rejected during option validation."
}
],
"metrics": [
{
"cvssV3_1": {
"baseScore": 9.8,
"baseSeverity": "CRITICAL",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H",
"version": "3.1"
},
"scenarios": [
{
"lang": "en",
"value": "AV:N - Malformed GUE-over-UDP packets reach gue_udp_recv() and gue_gro_receive() through the normal IP/UDP receive path on hosts with FOU/GUE listeners, including internet-facing cloud overlay endpoints.\nAC:L - An attacker fully controls the crafted packet and can set GUE_PFLAG_REMCSUM with only the private-flags option present, reliably triggering gue_remcsum()/gue_gro_remcsum() without races or special timing.\nPR:N - Exploitation requires only sending UDP to a GUE listener port; no target credentials or local privileges are needed by the remote attacker even though tunnel setup itself requires admin configuration.\nUI:N - No victim interaction is required beyond the host already receiving GUE tunnel traffic as part of normal overlay networking operation.\nS:U - The flaw corrupts kernel packet buffers during GUE receive processing on the target host and does not inherently cross VM, container, or IOMMU security boundaries.\nC:H - Missing REMCSUM length validation lets attacker-controlled start/offset drive remcsum_adjust()/csum_partial() to read beyond the declared GUE options into adjacent skb bytes, enabling memory disclosure primitives.\nI:H - remcsum_adjust() performs an out-of-bounds 2-byte write at ptr+offset, and the default partial-checksum path stores attacker-controlled csum_start/csum_offset metadata that can corrupt subsequent checksum offload handling.\nA:H - Out-of-bounds REMCSUM processing can trigger kernel oops or panic from invalid memory access or corrupted packet state, causing denial of service on overlay endpoints under repeated attack."
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-08-17T05:43:08.849Z",
"orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"shortName": "Linux"
},
"references": [
{
"url": "https://git.kernel.org/stable/c/158b9995d3c87f3b93f5c22df54a12e12a3438b3"
},
{
"url": "https://git.kernel.org/stable/c/7c6876ec1b227261b51803f784c7be1b2242a1a0"
},
{
"url": "https://git.kernel.org/stable/c/2c4de9988e9ddc760b750d6b6e701c35ff60ad14"
},
{
"url": "https://git.kernel.org/stable/c/2a99224c120823987e4d829726f4ecb33e03fc1e"
},
{
"url": "https://git.kernel.org/stable/c/61e78679c7c9ca685bff58e4b6348304dc60aafd"
},
{
"url": "https://git.kernel.org/stable/c/4a4a1d41c6e901e773bcf795f562a47fa71f692a"
},
{
"url": "https://git.kernel.org/stable/c/f618cbe9b24cd0202004d2db781d5f80ab77037f"
},
{
"url": "https://git.kernel.org/stable/c/d335dcc6f521571d57117b8deeebc940836e5450"
}
],
"title": "gue: validate REMCSUM private option length",
"x_generator": {
"engine": "bippy-1.2.0"
}
}
},
"cveMetadata": {
"assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"assignerShortName": "Linux",
"cveId": "CVE-2026-72351",
"datePublished": "2026-08-15T05:55:54.150Z",
"dateReserved": "2026-08-09T03:40:39.921Z",
"dateUpdated": "2026-08-17T05:43:08.849Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}
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…