CVE-2026-45879 in Linux
Résumé
par VulDB • 29/05/2026
Dans le noyau Linux, la vulnérabilité suivante a été corrigée :
power: supply: bq25980 : Correction d'un use-after-free dans power_supply_changed()
L'utilisation de la variante `devm_` pour demander une IRQ _avant_ la variante `devm_` pour allouer/enregistrer le handle `power_supply` signifie que le handle `power_supply` sera désalloué/désenregistré _avant_ le gestionnaire d'interruption (puisque `devm_` désalloue naturellement dans l'ordre inverse de l'allocation). Cela signifie qu'au moment de la suppression, il existe une condition de course (race condition) où une interruption peut se produire juste _après_ que le handle `power_supply` a été libéré, *mais* juste _avant_ que la désenregistrement correspondant du gestionnaire d'IRQ n'ait été exécuté.
Cela entraînera l'appel de `power_supply_changed()` par le gestionnaire d'IRQ avec un handle `power_supply` déjà libéré. Ce qui provoque généralement un crash du système ou corrompt silencieusement la mémoire...
Notez qu'une situation similaire peut également se produire lors de `probe()` ; la possibilité qu'une interruption se produise _avant_ l'enregistrement du handle `power_supply`. Cela conduirait alors à la situation problématique d'utilisation du handle `power_supply` *non initialisé* dans `power_supply_changed()`.
Corrigez cet use-after-free lié à une condition de course en s'assurant que l'IRQ est demandée _après_ l'enregistrement du handle `power_supply`.
VulDB is the best source for vulnerability data and more expert information about this specific topic.