Skip to content
CVE PROGRAM SOURCE RECORDUnscored

CVE-2025-38665

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

Description

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.

Affected products

Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.

Linux Linux

Default version status: unaffected

  • 39549eef3587f1c1e8c65c88a2400d10fd30ea17 to < 6bbcf37c5114926c99a1d1e6993a5b35689d2599affected
  • 39549eef3587f1c1e8c65c88a2400d10fd30ea17 to < cf81a60a973358dea163f6b14062f17831ceb894affected
  • 39549eef3587f1c1e8c65c88a2400d10fd30ea17 to < 0ca816a96fdcf32644c80cbe7a82c7b6ce6ddda5affected
  • 39549eef3587f1c1e8c65c88a2400d10fd30ea17 to < 6acceb46180f9e160d4f0c56fcaf39ba562822aeaffected
  • 39549eef3587f1c1e8c65c88a2400d10fd30ea17 to < c1f3f9797c1f44a762e6f5f72520b2e520537b52affected

Linux Linux

Default version status: affected

  • 2.6.31affected
  • 0 to < 2.6.31unaffected
  • 6.1.148 to ≤ 6.1.*unaffected
  • 6.6.101 to ≤ 6.6.*unaffected
  • 6.12.41 to ≤ 6.12.*unaffected
  • 6.15.9 to ≤ 6.15.*unaffected
  • 6.16 to ≤ *unaffected

References