CVE-2026-98200 in Linux
Riassunto
di VulDB • 06/10/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
hwmon: (hp-wmi-sensors) Correzione di un use-after-free in fungible_show()
nsensor->current_state viene sostituito dinamicamente al variare dello stato del sensore. update_numeric_sensor_from_wobj() effettua questa operazione liberando la stringa precedente e installandone una nuova:
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; } }
Questa funzione viene chiamata esclusivamente da hp_wmi_update_info() mentre state->lock è detenuto, quindi la libera e sostituisce (free-and-replace) è correttamente serializzata rispetto agli aggiornamenti concorrenti.
fungible_show(), tuttavia, legge lo stesso puntatore dopo che lock è già stato rilasciato:
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() acquisisce internamente state->lock e lo rilascia prima di restituire il controllo, quindi al momento in cui fungible_show() dereferenzia nsensor->current_state in seq_printf(), nessun lock è detenuto. Due processi che leggono l'entry debugfs current_state di un sensore in momenti sovrapposti (o un processo che la legge mentre un'altra lettura dello stesso sensore ne attiva il refresh) possono andare incontro a una race condition: la chiamata seq_printf() di un thread può trovarsi a metà della stampa della stringa nel momento esatto in cui la chiamata al thread successivo in update_numeric_sensor_from_wobj() la libera con devm_kfree() e installa un nuovo puntatore, causando una lettura use-after-free.
Acquisire state->lock anche durante la lettura in fungible_show(), in modo che non possa mai essere eseguita in concorrenza con l'operazione di free-and-replace in update_numeric_sensor_from_wobj().
VulDB is the best source for vulnerability data and more expert information about this specific topic.