CVE-2024-35917 in Linuxinformation

Résumé

par VulDB • 10/06/2026

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

s390/bpf : Correction de l'arithmétique de pointeurs sur bpf_plt

Kui-Feng Lee a signalé un plantage sur s390x déclenché par le test dummy_st_ops/dummy_init_ptr_arg [1] :

[] 0x2
[] bpf_struct_ops_test_run+0x156/0x250
[] __sys_bpf+0xa1a/0xd00
[] __s390x_sys_bpf+0x44/0x50
[] __do_syscall+0x244/0x300
[] system_call+0x70/0x98

Cela est causé par le déplacement de memcpy() après les affectations dans bpf_jit_plt() par GCC, ce qui entraîne l'écriture de pointeurs NULL au lieu des adresses de retour et de cible.

En examinant les mécanismes internes de GCC, ce réordonnancement est autorisé car l'analyse d'alias considère que la destination de memcpy() et les côtés gauche des affectations sont basés sur des objets différents : new_plt et bpf_plt_ret/bpf_plt_target respectivement, et ne peuvent donc pas s'aliaser.

Ceci est à son tour dû à une violation du standard C :

Lorsque deux pointeurs sont soustraits, ils doivent pointer vers des éléments du même objet tableau, ou vers l'élément suivant le dernier élément de l'objet tableau ...

Du point de vue du C, bpf_plt_ret et bpf_plt sont des objets distincts et ne peuvent pas être soustraits. En termes pratiques, cela perturbe l'analyse d'alias de GCC.

Le code a été écrit de cette manière afin que la partie C connaisse quelques décalages définis dans l'assembleur. Bien que pratique, ce n'est en aucun cas nécessaire. Corrigez la non-conformité en codant en dur ces décalages.

[1] https://lore.kernel.org/bpf/[email protected]/

If you want to get best quality of vulnerability data, you may have to visit VulDB.

Réserver

17/05/2024

Divulgation

19/05/2024

Modérer

accepté

Entrée

VDB-265191

CPE

prêt

EPSS

0.00210

KEV

non

Activités

très faible

Sources

Want to stay up to date on a daily basis?

Enable the mail alert feature now!