CVE-2026-80706
High · 7.8CVSS
7.8
EPSS
0.1%
Published
Aug 28, 2026
CISA due date
—
Cloudanix analysis
A bug in how certain Linux systems load firmware for a CAN network card lets a logged-in user damage the core operating system and potentially take full control.
- Exploitation
- Local Privilege
- Attacker needs
- Low Privilege
- Complexity
- Low
- Impact
- Full Compromise
- Component
- OS kernel
- Class
- Buffer Overflow
- Remediation
- Patch
- Effort
- Medium
- Patch risk
- Low
What it actually does
Missing bounds validation in fw_parse() allows reads past the end of a supplied firmware blob and uncontrolled writes into DPRAM using wrap-prone arithmetic, resulting in kernel memory corruption.
Why it matters to the business
Local users on affected Linux systems can crash the kernel or execute arbitrary code, leading to denial of service or full host compromise on machines using the softing CAN driver.
How an attack unfolds
An attacker supplies a truncated or malformed firmware image to the softing CAN driver; the parser reads beyond the blob and performs unbounded DPRAM writes, corrupting kernel memory and allowing code execution or system crash.
How to fix it
Apply the upstream fix that passes the firmware end pointer to the parser, uses a wide signed offset for DPRAM bounds, and validates both source records and staging copies before any write.
How to confirm the fix worked
Confirm the patched kernel contains the commit that adds firmware-end validation and signed wide offsets; recompile the softing driver and test with deliberately truncated firmware images to ensure no out-of-bounds access occurs.
Typical attack path
- Obtain local access on a system exposing the softing CAN driver
- Craft a firmware blob with an undersized record header or payload
- Load the blob via the driver's firmware interface
- Trigger out-of-bounds reads and wrap-prone DPRAM address calculations
- Achieve kernel memory corruption leading to privilege escalation or DoS
How to detect it
Review kernel logs for softing driver oops or firmware load errors; look for unusual DPRAM access patterns or crashes originating from the can/softing module after firmware upload attempts.
What your security team should do
- Prioritize kernel updates on any host that loads softing CAN firmware
- Restrict local access to systems with the driver enabled until patched
- Monitor for future CVEs in CAN firmware parsers and enable kernel hardening options such as KASAN during testing
The record
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.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|