CVE-2026-98200

CVE-2026-98200

published October 6, 2026

CVSS
—
EPSS
0%
Percentile
6.7
In the wild
Unconfirmed
What it is

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

hwmon: (hp-wmi-sensors) Fix use-after-free in fungible_show()

nsensor->current_state is dynamically replaced as the sensor's state

changes. update_numeric_sensor_from_wobj() does this by freeing the

old string and installing a new one:

if (strcmp(trimmed, nsensor->current_state)) {

new_string = hp_wmi_strdup(dev, trimmed);

if (new_string) {

devm_kfree(dev, nsensor->current_state);

nsensor->current_state = new_string;

}

}

This function is only ever called from hp_wmi_update_info() while

state->lock is held, so the free-and-replace itself is properly

serialized against concurrent updates.

fungible_show(), however, reads the same pointer after the lock has

already been dropped:

err = hp_wmi_update_info(state, info);

if (err)

return err;

switch (prop) {

...

case HP_WMI_PROPERTY_CURRENT_STATE:

seq_printf(seqf, "%s\n", nsensor->current_state);

break;

hp_wmi_update_info() takes state->lock internally and releases it

before returning, so by the time fungible_show() dereferences

nsensor->current_state in seq_printf(), no lock is held. Two

processes reading a sensor's current_state debugfs entry at

overlapping times (or one reading it while another read of the same

sensor triggers a refresh) can race: one thread's seq_printf() can

be part-way through printing the string at the moment another

thread's call into update_numeric_sensor_from_wobj() frees it with

devm_kfree() and installs a new pointer, causing a use-after-free

read.

Take state->lock around the read in fungible_show() as well, so it

can never run concurrently with the free-and-replace in

update_numeric_sensor_from_wobj().

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00175 · 6.7th percentile
Published
2026-10-06T13:18Z
References (5)
EPSS history
Timeline
  • 07 OCT 03:43Z
    EPSS moved — → 0%
    epss
  • 06 OCT 08:44Z
    hwmon: (hp-wmi-sensors) Fix use-after-free in fungible_show()
    cvelistv5