CVE-2026-52916

batman-adv: frag: disallow unicast fragment in fragment

Published Jun 24, 2026 CVSS 3.1 · 5.5 Medium EPSS < 1% KEV · Not listed
Description
In the Linux kernel, the following vulnerability has been resolved:

batman-adv: frag: disallow unicast fragment in fragment

batadv_frag_skb_buffer() is called by batadv_batman_skb_recv() when a
BATADV_UNICAST_FRAG packet is received. Once all fragments are collected
and the packet is reassembled, batadv_recv_frag_packet() calls
batadv_batman_skb_recv() again to process the defragmented payload.

A malicious sender can craft a BATADV_UNICAST_FRAG packet whose reassembled
payload is itself a BATADV_UNICAST_FRAG packet (matryoshka-style nesting).
Each nesting level recurses through batadv_batman_skb_recv() without bound,
growing the kernel stack until it is exhausted.

Since refragmentation or fragments in fragments are not actually allowed,
discard all packets which are still BATADV_UNICAST_FRAG packets after the
defragmentation process.

Analysis

AI-generated

Technical impact

Batman-adv is a MAC‑level virtual network overlay integrated into the Linux kernel that performs packet fragmentation and defragmentation. A flaw was discovered in the logic that processes BATADV_UNICAST_FRAG packets, allowing an attacker to nest a fragmentation packet inside the payload of another, creating an unbounded recursion. Each nesting level forces the kernel to invoke batadv_batman_skb_recv recursively, causing the kernel stack to grow until it overflows and the system crashes or reboots. The vulnerability therefore leads to a local or remote denial of service via stack exhaustion.

Affected Systems

All Linux kernel versions that include the batman‑adv overlay module prior to the commit that removed the recursion guard are affected. Known CPE entries cover generic Linux kernels and kernel 7.1 release candidates (rc1‑rc4). Thus any kernel that has not incorporated the fix is vulnerable.

Risk and Exploitability

The CVSS score of 5.5 reflects a medium severity denial‑of‑service impact, while the EPSS score of less than 1% indicates a very low probability of active exploitation. The vulnerability is not listed in CISA's KEV catalog. An attacker must be able to deliver crafted BATADV_UNICAST_FRAG packets over the network; the likely attack vector is remote connectivity to the target host, inferred from the requirement that the packet is received by batam-adv upon arrival. Exploitation requires no special privileges and involves sending a specifically constructed fragment chain that repeatedly triggers defragmentation, eventually exhausting the kernel stack.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the kernel to a version that includes the batman‑adv fragmentation fix, such as a kernel built after the commit that removes unbounded recursion.
  • If a kernel upgrade cannot be performed, disable or remove the batman‑adv overlay module and associated network configuration to eliminate the attack surface.
  • Apply firewall or ACL rules to block or rate‑limit incoming BATADV_UNICAST_FRAG packets, preventing the attacker from delivering crafted fragments.

Generated by OpenCVE AI on August 13, 2026 at 22:04 UTC.

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Debian DLA Debian DLA DLA-4664-1 linux security update
Debian DLA Debian DLA DLA-4665-1 linux security update
Debian DLA Debian DLA DLA-4671-1 linux-6.1 security update
Ubuntu USN Ubuntu USN USN-8566-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8568-1 Linux kernel (OEM) vulnerabilities
Ubuntu USN Ubuntu USN USN-8569-1 Linux kernel (HWE) vulnerabilities
Ubuntu USN Ubuntu USN USN-8575-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8576-1 Linux kernel (NVIDIA Tegra) vulnerabilities
Ubuntu USN Ubuntu USN USN-8593-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8575-2 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8576-2 Linux kernel (NVIDIA Tegra) vulnerabilities
Ubuntu USN Ubuntu USN USN-8575-3 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8603-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-8610-1 Linux kernel (Azure CVM) vulnerabilities
Ubuntu USN Ubuntu USN USN-8618-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8620-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8620-2 Linux kernel (Azure FIPS) vulnerabilities
Ubuntu USN Ubuntu USN USN-8620-3 Linux kernel (Intel IoTG) vulnerabilities
Ubuntu USN Ubuntu USN USN-8620-4 Linux kernel (Intel IoTG) vulnerabilities
Ubuntu USN Ubuntu USN USN-8663-1 Linux kernel (NVIDIA) vulnerabilities
Ubuntu USN Ubuntu USN USN-8664-1 Linux kernel (NVIDIA BaseOS) vulnerabilities
Ubuntu USN Ubuntu USN USN-8668-1 Linux kernel (GCP) vulnerabilities
Ubuntu USN Ubuntu USN USN-8728-1 Linux kernel (GCP) vulnerabilities
Ubuntu USN Ubuntu USN USN-8729-1 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8761-1 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-8729-2 Linux kernel (Raspberry Pi Real-time) vulnerabilities
Ubuntu USN Ubuntu USN USN-8761-2 Linux kernel (Azure FIPS) vulnerabilities
Ubuntu USN Ubuntu USN USN-8781-1 Linux kernel (NVIDIA Tegra) vulnerabilities
Ubuntu USN Ubuntu USN USN-8668-2 Linux kernel (Raspberry Pi) vulnerabilities
Ubuntu USN Ubuntu USN USN-8729-3 Linux kernel vulnerabilities
Ubuntu USN Ubuntu USN USN-8802-1 Linux kernel (Oracle) vulnerabilities
Ubuntu USN Ubuntu USN USN-8728-2 Linux kernel (Azure) vulnerabilities
Ubuntu USN Ubuntu USN USN-8729-4 Linux kernel (Low Latency) vulnerabilities
Ubuntu USN Ubuntu USN USN-8729-5 Linux kernel (AWS FIPS) vulnerabilities
Ubuntu USN Ubuntu USN USN-8728-3 Linux kernel (Oracle) vulnerabilities
Ubuntu USN Ubuntu USN USN-8729-6 Linux kernel (AWS) vulnerabilities
Ubuntu USN Ubuntu USN USN-8906-1 Linux kernel (IBM) vulnerabilities
Ubuntu USN Ubuntu USN USN-9066-1 Linux kernel (HWE) vulnerabilities
History
Type Values Removed Values Added
Weaknesses CWE-400
CWE-674
Type Values Removed Values Added
Weaknesses CWE-400
CWE-674
Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: batman-adv: frag: disallow unicast fragment in fragment batadv_frag_skb_buffer() is called by batadv_batman_skb_recv() when a BATADV_UNICAST_FRAG packet is received. Once all fragments are collected and the packet is reassembled, batadv_recv_frag_packet() calls batadv_batman_skb_recv() again to process the defragmented payload. A malicious sender can craft a BATADV_UNICAST_FRAG packet whose reassembled payload is itself a BATADV_UNICAST_FRAG packet (matryoshka-style nesting). Each nesting level recurses through batadv_batman_skb_recv() without bound, growing the kernel stack until it is exhausted. Since refragmentation or fragments in fragments are not actually allowed, discard all packets which are still BATADV_UNICAST_FRAG packets after the defragmentation process.
Title batman-adv: frag: disallow unicast fragment in fragment
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References
Weaknesses

Sources

Status
PUBLISHED
Assigner
Linux
Published
Updated
Jun 24, 2026, 7:14 AM
Reserved
Jun 9, 2026, 7:44 AM
Status
Analyzed
Published
Jun 24, 2026, 8:16 AM
Modified
Jul 8, 2026, 3:12 PM
Severity
Public date
Jun 24, 2026, 12:00 AM