Skip to main content
← All vulnerabilities
CVE-2026-80706

can: softing: fw_parse(): validate firmware record spans

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.10.265, 5.15.216, 6.1.183, 6.6.151, 6.12.103, and 2 more
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: total

Summary

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.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: total

  3. Record last updated

Affected versions

  • Linux Linux

    From 03fd3cf5a179da12e6bee5e9d74b648aff68dc4c · fixed in f6d9a6a9512430b395a1940d7b216394fd02d30b; From 03fd3cf5a179da12e6bee5e9d74b648aff68dc4c · fixed in 84c850b08fc0d671c245144b619683129b55690a; From 03fd3cf5a179da12e6bee5e9d74b648aff68dc4c · fixed in d0eac0ea7cf493e787fd7b4a556e43ef03cb4b50; From 03fd3cf5a179da12e6bee5e9d74b648aff68dc4c · fixed in ae588e5b9cc268de1aabf30f939f0870717ca164; From 03fd3cf5a179da12e6bee5e9d74b648aff68dc4c · fixed in ad331e26fd213a19fee0de18cdacd67b7ff5b478; From 03fd3cf5a179da12e6bee5e9d74b648aff68dc4c · fixed in 2ee477e541a6d5e434d6a4041c6b677ab42e1d82; From 03fd3cf5a179da12e6bee5e9d74b648aff68dc4c · fixed in 808ed899dcf8bdef66894fda5eb7ee4bb0eb8dc1; From 03fd3cf5a179da12e6bee5e9d74b648aff68dc4c · fixed in 856d6cb04e5407523566b075841dcd6423757d1c

  • Linux Linux

    2.6.38

  • KernelLinux

    From 2.6.38 · fixed in 5.10.265; From 5.11.0 · fixed in 5.15.216; From 5.16.0 · fixed in 6.1.183; From 6.2.0 · fixed in 6.6.151; From 6.7.0 · fixed in 6.12.103; From 6.13.0 · fixed in 6.18.44; From 6.19.0 · fixed in 7.1.8

References 8

git.kernel.org