CVE-2026-46073: hwmon: (powerz) Fix missing usb_kill_urb() on signal interrupt

Published May 27, 2026
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

hwmon: (powerz) Fix missing usbkillurb() on signal interrupt

waitforcompletioninterruptibletimeout() returns -ERESTARTSYS when interrupted. This needs to abort the URB and return an error. No data has been received from the device so any reads from the transfer buffer are invalid.

The original code tests !ret, which only catches the timeout case (0). On signal delivery (-ERESTARTSYS), !ret is false so the function skips usbkillurb() and falls through to read from the unfilled transfer buffer.

Fix by capturing the return value into a long (matching the function return type) and handling signal (negative) and timeout (zero) cases with separate checks that both call usbkillurb() before returning.

Affected Software

4 affected components
Linux Linux kernel (hwmon powerz driver)
Linux Linux kernel>=6.7<6.12.86
Linux Linux kernel>=6.13<6.18.27
Linux Linux kernel>=6.19<7.0.4

Event History

May 27, 2026
CVE Published
via MITRE·12:58 PM
Data Sourced
via MITRE·12:58 PM
Description
Data Sourced
via NVD·02:17 PM
RemedyDescriptionSeverityAffected Software

Frequently Asked Questions

1

Who is exposed to this issue?

Systems using the Linux kernel hwmon powerz driver are affected. Exploitation requires local access with low privileges.

2

What conditions are required to trigger the flaw?

A signal must interrupt the driver's wait for a USB request completion. In the vulnerable path, the driver then reads an unfilled transfer buffer because the outstanding URB was not aborted.

3

What is the impact of successful exploitation?

The stated CVSS vector indicates availability impact only, with no confidentiality or integrity impact. The severity is medium, with a CVSS 3.1 score of 5.5.

4

What does the fix change?

The fix handles both timeout and signal-interruption return values separately. In either case it calls usb_kill_urb() and returns an error rather than reading the transfer buffer.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203