CVE-2026-31582

In the Linux kernel, the following vulnerability has been resolved: hwmon: (powerz) Fix use-after-free on USB disconnect After powerz_disconnect() frees the URB and releases the mutex, a subsequent powerz_read() call can acquire the mutex and call powerz_read_data(), which dereferences the freed URB pointer. Fix by: - Setting priv->urb to NULL in powerz_disconnect() so that powerz_read_data() can detect the disconnected state. - Adding a !priv->urb check at the start of powerz_read_data() to return -ENODEV on a disconnected device. - Moving usb_set_intfdata() before hwmon registration so the disconnect handler can always find the priv pointer.
Configurations

Configuration 1 (hide)

OR cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*

History

11 Nov 2026, 23:10

Type Values Removed Values Added
Summary
  • (es) En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta: hwmon: (powerz) Corrección de uso después de liberación en desconexión USB Después de que powerz_disconnect() libera el URB y libera el mutex, una llamada posterior a powerz_read() puede adquirir el mutex y llamar a powerz_read_data(), que desreferencia el puntero URB liberado. Se corrige mediante: - Establecer priv -> urb a NULL en powerz_disconnect() para que powerz_read_data() pueda detectar el estado desconectado. - Añadir una comprobación !priv -> urb al inicio de powerz_read_data() para devolver -ENODEV en un dispositivo desconectado. - Mover usb_set_intfdata() antes del registro de hwmon para que el gestor de desconexión siempre pueda encontrar el puntero priv.

Information

Published : 2026-04-24 15:16

Updated : 2026-11-11 23:10


NVD link : CVE-2026-31582

Mitre link : CVE-2026-31582

CVE.ORG link : CVE-2026-31582


JSON object : View

Products Affected

linux

  • linux_kernel
CWE
CWE-416

Use After Free