{"id":"CVE-2026-72235","state":"PUBLISHED","title":"batman-adv: retrieve ethhdr after potential skb realloc on RX","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nbatman-adv: retrieve ethhdr after potential skb realloc on RX\n\npskb_may_pull() in batadv_interface_rx() could reallocate the buffer behind\nthe skb. Variables which were pointing to the old buffer need to be\nreassigned to avoid an use-after-free.\n\nThis was done correctly for the VLAN header but missed for the ethernet\nheader which is later used for the TT and AP isolation handling.","publishedAt":"2026-08-15T05:54:25.136Z","updatedAt":"2026-10-16T18:45:04.206Z","severity":{"score":8.8,"label":"High","version":"3.1","vector":"CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","source":"Linux"},"assigner":"Linux","products":["Linux Linux"],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"6e189f14d1ea28db212b9d70a02131a7ce518012","versionType":"git"},{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"a1820344b180cb55af748f102bc536b5c93164db","versionType":"git"},{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"6abf73589bed3f27ee240c08108feb72bed0b9c6","versionType":"git"},{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"f19259395b44af67f3c274e34237c295b526b859","versionType":"git"},{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"2cefa5141cab8ec1e4b24cf585958b13f2e3049d","versionType":"git"},{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"85a71a81854e0e191ad0e533eabb4eff54866feb","versionType":"git"},{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"b031fc97e1993d29d6c3a0e86a99140528cf31e8","versionType":"git"},{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"035e1fed892d3d06002a73ff73668f618a514644","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/batman-adv/mesh-interface.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"2.6.38","status":"affected"},{"version":"0","status":"unaffected","lessThan":"2.6.38","versionType":"semver"},{"version":"5.10.261","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.212","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.178","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.145","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.97","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.40","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.1.5","status":"unaffected","lessThanOrEqual":"7.1.*","versionType":"semver"},{"version":"7.2","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/batman-adv/mesh-interface.c"]}],"references":["https://git.kernel.org/stable/c/6e189f14d1ea28db212b9d70a02131a7ce518012","https://git.kernel.org/stable/c/a1820344b180cb55af748f102bc536b5c93164db","https://git.kernel.org/stable/c/6abf73589bed3f27ee240c08108feb72bed0b9c6","https://git.kernel.org/stable/c/f19259395b44af67f3c274e34237c295b526b859","https://git.kernel.org/stable/c/2cefa5141cab8ec1e4b24cf585958b13f2e3049d","https://git.kernel.org/stable/c/85a71a81854e0e191ad0e533eabb4eff54866feb","https://git.kernel.org/stable/c/b031fc97e1993d29d6c3a0e86a99140528cf31e8","https://git.kernel.org/stable/c/035e1fed892d3d06002a73ff73668f618a514644"],"weaknesses":[],"ingestedAt":"2026-10-29T20:12:58.252Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/72xxx/CVE-2026-72235.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-72235","state":"PUBLISHED","datePublished":"2026-08-15T05:54:25.136Z","dateUpdated":"2026-10-16T18:45:04.206Z","assignerShortName":"Linux","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateReserved":"2026-08-09T03:40:39.914Z"},"containers":{"cna":{"title":"batman-adv: retrieve ethhdr after potential skb realloc on RX","descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nbatman-adv: retrieve ethhdr after potential skb realloc on RX\n\npskb_may_pull() in batadv_interface_rx() could reallocate the buffer behind\nthe skb. Variables which were pointing to the old buffer need to be\nreassigned to avoid an use-after-free.\n\nThis was done correctly for the VLAN header but missed for the ethernet\nheader which is later used for the TT and AP isolation handling."}],"affected":[{"vendor":"Linux","product":"Linux","defaultStatus":"unaffected","versions":[{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"6e189f14d1ea28db212b9d70a02131a7ce518012","versionType":"git"},{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"a1820344b180cb55af748f102bc536b5c93164db","versionType":"git"},{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"6abf73589bed3f27ee240c08108feb72bed0b9c6","versionType":"git"},{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"f19259395b44af67f3c274e34237c295b526b859","versionType":"git"},{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"2cefa5141cab8ec1e4b24cf585958b13f2e3049d","versionType":"git"},{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"85a71a81854e0e191ad0e533eabb4eff54866feb","versionType":"git"},{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"b031fc97e1993d29d6c3a0e86a99140528cf31e8","versionType":"git"},{"version":"c6c8fea29769d998d94fcec9b9f14d4b52b349d3","status":"affected","lessThan":"035e1fed892d3d06002a73ff73668f618a514644","versionType":"git"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/batman-adv/mesh-interface.c"]},{"vendor":"Linux","product":"Linux","defaultStatus":"affected","versions":[{"version":"2.6.38","status":"affected"},{"version":"0","status":"unaffected","lessThan":"2.6.38","versionType":"semver"},{"version":"5.10.261","status":"unaffected","lessThanOrEqual":"5.10.*","versionType":"semver"},{"version":"5.15.212","status":"unaffected","lessThanOrEqual":"5.15.*","versionType":"semver"},{"version":"6.1.178","status":"unaffected","lessThanOrEqual":"6.1.*","versionType":"semver"},{"version":"6.6.145","status":"unaffected","lessThanOrEqual":"6.6.*","versionType":"semver"},{"version":"6.12.97","status":"unaffected","lessThanOrEqual":"6.12.*","versionType":"semver"},{"version":"6.18.40","status":"unaffected","lessThanOrEqual":"6.18.*","versionType":"semver"},{"version":"7.1.5","status":"unaffected","lessThanOrEqual":"7.1.*","versionType":"semver"},{"version":"7.2","status":"unaffected","lessThanOrEqual":"*","versionType":"original_commit_for_fix"}],"repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/batman-adv/mesh-interface.c"]}],"references":[{"url":"https://git.kernel.org/stable/c/6e189f14d1ea28db212b9d70a02131a7ce518012"},{"url":"https://git.kernel.org/stable/c/a1820344b180cb55af748f102bc536b5c93164db"},{"url":"https://git.kernel.org/stable/c/6abf73589bed3f27ee240c08108feb72bed0b9c6"},{"url":"https://git.kernel.org/stable/c/f19259395b44af67f3c274e34237c295b526b859"},{"url":"https://git.kernel.org/stable/c/2cefa5141cab8ec1e4b24cf585958b13f2e3049d"},{"url":"https://git.kernel.org/stable/c/85a71a81854e0e191ad0e533eabb4eff54866feb"},{"url":"https://git.kernel.org/stable/c/b031fc97e1993d29d6c3a0e86a99140528cf31e8"},{"url":"https://git.kernel.org/stable/c/035e1fed892d3d06002a73ff73668f618a514644"}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","baseScore":8.8,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:A - Exploitation requires delivering crafted ETH_P_BATMAN frames on the victim's batman-adv mesh hard interface (802.11/wired L2 mesh), reachable from any adjacent mesh peer without local shell access.\nAC:L - The attacker fully controls remote batman-adv packet contents (VLAN-encapsulated payload and skb layout) and can repeatedly send unicast/broadcast frames to reliably force pskb_may_pull() skb reallocation.\nPR:N - No privileges on the victim are required; any unauthenticated remote mesh participant that can inject batman-adv RX frames onto an active mesh node can reach batadv_interface_rx().\nUI:N - Exploitation is triggered solely by the attacker sending malicious mesh packets; no victim user action (mounting, clicking, or configuration changes) is needed at exploit time.\nS:U - Impact is kernel memory corruption and potential privilege escalation on the mesh node; it does not cross a VM/host, IOMMU, or sandbox security boundary.\nC:H - Stale ethhdr after skb realloc is a use-after-free read of freed skb data; attacker-influenced bytes from ethhdr->h_source/h_dest are consumed by TT and AP-isolation logic, enabling arbitrary kernel memory disclosure.\nI:H - UAF-supplied MAC data is copied into translation-table heap objects via batadv_tt_add_temporary_global_entry()/batadv_tt_global_add(), providing a memory-corruption primitive suitable for control-flow or data hijacking.\nA:H - Use-after-free on the RX path can cause kernel oops/panic from dereferencing freed skb buffer memory during TT/AP-isolation handling, even before full exploitation."}]}],"providerMetadata":{"shortName":"Linux","orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","dateUpdated":"2026-08-17T05:41:52.969Z"},"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.38","versionEndExcluding":"5.10.261"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.38","versionEndExcluding":"5.15.212"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.38","versionEndExcluding":"6.1.178"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.38","versionEndExcluding":"6.6.145"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.38","versionEndExcluding":"6.12.97"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.38","versionEndExcluding":"6.18.40"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.38","versionEndExcluding":"7.1.5"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"2.6.38","versionEndExcluding":"7.2"}]}]}],"x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"title":"CISA ADP Vulnrichment","metrics":[{"other":{"type":"ssvc","content":{"id":"CVE-2026-72235","role":"CISA Coordinator","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"total"}],"version":"2.0.3","timestamp":"2026-10-16T18:44:43.790792Z"}}}],"providerMetadata":{"shortName":"CISA-ADP","orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","dateUpdated":"2026-10-16T18:45:04.206Z"}}]}}}