CVE-2026-31474
Publiée le 2026-04-22 · Dernière modification le 2026-10-19
Les systèmes Linux utilisant le protocole ISO-TP pour la communication via bus CAN sont affectés par une erreur de gestion de la mémoire. Un utilisateur local disposant de privilèges restreints peut déclencher une condition de type « use-after-free », ce qui pourrait lui permettre de faire planter le système ou d'exécuter du code arbitraire. L'exploitation de cette faille nécessite un accès local à la machine, mais ne requiert aucune interaction particulière de l'utilisateur.
DÉTAIL DU VECTEUR CVSS
RÉFÉRENCES
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
- 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
- 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
- 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
- 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
- 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
- 0b0ca135-0b70-47e7-9f44-1890c2a1c46c
Description officielle du NVD (en anglais)
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.