{"api_version":"1","generated_at":"2026-08-22T00:56:20+00:00","cve":"CVE-2026-72249","urls":{"html":"https://cve.report/CVE-2026-72249","api":"https://cve.report/api/cve/CVE-2026-72249.json","docs":"https://cve.report/api","cve_org":"https://www.cve.org/CVERecord?id=CVE-2026-72249","nvd":"https://nvd.nist.gov/vuln/detail/CVE-2026-72249"},"summary":{"title":"netfilter: flowtable: use dst in this direction when pushing IPIP header","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nnetfilter: flowtable: use dst in this direction when pushing IPIP header\n\nWhen pushing the IPIP header, the route of the other direction is used\nto calculate the headroom, use the route in this direction. Accessing\nthe other tuple to set the IP source and destination is fine because\nthis tuple does not provide such information to avoid storing redundant\ninformation. However, this tuple already provides the dst for this\ndirection, this went unnoticed because this bug affects headroom and\niph->frag_off only at this stage.","state":"PUBLISHED","assigner":"Linux","published_at":"2026-08-15 06:21:52","updated_at":"2026-08-17 06:18:26"},"problem_types":[],"metrics":[{"version":"3.1","source":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","type":"Secondary","score":"9.8","severity":"CRITICAL","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","data":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","baseScore":9.8,"baseSeverity":"CRITICAL","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"}},{"version":"3.1","source":"CNA","type":"DECLARED","score":"9.8","severity":"CRITICAL","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","data":{"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"}}],"references":[{"url":"https://git.kernel.org/stable/c/ecb78fbb03d3f86e2e93767875e273308086a424","name":"https://git.kernel.org/stable/c/ecb78fbb03d3f86e2e93767875e273308086a424","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://git.kernel.org/stable/c/c328b90c17fc5fa7786503695152880b2afb9326","name":"https://git.kernel.org/stable/c/c328b90c17fc5fa7786503695152880b2afb9326","refsource":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","tags":[],"title":"","mime":"","httpstatus":"","archivestatus":"0"},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-72249","name":"CVE Program record","refsource":"CVE.ORG","tags":["canonical"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-72249","name":"NVD vulnerability detail","refsource":"NVD","tags":["canonical","analysis"]}],"affected":[{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected d30301ba4b07ac92eb38353a111833b009003170 ecb78fbb03d3f86e2e93767875e273308086a424 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected d30301ba4b07ac92eb38353a111833b009003170 c328b90c17fc5fa7786503695152880b2afb9326 git","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"affected 6.19","platforms":[]},{"source":"CNA","vendor":"Linux","product":"Linux","version":"unaffected 6.19 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":"72249","cve":"CVE-2026-72249","epss":"0.005160000","percentile":"0.415110000","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":["net/netfilter/nf_flow_table_ip.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"lessThan":"ecb78fbb03d3f86e2e93767875e273308086a424","status":"affected","version":"d30301ba4b07ac92eb38353a111833b009003170","versionType":"git"},{"lessThan":"c328b90c17fc5fa7786503695152880b2afb9326","status":"affected","version":"d30301ba4b07ac92eb38353a111833b009003170","versionType":"git"}]},{"defaultStatus":"affected","product":"Linux","programFiles":["net/netfilter/nf_flow_table_ip.c"],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","vendor":"Linux","versions":[{"status":"affected","version":"6.19"},{"lessThan":"6.19","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":"6.19","vulnerable":true},{"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionEndExcluding":"7.2","versionStartIncluding":"6.19","vulnerable":true}],"negate":false,"operator":"OR"}]}],"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nnetfilter: flowtable: use dst in this direction when pushing IPIP header\n\nWhen pushing the IPIP header, the route of the other direction is used\nto calculate the headroom, use the route in this direction. Accessing\nthe other tuple to set the IP source and destination is fine because\nthis tuple does not provide such information to avoid storing redundant\ninformation. However, this tuple already provides the dst for this\ndirection, this went unnoticed because this bug affects headroom and\niph->frag_off only at this stage."}],"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 - The bug is hit in the netfilter flowtable ingress fast path when offloaded TCP/UDP packets are received on bound netdevs and tunnel encapsulation runs; a remote peer can trigger it by sending traffic through an IPIP flow-offload gateway without local access.\nAC:L - After a flow is offloaded (easily created by the attacker's own connections), asymmetric IPIP gateway routing predictably makes the reverse-direction dst underestimate headroom, so skb_cow_head undersizes and skb_push corrupts memory on each matching packet.\nPR:N - The attacker only needs to send network packets that match an established offloaded flow; nftables flowtable/IPIP setup is an administrator deployment precondition, not a privilege the attacker must hold on the target system.\nUI:N - No victim user action is required beyond normal network traffic once flow offload is enabled; exploitation is driven entirely by packets the attacker sends to the gateway.\nS:U - Impact is confined to kernel heap memory corruption and potential local privilege escalation within the same host; it does not cross VM, container, or IOMMU security boundaries.\nC:H - Undersized headroom lets skb_push write before skb->head, causing out-of-bounds heap corruption that can expose adjacent kernel objects and be leveraged into arbitrary memory disclosure primitives.\nI:H - The same skb head underflow is a writable heap corruption primitive that can overwrite adjacent allocator metadata or object contents and be developed into arbitrary kernel code execution.\nA:H - Heap corruption from skb_push underflow can immediately kernel oops/panic the system or be triggered repeatedly to deny service on an internet-facing VPN/edge gateway."}]}],"providerMetadata":{"dateUpdated":"2026-08-17T05:42:01.084Z","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux"},"references":[{"url":"https://git.kernel.org/stable/c/ecb78fbb03d3f86e2e93767875e273308086a424"},{"url":"https://git.kernel.org/stable/c/c328b90c17fc5fa7786503695152880b2afb9326"}],"title":"netfilter: flowtable: use dst in this direction when pushing IPIP header","x_generator":{"engine":"bippy-1.2.0"}}},"cveMetadata":{"assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","assignerShortName":"Linux","cveId":"CVE-2026-72249","datePublished":"2026-08-15T05:54:37.914Z","dateReserved":"2026-08-09T03:40:39.914Z","dateUpdated":"2026-08-17T05:42:01.084Z","state":"PUBLISHED"},"dataType":"CVE_RECORD","dataVersion":"5.2"},"nvd":{"publishedDate":"2026-08-15 06:21:52","lastModifiedDate":"2026-08-17 06:18:26","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:U/C:H/I:H/A:H","baseScore":9.8,"baseSeverity":"CRITICAL","attackVector":"NETWORK","attackComplexity":"LOW","privilegesRequired":"NONE","userInteraction":"NONE","scope":"UNCHANGED","confidentialityImpact":"HIGH","integrityImpact":"HIGH","availabilityImpact":"HIGH"},"exploitabilityScore":3.9,"impactScore":5.9}]},"configurations":[]},"legacy_mitre":{"record":{"CveYear":"2026","CveId":"72249","Ordinal":"1","Title":"netfilter: flowtable: use dst in this direction when pushing IPI","CVE":"CVE-2026-72249","Year":"2026"},"notes":[{"CveYear":"2026","CveId":"72249","Ordinal":"1","NoteData":"In the Linux kernel, the following vulnerability has been resolved:\n\nnetfilter: flowtable: use dst in this direction when pushing IPIP header\n\nWhen pushing the IPIP header, the route of the other direction is used\nto calculate the headroom, use the route in this direction. Accessing\nthe other tuple to set the IP source and destination is fine because\nthis tuple does not provide such information to avoid storing redundant\ninformation. However, this tuple already provides the dst for this\ndirection, this went unnoticed because this bug affects headroom and\niph->frag_off only at this stage.","Type":"Description","Title":"netfilter: flowtable: use dst in this direction when pushing IPI"}]}}}