Уязвимость в OverlayFS, позволяющая повысить свои привилегии

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 3262
Зарегистрирован: 20.08.2022

#

Уязвимость в OverlayFS, позволяющая повысить свои привилегии
Дата публикации:Fri, 24 Mar 2023 11:12:43 +0300




В ядре Linux в реализации файловой системы OverlayFS выявлена уязвимость (CVE-2023-0386), которую можно использовать для получения root-доступа на системах, в которых установлена подсистема FUSЕ и разрешено монтирование разделов OverlayFS непривилегированным пользователем (начиная с ядра Linux 5.11 с включением непривилегированных user namespace). Проблема устранена в ветке ядра 6.2. Публикацию обновлений пакетов в дистрибутивах можно проследить на страницах: Debian, Ubuntu, Gentoo, RHEL, SUSE, Fedora, Arch.






Атака производится через копирование файлов с флагами setgid/setuid из раздела, примонтированного в режиме nosuid, в раздел OverlayFS, имеющий слой, связанный с разделом, допускающим выполнение suid-файлов. Уязвимость близка к проблеме
CVE-2021-3847, выявленной в 2021 году, но отличается более низкими требованиями к эксплуатации - в старой проблеме требовались манипуляции с xattrs, которые ограничены при использования пространств имён идентификаторов пользователя (user namespace), а в новой проблеме используются биты setgid/setuid, которые специально не обрабатываются в user namespace.



Алгоритм совершения атаки:
  • При помощи подсистемы FUSE монтируется ФС, в которой имеется принадлежащий пользователю root исполняемый файл с флагами setuid/setgid, доступным всем пользователям на запись. При монтировании FUSE выставляет режим "nosuid".

    Отменяются (unshare) пространства имён пользователей и точек монтирования (user/mount namespace).

    Монтируется OverlayFS с указанием ранее созданной в FUSE ФС в качестве нижнего слоя и верхним слоем на базе каталога, допускающего возможность записи. Каталог верхнего слоя должен размещаться в ФС, при монтировании которой не используется флаг "nosuid".
    Для suid-файла в FUSE-разделе утилитой touch меняется время модификации, что приводит к его копированию в верхний слой OverlayFS.
    При копировании ядро не убирает флаги setgid/setuid, что приводит к тому, что файл появляется в разделе, допускающем обработку setgid/setuid.
    Для получения прав root достаточно запустить файл с флагами setgid/setuid из каталога, прикреплённого к верхнему слою OverlayFS.


Дополнительно можно отметить раскрытие исследователями из команды Google Project Zero сведений о трёх уязвимостях, которые были исправлены в основной ветке ядра Linux 5.15, но не были перенесены в пакеты с ядром из RHEL 8.x/9.x и CentOS Stream 9.
  • CVE-2023-1252 - обращение к уже освобождённой области памяти в структуре ovl_aio_req при одновременном совершении нескольких операций в OverlayFS, развёрнутой поверх ФС Ext4. Потенциально уязвимость позволяет повысить свои привилегии в системе.



    CVE-2023-0590 - обращение к уже освобождённой области памяти в функции qdisc_graft(). Предполагается, что эксплуатация ограничивается аварийным завершением.



    CVE-2023-1249 - обращение к уже освобождённой области памяти в коде записи coredump, возникающее из-за пропущенного вызова mmap_lock в file_files_note.
    Предполагается, что эксплуатация ограничивается аварийным завершением.


Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=58857

Жизнь за Нер'зула!

Ответить