can: j1939: make j1939_session_activate() fail if device is no longer registered
Description
In the Linux kernel, the following vulnerability has been resolved:
can: j1939: make j1939_session_activate() fail if device is no longer registered
syzbot is still reporting
unregister_netdevice: waiting for vcan0 to become free. Usage count = 2
even after commit 93a27b5891b8 ("can: j1939: add missing calls in NETDEV_UNREGISTER notification handler") was added. A debug printk() patch found that j1939_session_activate() can succeed even after j1939_cancel_active_session() from j1939_netdev_notify(NETDEV_UNREGISTER) has completed.
Since j1939_cancel_active_session() is processed with the session list lock held, checking ndev->reg_state in j1939_session_activate() with the session list lock held can reliably close the race window.
Affected products
2- Linux/Linuxv5Range: 5.4
Patches
0No patches discovered yet.
Vulnerability mechanics
AI mechanics synthesis has not run for this CVE yet.
References
7- git.kernel.org/stable/c/46ca9dc978923c5e1247a9e9519240ba7ace413cmitre
- git.kernel.org/stable/c/5d5602236f5db19e8b337a2cd87a90ace5ea776dmitre
- git.kernel.org/stable/c/78d87b72cebe2a993fd5b017e9f14fb6278f2eaemitre
- git.kernel.org/stable/c/79dd3f1d9dd310c2af89b09c71f34d93973b200fmitre
- git.kernel.org/stable/c/ba6f0d1832eeb5eb3a6dc5cb30e0f720b3cb3536mitre
- git.kernel.org/stable/c/c3a4316e3c746af415c0fd6c6d489ad13f53714dmitre
- git.kernel.org/stable/c/ebb0dfd718dd31c8d3600612ca4b7207ec3d923amitre
News mentions
0No linked articles in our index yet.