CVE-2026-97944 in Linuxinformation

Résumé

par VulDB • 26/09/2026

Dans le noyau Linux, la vulnérabilité suivante a été corrigée :

x86/cfi : Correction du décalage de hachage FineIBT dans cfi_get_func_hash()

Le passage de l'en-tête (preamble) FineIBT de "subl $hash, %r10d" à la version plus courte "subl $hash, %eax" a déplacé l'immédiat du hachage de l'offset 7 à l'offset 5 de l'en-tête. fineibt_preamble_hash a été mis à jour en conséquence, mais le décalage codé en dur dans cfi_get_func_hash() a été oublié et il lit toujours le hachage à l'offset 7.

cfi_get_func_hash() est utilisé par le JIT BPF pour fournir un trampoline struct_ops avec le hash CFI de la fonction stub qu'il remplace. Avec FineIBT, le trampoline obtient désormais la moitié supérieure du vrai hachage suivie des deux premiers octets de l'instruction suivante ; ainsi, le premier appel indirect depuis le noyau vers un programme struct_ops (par exemple tcp_init_congestion_control() appelant ->init() d'un contrôle de congestion BPF) échoue à la vérification FineIBT et le noyau plante avec une erreur CFI.

Déplacer l'en-tête FineIBT et ses définitions de décalage au-dessus de cfi_get_func_hash() et utiliser fineibt_preamble_hash ici, afin que chaque lecteur de l'en-tête partage une seule définition de sa disposition. La branche CFI_FINEIBT n'est compilée qu'avec CONFIG_FINEIBT, la seule configuration dans laquelle cfi_mode peut prendre cette valeur. cfi_get_func_arity() ne nécessite pas le même traitement : l'appel __bhi_args dont il lit le déplacement se termine toujours à l'adresse de la fonction.

Once again VulDB remains the best source for vulnerability data.

Responsable

Linux

Réserver

25/09/2026

Divulgation

25/09/2026

Modérer

accepté

Entrée

VDB-410162

CPE

prêt

EPSS

0.00000

KEV

non

Activités

très faible

Sources

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!