CVE-2021-47459
kernel: can: j1939: j1939_netdev_start(): fix UAF for rx_kref of j1939_priv
Severity
ModerateRed Hat Product Security
CVSS 3.1
Review impact separately from score.
Published · May 22, 2024
Updated · October 30, 2026
Description
In the Linux kernel, the following vulnerability has been resolved:
can: j1939: j1939_netdev_start(): fix UAF for rx_kref of j1939_priv
It will trigger UAF for rx_kref of j1939_priv as following.
cpu0 cpu1
j1939_sk_bind(socket0, ndev0, ...) j1939_netdev_start j1939_sk_bind(socket1, ndev0, ...) j1939_netdev_start j1939_priv_set j1939_priv_get_by_ndev_locked j1939_jsk_add ..... j1939_netdev_stop kref_put_lock(&priv->rx_kref, ...) kref_get(&priv->rx_kref, ...) REFCOUNT_WARN("addition on 0;...")
==================================================== refcount_t: addition on 0; use-after-free. WARNING: CPU: 1 PID: 20874 at lib/refcount.c:25 refcount_warn_saturate+0x169/0x1e0 RIP: 0010:refcount_warn_saturate+0x169/0x1e0 Call Trace: j1939_netdev_start+0x68b/0x920 j1939_sk_bind+0x426/0xeb0 ? security_socket_bind+0x83/0xb0
The rx_kref's kref_get() and kref_put() should use j1939_netdev_lock to protect.
Statement
This vulnerability is rated as having Moderate impact because exploitation requires local system access and interaction with the CAN J1939 networking protocol. The Controller Area Network subsystem is designed for specialized automotive or industrial environments and is not configured or exposed in standard enterprise server or cloud deployments by default. Although memory corruption from a use-after-free condition could lead to a kernel crash or privilege escalation, the requirement for active CAN interfaces substantially limits the realistic exposure for typical installations.
CVSS score applicability
The CVSS score(s) listed for this vulnerability do not reflect the associated product's status, and are included for informational purposes to better understand the severity of this vulnerability.
Mitigation
No mitigation is specified in collected source.
CVSS / CWE
CVSS 3.1 · 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CWE-416 · Use After Free