Skip to main content

Linux Kernel EUVDEUVD-2026-45780

| CVE-2026-64095 HIGH
2026-07-19 Linux GHSA-q65p-8m3g-4fpv
7.1
CVSS 3.1 · Vendor: Linux
Share

Severity by source

Vendor (Linux) PRIMARY
7.1 HIGH
AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H
vuln.today AI
5.9 MEDIUM

Adjacent L2 mesh reach (AV:A) with no auth/UI (PR:N/UI:N); AC:H because it is a timing-dependent race; impact is mainly kernel DoS (A:H) with minor state corruption (I:L) and no confidentiality loss (C:N).

3.1 AV:A/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:H
4.0 AV:A/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:H/SC:N/SI:N/SA:N
SUSE
HIGH
qualitative

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

Attack Vector
Adjacent
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
Low
Availability
High

Lifecycle Timeline

5
Analysis Generated
Jul 20, 2026 - 17:23 vuln.today
CVSS changed
Jul 20, 2026 - 15:22 NVD
7.1 (HIGH)
Patch available
Jul 19, 2026 - 17:03 EUVD
CVE Published
Jul 19, 2026 - 15:40 cve.org
UNKNOWN (no severity yet)
CVE Published
Jul 19, 2026 - 15:40 cve.org
HIGH 7.1

DescriptionCVE.org

In the Linux kernel, the following vulnerability has been resolved:

batman-adv: bla: avoid double decrement of bla.num_requests

The bla.num_requests is increased when no request_sent was in progress. And it is decremented in various places (announcement was received, backbone is purged, periodic work). But the check if the request_sent is actually set to a specific state and the atomic_dec/_inc are not safe because they are not atomic (TOCTOU) and multiple such code portions can run concurrently.

At the same time, it is necessary to modify request_sent (state) and bla.num_requests atomically. Otherwise batadv_bla_send_request() might set request_sent to 1 and is interrupted. batadv_handle_announce() can then set request_sent back to 0 and decrement num_requests before batadv_bla_send_request() incremented it.

The two operations must therefore be locked. And since state (request_sent) and wait_periods are only accessed inside this lock, they can be converted to simpler datatypes. And to avoid that the bla.num_requests is touched by a parallel running context with a valid backbone_gw reference after batadv_bla_purge_backbone_gw() ran, a third state "stopped" is required to correctly signal that a backbone_gw is in the state of being cleaned up.

AnalysisAI

Denial-of-service (and minor state corruption) in the Linux kernel's batman-adv (B.A.T.M.A.N. advanced mesh routing) bridge-loop-avoidance (BLA) subsystem allows an adjacent mesh participant to trigger a race condition in the bla.num_requests reference counter. Because the request_sent state check and the atomic increment/decrement of num_requests are not performed under a common lock, concurrent contexts (batadv_bla_send_request(), batadv_handle_announce(), backbone purge, and periodic work) can double-decrement the counter, corrupting BLA state and potentially crashing the kernel. There is no public exploit identified at time of analysis and EPSS risk is low (0.18%, 7th percentile); the fix serializes state and counter updates under a lock and adds a 'stopped' backbone_gw state.

Technical ContextAI

batman-adv is an in-kernel Layer 2 mesh networking protocol implemented as a loadable module (net/batman-adv). Its Bridge Loop Avoidance (BLA) feature prevents forwarding loops when multiple mesh nodes bridge the same LAN, using 'backbone gateways' and request/announce messages. The bla.num_requests counter tracks outstanding requests and is incremented in batadv_bla_send_request() and decremented when an announcement is received, when a backbone is purged, or during periodic work. The root cause is a classic Time-Of-Check-To-Time-Of-Use (CWE-362 race condition) combined with a counter/state inconsistency: reading request_sent and then performing a separate atomic_inc/atomic_dec is not itself atomic, so interleaving of batadv_bla_send_request() with batadv_handle_announce() lets one context reset request_sent to 0 and decrement num_requests before another context has incremented it, producing a double decrement. The upstream CWE field is 'N/A', but the described defect is a concurrency/race flaw. Affected CPEs are the generic cpe:2.3:a:linux:linux, i.e. the mainline kernel, specifically systems that load and use the batman-adv module.

RemediationAI

Vendor-released patch: upgrade to a fixed stable kernel - 5.10.259, 5.15.210, 6.1.176, 6.6.143, 6.12.93, 7.0.11, or 6.18.34 (or later on each branch), obtained from your distribution or from the git.kernel.org stable commits listed for CVE-2026-64095. The fix serializes request_sent state and bla.num_requests updates under a single lock and introduces a 'stopped' backbone_gw state to prevent parallel contexts from touching the counter during cleanup. If immediate patching is not possible, the most effective compensating control is to avoid the vulnerable code path: unload or blacklist the batman-adv module (e.g. do not modprobe batman-adv / add it to modprobe blacklist) on systems that do not require mesh networking - trade-off: this disables B.A.T.M.A.N. mesh routing entirely. Where batman-adv is required, restrict participation in the mesh to trusted nodes and isolate the mesh L2 segment from untrusted adjacent devices, since exploitation requires an attacker on the same mesh/adjacent network; the trade-off is operational overhead in vetting mesh peers and no protection against an already-trusted-but-compromised node. Reference advisories: https://nvd.nist.gov/vuln/detail/CVE-2026-64095 and the stable commits at https://git.kernel.org/stable/c/.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 16.0 Affected

Share

EUVD-2026-45780 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy