ZeroHour

CVE-2026-80706

niche

Out-of-bounds read/write in Linux kernel CAN softing driver firmware parser

CVSS 3.1
7.8 high
EPSS
<1%p2
Published
()
Modified
AI analysis

The Linux kernel's 'can: softing' driver parses CAN interface firmware records with a parser (fw_parse) that reads a record header, payload, and trailing checksum without knowing the end of the firmware blob, so a truncated or malformed firmware record can cause reads past the end of the blob. The same record also drives writes into the card's DPRAM, where the generic loader's bounds check uses wrap-prone mixed signed arithmetic and the application loader does not bound its staging copy at all, allowing writes beyond the mapped DPRAM. A local attacker or user able to supply a corrupted or truncated firmware blob to the softing driver could trigger out-of-bounds reads and writes in kernel space, potentially leading to memory disclosure, kernel memory corruption, or privilege escalation (CVSS 7.8, local vector). Only systems using Softing CAN interface hardware with the softing driver and its firmware-loading path are affected. There are no known public exploits, the flaw is not in CISA KEV, and EPSS estimates only a 0.1% chance of exploitation in the next 30 days.

What to do: Apply kernel updates that include the resolved patch for the softing firmware parser (no specific fixed version is stated in this data; track your distribution's kernel advisory for the backported fix). Ensure the Softing firmware files on affected systems are the intact, vendor-provided originals, since truncated or user-modified blobs trigger the flaw; systems without Softing CAN hardware are not exposed.

Affected
Linux kernel (can: softing driver)
Estimated exposure
nicheunknown, likely at most thousands of systems (niche Softing CAN interface card driver with a rarely exercised firmware-loading path) — No public scan counts are available; the softing driver supports Softing CAN interface cards used mainly in industrial/embedded setups, and the vulnerable code is reached only when its firmware blob is loaded, so exposure is limited to a…

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: softing: fw_parse(): validate firmware record spans fw_parse() reads a fixed record header, a firmware-provided payload, and a trailing checksum without knowing the end of the firmware blob. A truncated record can therefore make those reads exceed the blob. The same record also supplies addresses and lengths for writes into DPRAM. The generic loader uses wrap-prone mixed signed arithmetic for its bounds check, while the application loader does not bound the staging copy at all. Pass the firmware end to the parser and validate the full source record. Use a signed wide offset for generic DPRAM records and validate the application staging span against the mapped DPRAM before copying.

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

In the news

No ingested article mentions this CVE yet.