CVE-2026-31582 | Linux Kernel up to 6.12.82/6.18.23/6.19.13/7.0.0 hwmon powerz_disconnect use after free
VulDBArchived Apr 24, 2026✓ Full text saved
A vulnerability, which was classified as critical , was found in Linux Kernel up to 6.12.82/6.18.23/6.19.13/7.0.0 . Affected by this issue is the function powerz_disconnect of the component hwmon . The manipulation results in use after free. This vulnerability is reported as CVE-2026-31582 . The attacker must have access to the local network to execute the attack. No exploit exists. You should upgrade the affected component.
Full text archived locally
✦ AI Summary· Claude Sonnet
VDB-359383 · CVE-2026-31582 · GCVE-0-2026-31582
LINUX KERNEL UP TO 6.12.82/6.18.23/6.19.13/7.0.0 HWMON POWERZ_DISCONNECT USE AFTER FREE
HISTORYDIFFRELATEJSONXMLCTI
CVSS Meta Temp Score Current Exploit Price (≈) CTI Interest Score
7.6 $5k-$25k 0.00+
Summaryinfo
A vulnerability has been found in Linux Kernel up to 6.12.82/6.18.23/6.19.13/7.0.0 and classified as critical. This affects the function powerz_disconnect of the component hwmon. This manipulation causes use after free. This vulnerability appears as CVE-2026-31582. There is no available exploit. The affected component should be upgraded.
Detailsinfo
A vulnerability has been found in Linux Kernel up to 6.12.82/6.18.23/6.19.13/7.0.0 and classified as critical. Affected by this vulnerability is the function powerz_disconnect of the component hwmon. The manipulation with an unknown input leads to a use after free vulnerability. The CWE definition for the vulnerability is CWE-416. Referencing memory after it has been freed can cause a program to crash, use unexpected values, or execute code. As an impact it is known to affect confidentiality, integrity, and availability. The summary by CVE is:
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.
It is possible to read the advisory at git.kernel.org. This vulnerability is known as CVE-2026-31582 since 03/09/2026. The exploitation appears to be easy. Technical details of the vulnerability are known, but there is no available exploit. The pricing for an exploit might be around USD $5k-$25k at the moment (estimation calculated on 04/24/2026).
Upgrading to version 6.12.83, 6.18.24, 6.19.14 or 7.0.1 eliminates this vulnerability. Applying the patch c78e1d4e48f23792adaa7c94251e22b0d9700a39/9e1b798257f96d2e2a2639830eb71add545ce749/7003ae4810ca83f0ddca85b768500e313c4b998c/61f2aa23b0ce8d7aa5071ed25a7471e246a4fdd4 is able to eliminate this problem. The bugfix is ready for download at git.kernel.org. The best possible mitigation is suggested to be upgrading to the latest version.
Productinfo
Type
Operating System
Vendor
Linux
Name
Kernel
Version
6.12.0
6.12.1
6.12.2
6.12.3
6.12.4
6.12.5
6.12.6
6.12.7
6.12.8
6.12.9
6.12.10
6.12.11
6.12.12
6.12.13
6.12.14
6.12.15
6.12.16
6.12.17
6.12.18
6.12.19
6.12.20
6.12.21
6.12.22
6.12.23
6.12.24
6.12.25
6.12.26
6.12.27
6.12.28
6.12.29
6.12.30
6.12.31
6.12.32
6.12.33
6.12.34
6.12.35
6.12.36
6.12.37
6.12.38
6.12.39
6.12.40
6.12.41
6.12.42
6.12.43
6.12.44
6.12.45
6.12.46
6.12.47
6.12.48
6.12.49
6.12.50
6.12.51
6.12.52
6.12.53
6.12.54
6.12.55
6.12.56
6.12.57
6.12.58
6.12.59
6.12.60
6.12.61
6.12.62
6.12.63
6.12.64
6.12.65
6.12.66
6.12.67
6.12.68
6.12.69
6.12.70
6.12.71
6.12.72
6.12.73
6.12.74
6.12.75
6.12.76
6.12.77
6.12.78
6.12.79
6.12.80
6.12.81
6.12.82
6.18.0
6.18.1
6.18.2
6.18.3
6.18.4
6.18.5
6.18.6
6.18.7
6.18.8
6.18.9
6.18.10
6.18.11
6.18.12
6.18.13
6.18.14
6.18.15
6.18.16
6.18.17
6.18.18
6.18.19
6.18.20
6.18.21
6.18.22
6.18.23
6.19.0
6.19.1
6.19.2
6.19.3
6.19.4
6.19.5
6.19.6
6.19.7
6.19.8
6.19.9
6.19.10
6.19.11
6.19.12
6.19.13
7.0
License
open-source
Website
Vendor: https://www.kernel.org/
CPE 2.3info
🔒
🔒
🔒
CPE 2.2info
🔒
🔒
🔒
CVSSv4info
VulDB Vector: 🔒
VulDB Reliability: 🔍
CVSSv3info
VulDB Meta Base Score: 8.0
VulDB Meta Temp Score: 7.6
VulDB Base Score: 8.0
VulDB Temp Score: 7.6
VulDB Vector: 🔒
VulDB Reliability: 🔍
CVSSv2info
Vector Complexity Authentication Confidentiality Integrity Availability
Unlock Unlock Unlock Unlock Unlock Unlock
Unlock Unlock Unlock Unlock Unlock Unlock
Unlock Unlock Unlock Unlock Unlock Unlock
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploitinginfo
Class: Use after free
CWE: CWE-416 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒
Physical: No
Local: No
Remote: Partially
Availability: 🔒
Status: Not defined
Price Prediction: 🔍
Current Price Estimation: 🔒
0-Day Unlock Unlock Unlock Unlock
Today Unlock Unlock Unlock Unlock
Threat Intelligenceinfo
Interest: 🔍
Active Actors: 🔍
Active APT Groups: 🔍
Countermeasuresinfo
Recommended: Upgrade
Status: 🔍
0-Day Time: 🔒
Upgrade: Kernel 6.12.83/6.18.24/6.19.14/7.0.1
Patch: c78e1d4e48f23792adaa7c94251e22b0d9700a39/9e1b798257f96d2e2a2639830eb71add545ce749/7003ae4810ca83f0ddca85b768500e313c4b998c/61f2aa23b0ce8d7aa5071ed25a7471e246a4fdd4
Timelineinfo
03/09/2026 CVE reserved
04/24/2026 +45 days Advisory disclosed
04/24/2026 +0 days VulDB entry created
04/24/2026 +0 days VulDB entry last update
Sourcesinfo
Vendor: kernel.org
Advisory: git.kernel.org
Status: Confirmed
CVE: CVE-2026-31582 (🔒)
GCVE (CVE): GCVE-0-2026-31582
GCVE (VulDB): GCVE-100-359383
Entryinfo
Created: 04/24/2026 17:48
Changes: 04/24/2026 17:48 (59)
Complete: 🔍
Cache ID: 99:EF6:101
Discussion
No comments yet. Languages: en.
Please log in to comment.
◂ PreviousOverviewNext ▸