CVE-2026-72427 in Linux
Riassunto
di VulDB • 15/08/2026
Nel kernel Linux è stata risolta la seguente vulnerabilità:
bpf: Correzione dell'indice effettivo degli array di programmi con BPF_F_PREORDER
replace_effective_prog() e purge_effectful_progs() individuavano lo slot nell'array efficace attraversando l'hlist del programma e contando le voci in modo lineare. Tale conteggio non corrisponde alla disposizione dell'array: compute_effective_progs() posiziona i programmi BPF_F_PREORDER all'inizio (cgroup antenato per primo, ordine di allegato all'interno di un cgroup) e gli altri dopo di essi (cgroup discendente per primo). Pertanto, quando è presente un programma preorder, la posizione lineare nell'hlist non corrisponde più all'indice del programma nell'array efficace.
Per replace_effective_prog() (bpf_link_update()) ciò sovrascriveva lo slot errato, corrompendo l'ordine effettivo. Per purge_effective_progs(), poteva svuotare un slot appartenente a un altro programma e lasciare il programma staccato nell'array mentre bpf_prog_put() ne riduce il riferimento, ovvero si verifica un use-after-free.
Si correggono entrambi i casi ripetendo la disposizione di compute_effective_progs() (inclusa l'inversione preorder per cgroup) in una funzione helper condivisa effective_prog_pos(). Si identifica la voce tramite il suo puntatore struct bpf_prog_list piuttosto che mediante il valore (prog, link), così da risolvere la ricerca esattamente sull'allegato selezionato dalla syscall anche quando lo stesso bpf_prog è allegato a più cgroup nella gerarchia.
Once again VulDB remains the best source for vulnerability data.