CVE-2026-31474 In the Linux kernel, the following vulnerability has been resolved: can: isotp: fix tx.buf use-after-free in…
Description
In the Linux kernel, the following vulnerability has been resolved: can: isotp: fix tx.buf use-after-free in isotp_sendmsg() isotp_sendmsg() uses only cmpxchg() on so->tx.state to serialize access to so->tx.buf. isotp_release() waits for ISOTP_IDLE via wait_event_interruptible() and then calls kfree(so->tx.buf). If a signal interrupts the wait_event_interruptible() inside close() while tx.state is ISOTP_SENDING, the loop exits early and release proceeds to force ISOTP_SHUTDOWN and continues to kfree(so->tx.buf) while sendmsg may still be reading so->tx.buf for the final CAN frame in isotp_fill_dataframe(). The so->tx.buf can be allocated once when the standard tx.buf length needs to be extended. Move the kfree() of this potentially extended tx.buf to sk_destruct time when either isotp_sendmsg() and isotp_release() are done.
Affected products and versions
| Product | Affected versions | Fixed in |
|---|---|---|
| Linux 7.0 | earliest → < 7.0 | 7.0 |
| Linux 6.19 | earliest → < 6.19.11 | 6.19.11 |
| Linux 6.18 | earliest → < 6.18.21 | 6.18.21 |
| Linux 6.12 | earliest → < 6.12.80 | 6.12.80 |
| Linux 6.6 | earliest → < 6.6.131 | 6.6.131 |
| Linux | 6.4 | No fix stated |
| Red Hat Enterprise Linux AppStream EUS (v. 10.0) | Versions not published | |
| Red Hat Enterprise Linux AppStream (v. 10) | Versions not published | |
| Red Hat Enterprise Linux AppStream (v. 9) | Versions not published |
Show the 18 other branches Hide the 18 other branches
References
- git.kernel.org git.kernel.org
- git.kernel.org git.kernel.org
- git.kernel.org git.kernel.org
- git.kernel.org git.kernel.org
- git.kernel.org git.kernel.org
Timeline
- Published
- Last modified