CVE-2026-99235
Publiée le 2026-11-02 · Dernière modification le 2026-11-02
Le sous-système de traçage du noyau Linux contient une erreur de gestion de la mémoire concernant le suivi des histogrammes. Lorsque le noyau crée un histogramme variable, il enregistre incorrectement un pointeur vers un histogramme existant compatible au lieu du fichier d'événement spécifique. Cela permet à un utilisateur de supprimer un déclencheur alors que le système conserve toujours une référence à cette mémoire, entraînant une condition de type « use-after-free » (utilisation après libération).
Un attaquant disposant d'un accès local avec des privilèges restreints peut exploiter cette faille pour provoquer le plantage du système ou potentiellement exécuter du code arbitraire avec des privilèges de niveau noyau. Cela compromettrait totalement la confidentialité, l'intégrité et la disponibilité du serveur. Comme cette exploitation nécessite une authentification locale et présente une faible complexité, le principal obstacle pour un attaquant est d'avoir déjà un pied sur la machine.
DÉTAIL DU VECTEUR CVSS
RÉFÉRENCES
Description officielle du NVD (en anglais)
In the Linux kernel, the following vulnerability has been resolved: tracing: Save the event file instead of the compatible histogram create_field_var_hist() creates a histogram on the matched event to supply a field variable, and records it on the target so it can be torn down later: hist_data = find_compatible_hist(target_hist_data, file); ... /* Save the compatible histogram information */ var_hist->hist_data = hist_data; hist_data is not the histogram it creates. It is one that was already there, whose keys the new one copies. The saved pointer has a single user, unregister_field_var_hists(), which runs when the target is removed: file = hist_data->field_var_hists[i]->hist_data->event_file; find_compatible_hist() matches on keys alone, so it can pick one with no variables of its own. check_var_refs() then returns false and the user can remove it while the target still points at it: BUG: KASAN: slab-use-after-free in event_hist_trigger_free+0x2b2/0x320 Read of size 8 at addr ffff8880093b90e0 by task init/1 Freed by task 1: kfree+0x154/0x420 event_hist_trigger_free+0x1d5/0x320 event_hist_trigger_parse+0x35f3/0x69e0 trigger_process_regex+0x1a6/0x250 Save the event file instead. It is all the dereference ever wanted, and it does not go away when the user removes a trigger.