CVE-2026-99219
Publiée le 2026-11-02 · Dernière modification le 2026-11-02
Le sous-système ftrace du noyau Linux, utilisé pour le traçage des appels de fonctions, contient un bug où certaines variables ne sont pas correctement initialisées. Lorsque le système tente de rechercher le nom d'un module lors d'un processus de chargement ou de déchargement, un échec peut laisser des données résiduelles (« garbage data ») en mémoire. Si un utilisateur tente de lire le fichier `available_filter_functions` durant cet intervalle spécifique, le noyau tente de traiter ces données invalides comme une adresse mémoire réelle.
Un attaquant peut exploiter cela pour provoquer un « kernel panic », entraînant un plantage complet du système et une perte de disponibilité. Il s'agit d'une attaque par déni de service qui nécessite un accès local au système pour lire les fichiers ftrace spécifiques. Comme elle repose sur une condition de concurrence (race condition) précise lors du chargement des modules, elle est difficile à déclencher de manière fiable, mais ne nécessite aucun privilège particulier au-delà de la capacité de lire les fichiers de traçage du noyau.
RÉFÉRENCES
Description officielle du NVD (en anglais)
In the Linux kernel, the following vulnerability has been resolved: ftrace: Initialize modname and offset in print_rec() print_rec() leaves 'modname' and 'offset' uninitialized and kallsyms_lookup() only sets them on success. When the lookup fails like when a module is being loaded or unloaded, 'modname' holds a garbage value, passes the 'if (modname)' check, and is dereferenced by seq_printf(). Oops: general protection fault RIP: 0010:string+0x48/0xe0 Call Trace: vsnprintf+0x1f5/0x650 seq_printf+0x8e/0xb0 print_rec+0x6c/0xc0 t_show+0x4c/0x440 seq_read_iter+0x119/0x480 This can be triggered by reading available_filter_functions while a module is being loaded or unloaded. Initialize both variables so a failed lookup skips the module name.