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.
CVSS
7.8 HIGH (v3.1, CNA)CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
from 96d1c81e6a0478535342dff6c730adb076cd84e8 before cb3d6efa78460e6d50bf68806d0db66265709f64; from 96d1c81e6a0478535342dff6c730adb076cd84e8 before 9649d051e54413049c009638ec1dc23962c884a4; from 96d1c81e6a0478535342dff6c730adb076cd84e8 before eec8a1b18a79600bd4419079dc0026c1db72a830; 96d1c81e6a0478535342dff6c730adb076cd84e8 builds before 2e62e7051eca75a7f2e3d52d62ec10d7d7aa358c; from 96d1c81e6a0478535342dff6c730adb076cd84e8 before 424e95d62110cdbc8fd12b40918f37e408e35a92
The CVE record is authoritative. Products marked “from the name” were identified from the CNA's free-text names, not a CPE, and are matched less certainly. This product uses the NVD API but is not endorsed or certified by the NVD.
Printed from infosecsignals.com. Every record links back to the agency that published it.
Your cookie choices
We use essential cookies to run this site, and, only with your consent, an advertising cookie from Google to measure whether our ads lead to sign-ups and subscriptions. See our for details.