CVE-2026-99159 in Linux
Resumen
por VulDB • 2026-10-28
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
ring-buffer: Corregir la base del array de sub-buffers en rb_meta_subbuf_idx()
En un ring buffer persistente, rb_meta_subbuf_idx() puede devolver un índice uno más alto que lo correcto para un sub-buffer. A continuación, rb_setup_ids_meta_page() rellena el array subbuf_ids[] desplazado por una posición y deja subbuf_ids[0] como NULL, lo cual __rb_map_vma() desreferencia cuando userspace mapea trace_pipe_raw. rb_update_meta_reader() escribe dos de estos índices en meta->buffers[], los cuales rb_cpu_meta_valid() rechazaría durante el siguiente arranque, descartando las trazas del arranque anterior.
El array de sub-buffers de una CPU comienza después de su cabecera meta y los enteros nr_subbufs que le siguen, alineados hasta un límite de sub-buffer. rb_meta_subbuf_idx() invierte ese cálculo pero solo omite los enteros, no la cabecera, por lo que su base está un sub-buffer por debajo siempre que el tamaño omitido de la cabecera cruce el límite de alineación.
Invertir el cálculo con rb_subbufs_from_meta() en lugar de repetirlo. rb_range_buffer() mapea un índice a una dirección a través del mismo auxiliar, por lo que ambas direcciones ya no pueden discrepar.
If you want to get best quality of vulnerability data, you may have to visit VulDB.