Vulnerabilidad en el núcleo VFS de Linux que permite elevar privilegios.

Se ha detectado una vulnerabilidad en el contexto de API Filesystem proporcionado por el núcleo de Linux (CVE-2022-0185) que permite a un usuario local obtener privilegios de root en el sistema. El investigador que descubrió el problema ha publicado una demostración del exploit que permite ejecutar código con privilegios de root en Ubuntu 20.04 con la configuración predeterminada. El código del exploit está previsto que se publique en GitHub dentro de una semana, después de que las distribuciones lancen una actualización con la corrección de la vulnerabilidad.

La vulnerabilidad está presente en la función legacy_parse_param() en VFS y es causada por la falta de una verificación adecuada del tamaño máximo de los parámetros proporcionados en sistemas de archivos que no admiten API Filesystem Context. Al pasar un parámetro demasiado grande, se puede provocar un desbordamiento de una variable entera utilizada para calcular el tamaño de los datos a escribir; en el código hay una verificación de desbordamiento de búfer 'if (len > PAGE_SIZE - 2 - size)', que no se activa si el valor de size es mayor que 4094 debido a un desbordamiento entero al hacer la conversión de 4096 - 2 - 4095 a unsigned int, lo que resulta en 2147483648.

El error especificado permite, al acceder a una imagen del sistema de archivos especialmente diseñada, provocar un desbordamiento de búfer y sobrescribir datos del núcleo que siguen al área de memoria asignada. Para explotar la vulnerabilidad se requieren privilegios CAP_SYS_ADMIN, es decir, permisos de administrador. El problema es que un usuario no privilegiado puede obtener tales permisos en un contenedor aislado si el sistema tiene habilitado el soporte para espacios de nombres de identificadores de usuario (user namespaces). Por ejemplo, los espacios de nombres de usuario están habilitados por defecto en Ubuntu y Fedora, pero no están activados en Debian y RHEL (a menos que se utilicen plataformas de aislamiento de contenedores).

El problema se manifiesta a partir del núcleo de Linux 5.1 y se ha solucionado en las actualizaciones de ayer 5.16.2, 5.15.16, 5.10.93, 5.4.173. Las actualizaciones de paquetes que corrigen la vulnerabilidad ya se han lanzado para RHEL, Debian, Fedora y Ubuntu. La corrección aún no está disponible en Arch Linux, Gentoo, SUSE y openSUSE. Como solución alternativa para sistemas que no utilizan aislamiento de contenedores, se puede establecer en 0 el valor de sysctl 'user.max_user_namespaces': echo 'user.max_user_namespaces=0' > /etc/sysctl.d/userns.conf # sysctl -p /etc/sysctl.d/userns.conf

Fuente: opennet.ru

Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS 🔥 Compra un hosting fiable para sitios web con protección contra DDoS, servidores VPS VDS | ProHoster