ZeroHour

CVE-2026-80707

large

Uninitialized Memory Disclosure in Linux Kernel CAN J1939 Transport Layer

CVSS 3.1
7.5 high
EPSS
<1%p26
Published
()
Modified
AI analysis

The Linux kernel's SAE J1939 (CAN bus) transport implementation failed to zero the receive buffer allocated in j1939_session_fresh_new(), so buffers could be delivered containing residual, uninitialized kernel heap data. The flaw is triggered when a J1939 transport/ETP session allocates a buffer that is not fully written before being handed to the receiver, letting stale kernel memory be exposed to a process using AF_CAN/J1939 sockets or to a peer able to reach the CAN endpoint, consistent with the assigned network-vector CVSS. The impact is confidentiality only (CVSS 3.1 score 7.5, C:H/I:N/A:N): an attacker can potentially read fragments of kernel memory, with no corruption or crash of the system. Only systems running Linux kernels with CAN J1939 support enabled and actually in use are affected, which typically means automotive, agricultural, marine and industrial gateways and telematics devices rather than ordinary servers or desktops. No public proof-of-concept is known, the flaw is not in CISA's KEV catalog, and EPSS estimates only about a 0.3% chance of exploitation within 30 days.

What to do: Install a kernel update from your distribution that includes the upstream fix for CVE-2026-80707 (the patch zeroes the allocated session buffer); do not rely on unpatched kernels on devices that expose J1939. First check whether CONFIG_CAN_J1939 is enabled and whether any process actually uses AF_CAN/J1939 sockets - if not, the system is not affected and no urgent action is needed. As an interim mitigation, restrict untrusted local users' access to J1939 sockets and avoid exposing CAN endpoints to untrusted networks.

Affected
Linux kernel - CAN J1939 transport (can: j1939, j1939_session_fresh_new())
Estimated exposure
large≈ tens of thousands to low hundreds of thousands of embedded Linux systems (vehicle/industrial gateways and telematics units) with J1939 in use (estimate) — No public install counts exist for the kernel's socketCAN J1939 subsystem, so the estimate reflects that SAE J1939 is the standard CAN protocol stack for heavy-duty vehicles and industrial equipment where Linux-based gateways and…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

In the Linux kernel, the following vulnerability has been resolved: can: j1939: transport: j1939_session_fresh_new(): initialize receive buffer Zero the allocated buffer in j1939_session_fresh_new() to ensure it contains no residual data. While there is a potential performance impact if users allocate maximum sized ETP buffers, most real-world use cases are not noticeably affected since the maximum known buffer size is typically around 65K. [mkl: add Message-ID]

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

In the news

No ingested article mentions this CVE yet.