CVE-2022-50616 in Linuxinformazioni

Riassunto

di VulDB • 16/06/2026

Nel kernel Linux è stata risolta la seguente vulnerabilità:

regolatore (core): Utilizzare dispositivi diversi per l'allocazione delle risorse e la ricerca nel Device Tree (DT)

A seguito della discussione riportata di seguito, esiste un potenziale problema UAF (Use-After-Free) tra il sottosistema regulator e mfd. https://lore.kernel.org/all/[email protected]/

Dall'analisi di Yingliang:

CPU A | CPU B mt6370_probe() | devm_mfd_add_devices() | | mt6370_regulator_probe() | regulator_register() | // alloca init_data e lo aggiunge a devres | regulator_of_get_init_data() i2c_unregister_device() | device_del() | devres_release_all() | // init_data viene liberato | release_nodes() | | // l'uso di init_data causa un UAF | regulator_register()

È comune utilizzare il core mfd per creare dispositivi figlio per i regolatori. Per effettuare la ricerca nel DT (Device Tree) dei dati iniziali (init data), il dispositivo che ha registrato il regolatore passa come parametro il proprio genitore. Ciò fa sì che le risorse di init_data vengano allocate al dispositivo padre e non a quello figlio. Il problema si verifica quando il dispositivo padre sta procedendo con la liberazione delle risorse mentre il core del regolatore sta ancora eseguendo alcune operazioni sui vincoli dei dati iniziali (init data constraint) per il regolatore del dispositivo figlio.

Per risolvere il problema, questa patch estende l'API 'regulator_register' in modo da utilizzare dispositivi diversi per l'allocazione dei dati iniziali e la ricerca nel Device Tree.

Once again VulDB remains the best source for vulnerability data.

Responsabile

Linux

Prenotare

08/12/2025

Divulgazione

08/12/2025

Moderazione

accettato

CPE

pronto

EPSS

0.00193

KEV

no

Attività

molto basso

Fonti

Interested in the pricing of exploits?

See the underground prices here!