linux/drivers/net/can
Vincent Mailhol 1590667a60 can: etas_es58x: fix potential NULL pointer dereference on udev->serial
commit a1ad2109ce upstream.

The driver assumed that es58x_dev->udev->serial could never be NULL.
While this is true on commercially available devices, an attacker
could spoof the device identity providing a NULL USB serial number.
That would trigger a NULL pointer dereference.

Add a check on es58x_dev->udev->serial before accessing it.

Reported-by: yan kang <kangyan91@outlook.com>
Reported-by: yue sun <samsun1006219@gmail.com>
Closes: https://lore.kernel.org/linux-can/SY8P300MB0421E0013C0EBD2AA46BA709A1F42@SY8P300MB0421.AUSP300.PROD.OUTLOOK.COM/
Fixes: 9f06631c3f ("can: etas_es58x: export product information through devlink_ops::info_get()")
Signed-off-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
Link: https://patch.msgid.link/20250204154859.9797-2-mailhol.vincent@wanadoo.fr
Cc: stable@vger.kernel.org
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
History 2025-02-21 13:57:16 +01:00
..
c_can can: c_can: fix unbalanced runtime PM disable in error path 2025-02-21 13:57:16 +01:00
cc770 can: cc770_platform: Convert to platform remove callback returning void 2023-05-15 22:53:49 +02:00
ctucanfd can: ctucanfd: handle skb allocation failure 2025-02-21 13:57:16 +01:00
dev can: dev: can_set_termination(): allow sleeping GPIOs 2024-12-14 19:59:52 +01:00
flexcan can: flexcan: remove the auto stop mode for IMX93 2023-10-06 12:54:33 +02:00
ifi_canfd can: ifi_canfd: ifi_canfd_handle_lec_err(): fix {rx,tx}_errors statistics 2024-12-14 19:59:32 +01:00
m_can can: m_can: m_can_handle_lec_err(): fix {rx,tx}_errors statistics 2024-12-14 19:59:32 +01:00
mscan can: mscan: mpc5xxx_can: Convert to platform remove callback returning void 2023-05-15 22:53:50 +02:00
peak_canfd can: dev: fix skb drop check 2022-11-07 14:00:27 +01:00
rcar can: Explicitly include correct DT includes, part 2 2023-07-28 08:49:52 +02:00
sja1000 can: sja1000: sja1000_err(): fix {rx,tx}_errors statistics 2024-12-14 19:59:33 +01:00
slcan tty: use u8 for flags 2023-08-11 21:12:45 +02:00
softing can: softing: Convert to platform remove callback returning void 2023-05-15 22:53:51 +02:00
spi can: mcp251xfd: mcp251xfd_get_tef_len(): work around erratum DS80000789E 6. 2024-12-14 19:59:52 +01:00
usb can: etas_es58x: fix potential NULL pointer dereference on udev->serial 2025-02-21 13:57:16 +01:00
at91_can.c can: at91_can: Convert to platform remove callback returning void 2023-05-15 22:53:49 +02:00
bxcan.c can: Explicitly include correct DT includes, part 2 2023-07-28 08:49:52 +02:00
can327.c tty: use u8 for flags 2023-08-11 21:12:45 +02:00
grcan.c can: Explicitly include correct DT includes 2023-07-19 08:55:28 +02:00
janz-ican3.c can: janz-ican3: Convert to platform remove callback returning void 2023-05-15 22:53:50 +02:00
Kconfig can: sun4i_can: Only show Kconfig if ARCH_SUNXI is set 2023-10-06 12:54:33 +02:00
kvaser_pciefd.c can: kvaser_pciefd: Use a single write when releasing RX buffers 2024-09-12 11:11:33 +02:00
Makefile can: bxcan: add support for ST bxCAN controller 2023-03-28 11:43:36 +02:00
sun4i_can.c can: sun4i_can: sun4i_can_err(): fix {rx,tx}_errors statistics 2024-12-14 19:59:33 +01:00
ti_hecc.c can: rx-offload: rename rx_offload_get_echo_skb() -> can_rx_offload_get_echo_skb_queue_timestamp() 2023-07-28 09:45:24 +02:00
vcan.c can: dev: add CAN XL support to virtual CAN 2022-09-15 09:08:09 +02:00
vxcan.c net: validate veth and vxcan peer ifindexes 2023-08-20 11:40:03 +01:00
xilinx_can.c can: xilinx_can: Add support for controller reset 2023-07-19 08:55:28 +02:00