Уязвимость во flatpak, позволяющая обойти sandbox-изоляцию

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

#

Уязвимость во flatpak, позволяющая обойти sandbox-изоляцию
Дата публикации:Thu, 18 Apr 2024 21:35:05 +0300




В инструментарии Flatpak, предназначенном для создания самодостаточных пакетов, не привязанных к конкретным дистрибутивам Linux и изолированных от остальной системы, выявлена уязвимость (CVE-2024-32462). Уязвимость позволяет вредоносному или скомпрометированному приложению, поставляемому в пакете flatpak, обойти установленный режим sandbox-изоляции и получить доступ к файлам в основной системе. Проблема проявляется только в пакетах, использующих порталы Freedesktop (xdg-desktop-portal), применяемые для организации доступа к ресурсам пользовательского окружения из изолированных приложений. Уязвимость устранена в корректирующих обновлениях flatpak 1.15.8, 1.14.6, 1.12.9 и 1.10.9. Обходной путь для защиты также предложен в выпусках xdg-desktop-portal 1.16.1 и 1.18.4.




Благодаря уязвимости, находящееся в изолированном окружении приложение может использовать интерфейс xdg-desktop-portal для создания файла ".desktop" с командой запуска приложения из flatpak, позволяющей получить доступ к файлам основной системы. Для выхода из изолированного окружения используются манипуляции с параметром "--command", применяемым для передачи имени программы, нахоядщейся внутри flatpak-пакета, которую нужно запустить в изолированном окружении. Для настройки изолированного окружения flatpak вызывает утилиту bwrap, передавая ей указанное имя программы. Например, для запуска утилиты ls в изолированном окружении пакета можно использовать конструкцию "flatpak run --command=ls org.gnome.gedit" которая приведёт к запуску "bwrap <параметры_изоляции> ls".





Суть уязвимости в том, что если имя программы начинается на символы "--", то оно будет воспринято утилитой bwrap как собственная опция. Например, запуск "flatpak run --command=--bind org.gnome.gedit / /host ls -l /host" приведёт к выполнению "bwrap <параметры_изоляции> --bind / /host ls -l /host", т.е. имя "--bind" будет обработано не как имя запускаемого приложения, а как опция bwrap.




Уязвимость усугубляется тем, что D-Bus интерфейс "org.freedesktop.portal.Background.RequestBackground" позволяет приложению из пакета Flatpak указать любую команду для выполнения при помощи "flatpak run --command", в том числе начинающуюся с символа "--". Подразумевалось, что передача любых команд не опасна, так как они будут выполнены в изолированном окружении пакета. Но не было учтено, что команды, начинающиеся на "--" будут обработаны как опции утилиты bwrap. В итоге, интерфейс xdg-desktop-portal может использоваться для создания файла ".desktop" с командой, эксплуатирующей уязвимость.




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

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

Ответить