CVE-2026-43380

hwmon: (pmbus/q54sj108a2) fix stack overflow in debugfs read

High · published May 8, 2026

CVSS v3.1
7.8
EPSS
0%
Percentile
8.2
In the wild
Unconfirmed
What it is

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

hwmon: (pmbus/q54sj108a2) fix stack overflow in debugfs read

The q54sj108a2_debugfs_read function suffers from a stack buffer overflow

due to incorrect arguments passed to bin2hex(). The function currently

passes 'data' as the destination and 'data_char' as the source.

Because bin2hex() converts each input byte into two hex characters, a

32-byte block read results in 64 bytes of output. Since 'data' is only

34 bytes (I2C_SMBUS_BLOCK_MAX + 2), this writes 30 bytes past the end

of the buffer onto the stack.

Additionally, the arguments were swapped: it was reading from the

zero-initialized 'data_char' and writing to 'data', resulting in

all-zero output regardless of the actual I2C read.

Fix this by:

1. Expanding 'data_char' to 66 bytes to safely hold the hex output.

2. Correcting the bin2hex() argument order and using the actual read count.

3. Using a pointer to select the correct output buffer for the final

simple_read_from_buffer call.

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00190 · 8.2th percentile
Published
2026-05-08T14:21Z
EPSS history
Timeline
  • 08 MAY 14:21Z
    hwmon: (pmbus/q54sj108a2) fix stack overflow in debugfs read
    cvelistv5