LiveActive security incident?Get immediate response
CVE Record

CVE-2025-38004: can: bcm: add locking for bcm_op runtime updates

In the Linux kernel, the following vulnerability has been resolved: can: bcm: add locking for bcm_op runtime updates The CAN broadcast manager (CAN BCM) can send a sequence of CAN frames via hrtimer. The content and also the length of the sequence can be changed resp reduced at runtime where the 'currframe' counter is then set to zero. Although this appeared to be a safe operation the updates of 'currframe' can be triggered from user space and hrtimer context in bcm_can_tx(). Anderson Nascimento created a proof of concept that triggered a KASAN slab-out-of-bounds read access which can be prevented with a spin_lock_bh. At the rework of bcm_can_tx() the 'count' variable has been moved into the protected section as this variable can be modified from both contexts too.

HighCVSS 7.3Not KEV-listedUpdated
Glexia's TakeAutomated analysishigh

Security readout for executives and security teams

Plain-English summary

A timing flaw in Linux's CAN Broadcast Manager lets a local, low-privileged user race frame-sequence updates against kernel timer processing. The demonstrated result is a kernel out-of-bounds read; the supplied score also anticipates serious confidentiality and availability impact. It is not described as remotely exploitable.

Executive priority

Prioritize shared or multi-user Linux systems where CAN BCM is available. Local access is required, reducing internet-scale urgency, but the high CVSS score and potential kernel confidentiality and availability effects justify expedited patching. Isolated systems without untrusted local access can follow accelerated maintenance.

Technical view

Userspace can modify a BCM transmit sequence and reset currframe while bcm_can_tx() runs in hrtimer context. Missing synchronization can make currframe or count inconsistent with sequence storage, producing a KASAN-detected slab out-of-bounds read. Referenced fixes add spin_lock_bh protection and move count handling inside the locked section.

Likely exposure

Linux systems running an affected or unpatched vendor kernel with CAN BCM available and accessible to local low-privileged users are most exposed. The bundle lists versions from 2.6.25 through multiple branches up to 6.15, but distribution backports can change status; confirm using vendor package records.

Exploitation context

A researcher-developed proof of concept triggered the KASAN fault. The bundle marks KEV false and provides no evidence of active exploitation. It does not establish reliable privilege escalation or code execution; those outcomes remain unproven.

Researcher notes

No CWE is assigned. The strongest direct evidence is a KASAN slab out-of-bounds read caused by concurrent updates involving currframe and count. The fix addresses synchronization using spin_lock_bh. Exact affected package builds and backport status require per-distribution verification.

Mitigation direction

  • Install a distribution or vendor kernel containing the applicable referenced stable fix.
  • Reboot affected systems so the corrected kernel is active.
  • If patching is delayed, restrict untrusted local access and consult vendor guidance for supported CAN BCM mitigations.
  • For Debian LTS systems, review the cited advisories and apply the vendor-provided security update.

Validation and detection

  • Inventory running kernel packages and identify hosts where CAN BCM is available.
  • Map each build to vendor security notices or backport records; do not rely only on upstream version numbers.
  • Confirm the applicable stable locking commit is present in deployed kernel source or vendor changelogs.
  • After rebooting, verify the expected kernel is running and regression-test legitimate CAN BCM workloads.
Prepared
Confidence
medium
Sources
12

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cve · low confidence lookup

CVE-2025-38004 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
High
CVSS
7.3 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:H

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
3Timeline events
1ADP providers
11Source links

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
7.3CVSS 3.1HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:H1.85.5Linux

Vulnerability scoring details

Base CVSS 3.1 score

7.3High
CVSS 3.1 vector shape for CVE-2025-38004Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:H

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone

Vulnerability timeline

Timeline events are normalized from CVE metadata, CNA source timelines, ADP timelines, and KEV metadata when present.

  1. CVE reservedCVE Program

    The CVE ID was reserved by the assigning CNA.

  2. CVE publishedCVE Program

    The CVE record was published.

  3. CVE updatedCVE Program

    The CVE record metadata indicates this as the latest update time.

ADP provider summaries

CVECVE Program Container
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
LinuxLinuxffd980f976e7fd666c2e61bf8ab35107efd11828, ffd980f976e7fd666c2e61bf8ab35107efd11828, ffd980f976e7fd666c2e61bf8ab35107efd11828, ffd980f976e7fd666c2e61bf8ab35107efd11828, ffd980f976e7fd666c2e61bf8ab35107efd11828, ffd980f976e7fd666c2e61bf8ab35107efd11828, ffd980f976e7fd666c2e61bf8ab35107efd11828, ffd980f976e7fd666c2e61bf8ab35107efd11828unaffected
LinuxLinux2.6.25, 0, 5.4.294, 5.10.238, 5.15.185, 6.1.141, 6.6.93, 6.12.31, 6.14.9, 6.15affected
Weakness

CWE details

No CWE listed

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.