CVE-2025-38665

can: netlink: can_changelink(): fix NULL pointer deref of struct can_priv::do_set_mode

published August 22, 2025

CVSS
—
EPSS
0%
Percentile
4.3
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

can: netlink: can_changelink(): fix NULL pointer deref of struct can_priv::do_set_mode

Andrei Lalaev reported a NULL pointer deref when a CAN device is

restarted from Bus Off and the driver does not implement the struct

can_priv::do_set_mode callback.

There are 2 code path that call struct can_priv::do_set_mode:

- directly by a manual restart from the user space, via

can_changelink()

- delayed automatic restart after bus off (deactivated by default)

To prevent the NULL pointer deference, refuse a manual restart or

configure the automatic restart delay in can_changelink() and report

the error via extack to user space.

As an additional safety measure let can_restart() return an error if

can_priv::do_set_mode is not set instead of dereferencing it

unchecked.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00155 · 4.3th percentile
Published
2025-08-22T16:02Z
EPSS history
Timeline
  • 22 AUG 16:02Z
    can: netlink: can_changelink(): fix NULL pointer deref of struct can_priv::do_set_mode
    cvelistv5