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

can: bcm: track a single source interface for ANYDEV timeout/throttle ops

An ANYDEV rx op (ifindex == 0) with an active RX timeout and/or
throttle timer has no defined semantics when matching frames arrive
from several interfaces: bcm_rx_handler() can run concurrently for
the same op on different CPUs, racing hrtimer_cancel()/
bcm_rx_starttimer() against bcm_rx_timeout_handler() and causing
spurious RX_TIMEOUT notifications and last_frames corruption. The
same concurrency lets throttled multiplex frames from different
interfaces clobber the single rx_ifindex/rx_stamp fields shared by
the op.

Add op->if_detected to track the first interface that delivers a
matching frame while a timeout/throttle timer is configured, and
reject frames from any other interface for that op. The claim is
decided in bcm_rx_handler() before hrtimer_cancel() touches
op->timer, so a rejected frame can never disturb the claimed
interface's watchdog. RTR-mode ops are excluded via RX_RTR_FRAME,
independent of kt_ival1/kt_ival2, since those may briefly hold a
stale value from an earlier non-RTR configuration.

The claim is released in bcm_notify() on NETDEV_UNREGISTER and in
bcm_rx_setup() when SETTIMER reconfigures the timer values.

A (re-)claim is only possible on CAN devices in NETREG_REGISTERED
dev->reg_state to cover the release in bcm_notify() where reg_state
becomes NETREG_UNREGISTERING until synchronize_net().
Published: 2026-08-15
Score: 8.1 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The flaw manifests when an ANYDEV receive operation (identified by a zero interface index) is subject to an active RX timeout or throttle timer and receives frames from multiple physical interfaces. The bcm_rx_handler routine can run concurrently on separate CPUs, racing against hrtimer_cancel, bcm_rx_starttimer, and bcm_rx_timeout_handler. This race leads to unsynchronized updates of shared timer structures and frame data, producing spurious RX_TIMEOUT notifications and corrupting the last_frames buffer. The result is degraded reliability of CAN bus communication and the possibility of corrupted or lost frames.

Affected Systems

All Linux kernel builds that include the buggy bcm driver code before the introduction of the op->if_detected field are affected. The issue is present in any kernel that has not yet incorporated the commit that adds the claim logic, regardless of distribution. The affected vendor is Linux, product Linux kernel, with no explicit version range supplied in the CNA data.

Risk and Exploitability

The CVSS score is 8.1, the EPSS score is less than 1%, and the vulnerability is not listed in the CISA KEV catalog. The race condition is local in nature; an attacker would need the ability to inject frames on a CAN bus managed by the kernel. While no public exploit is known, the combination of a race condition and shared timer state raises the likelihood of a successful denial of service or corruption attack in environments where the attacker can influence CAN traffic or where the affected driver manages critical traffic.

Generated by OpenCVE AI on August 18, 2026 at 04:31 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the Linux kernel to a release that contains the commit adding op->if_detected, which resolves the race condition
  • If kernel upgrade is not immediately possible, disable or remove ANYDEV receive operations on CAN interfaces, or configure the interfaces to use dedicated rx_ifindex values to eliminate the race
  • As a temporary safeguard, remove or disable non‑essential CAN bus devices or redirect traffic away from affected interfaces until the patch is applied

Generated by OpenCVE AI on August 18, 2026 at 04:31 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4745-1 linux-6.12 security update
History

Wed, 19 Aug 2026 16:45:00 +0000


Tue, 18 Aug 2026 03:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-362

Tue, 18 Aug 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-366
References
Metrics threat_severity

None

threat_severity

Moderate


Mon, 17 Aug 2026 06:00:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 8.1, 'vector': 'CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N'}


Sat, 15 Aug 2026 20:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-362

Sat, 15 Aug 2026 06:00:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: can: bcm: track a single source interface for ANYDEV timeout/throttle ops An ANYDEV rx op (ifindex == 0) with an active RX timeout and/or throttle timer has no defined semantics when matching frames arrive from several interfaces: bcm_rx_handler() can run concurrently for the same op on different CPUs, racing hrtimer_cancel()/ bcm_rx_starttimer() against bcm_rx_timeout_handler() and causing spurious RX_TIMEOUT notifications and last_frames corruption. The same concurrency lets throttled multiplex frames from different interfaces clobber the single rx_ifindex/rx_stamp fields shared by the op. Add op->if_detected to track the first interface that delivers a matching frame while a timeout/throttle timer is configured, and reject frames from any other interface for that op. The claim is decided in bcm_rx_handler() before hrtimer_cancel() touches op->timer, so a rejected frame can never disturb the claimed interface's watchdog. RTR-mode ops are excluded via RX_RTR_FRAME, independent of kt_ival1/kt_ival2, since those may briefly hold a stale value from an earlier non-RTR configuration. The claim is released in bcm_notify() on NETDEV_UNREGISTER and in bcm_rx_setup() when SETTIMER reconfigures the timer values. A (re-)claim is only possible on CAN devices in NETREG_REGISTERED dev->reg_state to cover the release in bcm_notify() where reg_state becomes NETREG_UNREGISTERING until synchronize_net().
Title can: bcm: track a single source interface for ANYDEV timeout/throttle ops
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-19T16:36:03.316Z

Reserved: 2026-08-09T03:40:39.906Z

Link: CVE-2026-72115

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-15T06:21:25.900

Modified: 2026-08-19T17:20:57.797

Link: CVE-2026-72115

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-08-15T00:00:00Z

Links: CVE-2026-72115 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-18T04:45:04Z

Weaknesses
  • CWE-366

    Race Condition within a Thread