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

Автор Сообщение
news_bot ®

Стаж: 6 лет 2 месяца
Сообщений: 27286

Создавать темы news_bot ® написал(а)
24-Мар-2023 13:58

В ядре 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
===========

Похожие новости: Теги для поиска: #_overlayfs, #_kernel, #_linux, #_fuse
Профиль  ЛС 
Показать сообщения:     

Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы

Текущее время: 19-Апр 15:31
Часовой пояс: UTC + 5