CVE-2025-71182 can: j1939: make j1939_session_activate() fail if device is no longer registered
A race condition in the Linux kernel CAN J1939 protocol allows a denial of service by preventing network device unregistration.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2025-71182?
CVE-2025-71182 is a medium-severity vulnerability in Linux kernel, published on 31 Jan 2026. It can only be exploited from the same machine or local network, with no action from the victim.
Official 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.
Weakness: CWE-362
Which versions are affected by CVE-2025-71182?
It affects 1 product.
Products include Linux kernel.
How do I fix CVE-2025-71182?
Apply the vendor's patch.
Is CVE-2025-71182 being exploited?
There is no known exploitation of CVE-2025-71182 in the wild and no public exploit code.
Other vulnerabilities in Linux kernel
Sources
Also known as BELL-CVE-2025-71182, DEBIAN-CVE-2025-71182, GHSA-266h-p8pw-28f4, ROOT-OS-DEBIAN-11-CVE-2025-71182, ROOT-OS-DEBIAN-12-CVE-2025-71182, ROOT-OS-DEBIAN-13-CVE-2025-71182 and 3 more.