No núcleo Linux Identificouse unha vulnerabilidade (CVE-2023-0386) na implementación do sistema de ficheiros OverlayFS, que pode ser explotada para obter acceso root en sistemas que teñan instalado o subsistema FUSE e permitir a montaxe de particións OverlayFS por parte dun usuario sen privilexios (comezando polo kernel). Linux 5.11 coa inclusión de espazos de nomes de usuario sen privilexios). O problema foi solucionado na rama do núcleo 6.2. A publicación de actualizacións de paquetes nas distribucións pódese rastrexar nas seguintes páxinas: Debian, Ubuntu, Gentoo, RHEL, SUSE, Fedora, Arquivo.
O ataque realízase copiando ficheiros con indicadores setgid/setuid desde unha partición montada en modo nosuid a unha partición OverlayFS cunha capa vinculada a unha partición que permite a execución de ficheiros suid. A vulnerabilidade é similar á CVE-2021-3847, descuberta en 2021, pero ten requisitos de explotación menores. O problema antigo requiría a manipulación de xattrs, que están restrinxidos ao usar espazos de nomes de usuario, mentres que o novo problema explota os bits setgid/setuid, que non se xestionan especificamente nos espazos de nomes de usuario.
Algoritmo para levar a cabo o ataque:
- O subsistema FUSE úsase para montar un sistema de ficheiros que contén un ficheiro executábel propiedade de root con indicadores setuid/setgid no que todos os usuarios poden escribir. Ao montalo, FUSE establece o modo "nosuid".
- Os espazos de nomes de usuario e montaxe non se comparten.
- Monta OverlayFS usando o sistema de ficheiros FUSE creado previamente como capa inferior e un directorio escribible como capa superior. O directorio da capa superior debe residir nun sistema de ficheiros que non empregue o indicador "nosuid" ao montalo.
- A utilidade touch cambia a hora de modificación dun ficheiro suid nunha partición FUSE, o que fai que se copie á capa superior de OverlayFS.
- Ao copiar, o núcleo non elimina os indicadores setgid/setuid, o que fai que o ficheiro apareza nunha partición que permite a xestión de setgid/setuid.
- Para obter dereitos de root, simplemente executa un ficheiro con indicadores setgid/setuid desde un directorio asociado á capa superior de OverlayFS.
Ademais, investigadores do equipo de Google Project Zero revelaron información sobre tres vulnerabilidades que foron corrixidas na rama principal do kernel. Linux 5.15, pero non foron retroportadas aos paquetes do kernel desde RHEL 8.x/9.x e CentOS Fluxo 9.
- CVE-2023-1252: acceso a unha área de memoria previamente liberada na estrutura ovl_aio_req durante varias operacións simultáneas en OverlayFS despregado sobre Ext4. Esta vulnerabilidade permite potencialmente a escalada de privilexios.
- CVE-2023-0590: Acceso a unha rexión de memoria previamente liberada na función qdisc_graft(). Espérase que a explotación estea limitada a un fallo.
- CVE-2023-1249: Prodúcese unha referencia a unha rexión de memoria previamente liberada no código de escritura de volcado de memoria debido a unha chamada mmap_lock perdida en file_files_note. Espérase que a explotación se limite a un fallo.
Fonte: opennet.ru
