CVE-2026-31582 Details
Description
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.
A use-after-free vulnerability has been identified in the Linux kernel's Power-Z driver within the hardware monitoring (hwmon) subsystem. This issue arises when the USB disconnect handler frees a USB Request Block (URB) and releases a mutex, allowing a subsequent read operation to access the freed URB pointer. The vulnerability affects the Linux kernel stable tree, specifically in versions prior to the latest patch. The root cause lies in the improper management of the URB lifecycle during USB disconnection, which can be exploited by manipulating the timing of disconnect and read operations.
Users can apply the latest patch available in the Linux kernel stable repository to address this vulnerability. Instructions for downloading the patched version can be found in the Linux kernel documentation.
Metrics
CVSS 4.0 Severity and Vector Strings:
No CVSS 4.0 data is available for this CVE.
CVSS 3.x Severity and Vector Strings:
No data available for CVSS Version 2.0 on this CVE.
No SSVC data is available for this CVE.
References to Advisories, Solutions, and Tools
By selecting these links, you will be leaving this site. These are references gathered from the official CVE record and are not endorsed by Volerion.
| URL | Source(s) | Tag(s) |
|---|---|---|
| https://git.kernel.org/stable/c/08e57f5e1a9067d5fbf33993aa7f51d60b3d13a4 | kernel.org | Patch |
| https://git.kernel.org/stable/c/61f2aa23b0ce8d7aa5071ed25a7471e246a4fdd4 | kernel.org | Patch |
| https://git.kernel.org/stable/c/7003ae4810ca83f0ddca85b768500e313c4b998c | kernel.org | Patch |
| https://git.kernel.org/stable/c/9e1b798257f96d2e2a2639830eb71add545ce749 | kernel.org | Patch |
| https://git.kernel.org/stable/c/c78e1d4e48f23792adaa7c94251e22b0d9700a39 | kernel.org | Patch |
Weakness Enumeration
| CWE-ID | CWE Name | Source |
|---|---|---|
| CWE-416 | Use After Free | [email protected] |
Affected Products
| Product | Versions |
|---|---|
| linux linux kernel | < 6.12.83 >= 6.13, < 6.18.24 >= 6.19, < 6.19.14 >= 7.0, < 7.0.1 |
CPE
Remediation
| |
Change History
4 change records found show changes
| Date | Action | Recorded By |
|---|---|---|
| Jun 17, 2026 | CVE Modified | kernel.org |
| Apr 27, 2026 | Initial Analysis | [email protected] |
| Apr 27, 2026 | CVE Modified | kernel.org |
| Apr 24, 2026 | New CVE Received | kernel.org |