información sobre la vulnerabilidad () en el núcleo de Linux, que fue utilizada en una competición durante la demostración de la explotación de Ubuntu. La vulnerabilidad permitió a un usuario no privilegiado obtener derechos de root. Existe un exploit funcional, pero aún no ha sido publicado. La vulnerabilidad está presente en la subsistema eBPF, que permite ejecutar controladores para el rastreo, análisis del funcionamiento de los subsistemas y gestión del tráfico, que se ejecutan dentro del núcleo en una máquina virtual especial con JIT.
El problema es causado por un error en la función __reg_bound_offset32(), utilizada para verificar las operaciones de 32 bits en el bytecode BPF. Debido a un cálculo incorrecto de los límites del registro, al procesar aplicaciones BPF especialmente diseñadas, surgieron condiciones para la escritura y lectura de datos fuera del buffer asignado en la memoria del núcleo. El problema apareció en el núcleo 5.5 y más tarde, al portar las correcciones, se trasladó al núcleo 5.4, así como a , que se ofrece en Ubuntu Linux.
Para bloquear la vulnerabilidad se recomienda el parche problemático o prohibir la ejecución de aplicaciones BPF por usuarios no privilegiados estableciendo sysctl kernel.unprivileged_bpf_disabled en valor 1. Estado de la corrección en las distribuciones: , , , y (en los núcleos la modificación problemática no fue transferida).
Fuente: opennet.ru
