Выпуск Bubblewrap 0.8, прослойки для создания изолированных окружений
Автор
Сообщение
news_bot ®
Стаж: 6 лет 9 месяцев
Сообщений: 27286
Доступен выпуск инструментария для организации работы изолированных окружений Bubblewrap 0.8, как правило используемый для ограничения отдельных приложений непривилегированных пользователей. На практике Bubblewrap применяется проектом Flatpak в качестве прослойки для изоляции запускаемых из пакетов приложений. Код проекта написан на языке Си и распространяется под лицензией LGPLv2+.
Для изоляции используются традиционные для Linux технологии контейнерной виртуализации, основанные на использовании cgroups, пространств имён (namespaces), Seccomp и SELinux. Для выполнения привилегированных операций по настройке контейнера Bubblewrap запускается с правами root (исполняемый файл c suid-флагом) с последующим сбросом привилегий после завершения инициализации контейнера.
Активация в системе пространств имён идентификаторов пользователя (user namespaces), позволяющих использовать в контейнерах собственный отдельный набор идентификаторов, для работы не требуется, так как по умолчанию не работает во многих дистрибутивах (Bubblewrap позиционируется как ограниченная suid-реализация подмножества возможностей user namespaces - для исключения всех идентификаторов пользователей и процессов из окружения, кроме текущего, используются режимы CLONE_NEWUSER и CLONE_NEWPID). Для дополнительной защиты исполняемые под управлением
Bubblewrap программы запускаются в режиме PR_SET_NO_NEW_PRIVS, запрещающем получение новых привилегий, например, при наличии флага setuid.
Изоляция на уровне файловой системы производится через создание по умолчанию нового пространства имён точек монтирования (mount namespace), в котором при помощи tmpfs создаётся пустой корневой раздел. В данный раздел при необходимости прикрепляются разделы внешней ФС в режиме "mount --bind" (например, при запуске c опцией "bwrap --ro-bind /usr /usr" раздел /usr пробрасывается из основной системы в режиме только для чтения). Сетевые возможности ограничиваются доступом к loopback-интерфейсу с изоляцией сетевого стека через флаги CLONE_NEWNET и CLONE_NEWUTS.
Ключевым отличием от похожего проекта Firejail, который также использует модель запуска с применением setuid, является то, что в Bubblewrap прослойка для создания контейнеров включает только необходимый минимум возможностей, а все расширенные функции, необходимые для запуска графических приложений, взаимодействия с рабочим столом и фильтрации обращений к Pulseaudio, вынесены на сторону Flatpak и выполняются уже после сброса привилегий. Firejail же объединяет в одном исполняемом файле все сопутствующие функции, что усложняет его аудит и поддержание безопасности на должном уровне.
В новом выпуске:
- Добавлена опция "--disable-userns" отключающая создание в sandbox-окружении своего вложенного пространства идентификаторов пользователей
(user namespace).
- Добавлена опция "--assert-userns-disabled" для проверки, что при использовании опции " --disable-userns" задействовано существующее пространство идентификаторов пользователей.
- Повышена информативность сообщений об ошибках, связанных с отключением в ядре настроек CONFIG_SECCOMP и CONFIG_SECCOMP_FILTER.
===========
Источник:
OpenNet.RU
===========
Похожие новости
- Главная ссылка к новости (https://github.com/containers/...)
- OpenNews: Релиз системы самодостаточных пакетов Flatpak 1.14.0
- OpenNews: Проект Celestial развивает сборку Ubuntu с Flatpak вместо Snap
- OpenNews: Выпуск Bubblewrap 0.6, прослойки для создания изолированных окружений
- OpenNews: Дистрибутив Chimera Linux, сочетающий ядро Linux с окружением FreeBSD
- OpenNews: Выпуск системы изоляции приложений Firejail 0.9.72
Похожие новости:
- Выпуск системы изоляции приложений Firejail 0.9.72
- Amazon опубликовал инструментарий для Linux-контейнеров Finch
- В containerd приняты изменения, позволяющие запускать Linux-контейнеры во FreeBSD
- Уязвимость в CRI-O, позволяющая получить root-доступ к хост-окружению
- Выпуск Bubblewrap 0.6, прослойки для создания изолированных окружений
- Выпуск Bubblewrap 0.5.0, прослойки для создания изолированных окружений
- [DevOps, Kubernetes] Различия между Docker, containerd, CRI-O и runc (перевод)
- [Программирование, Java, Промышленное программирование, Тестирование веб-сервисов] Как подружить Redis Cluster c Testcontainers?
- [Java] Обзор модульного и интеграционного тестирования Spring Boot (перевод)
- [Информационная безопасность, Программирование, DevOps] Dockle — Диагностика безопасности контейнеров (перевод)
Теги для поиска: #_bubblewrap, #_container
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 21-Ноя 22:07
Часовой пояс: UTC + 5
Автор | Сообщение |
---|---|
news_bot ®
Стаж: 6 лет 9 месяцев |
|
Доступен выпуск инструментария для организации работы изолированных окружений Bubblewrap 0.8, как правило используемый для ограничения отдельных приложений непривилегированных пользователей. На практике Bubblewrap применяется проектом Flatpak в качестве прослойки для изоляции запускаемых из пакетов приложений. Код проекта написан на языке Си и распространяется под лицензией LGPLv2+. Для изоляции используются традиционные для Linux технологии контейнерной виртуализации, основанные на использовании cgroups, пространств имён (namespaces), Seccomp и SELinux. Для выполнения привилегированных операций по настройке контейнера Bubblewrap запускается с правами root (исполняемый файл c suid-флагом) с последующим сбросом привилегий после завершения инициализации контейнера. Активация в системе пространств имён идентификаторов пользователя (user namespaces), позволяющих использовать в контейнерах собственный отдельный набор идентификаторов, для работы не требуется, так как по умолчанию не работает во многих дистрибутивах (Bubblewrap позиционируется как ограниченная suid-реализация подмножества возможностей user namespaces - для исключения всех идентификаторов пользователей и процессов из окружения, кроме текущего, используются режимы CLONE_NEWUSER и CLONE_NEWPID). Для дополнительной защиты исполняемые под управлением Bubblewrap программы запускаются в режиме PR_SET_NO_NEW_PRIVS, запрещающем получение новых привилегий, например, при наличии флага setuid. Изоляция на уровне файловой системы производится через создание по умолчанию нового пространства имён точек монтирования (mount namespace), в котором при помощи tmpfs создаётся пустой корневой раздел. В данный раздел при необходимости прикрепляются разделы внешней ФС в режиме "mount --bind" (например, при запуске c опцией "bwrap --ro-bind /usr /usr" раздел /usr пробрасывается из основной системы в режиме только для чтения). Сетевые возможности ограничиваются доступом к loopback-интерфейсу с изоляцией сетевого стека через флаги CLONE_NEWNET и CLONE_NEWUTS. Ключевым отличием от похожего проекта Firejail, который также использует модель запуска с применением setuid, является то, что в Bubblewrap прослойка для создания контейнеров включает только необходимый минимум возможностей, а все расширенные функции, необходимые для запуска графических приложений, взаимодействия с рабочим столом и фильтрации обращений к Pulseaudio, вынесены на сторону Flatpak и выполняются уже после сброса привилегий. Firejail же объединяет в одном исполняемом файле все сопутствующие функции, что усложняет его аудит и поддержание безопасности на должном уровне. В новом выпуске:
=========== Источник: OpenNet.RU =========== Похожие новости
|
|
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы не можете скачивать файлы
Текущее время: 21-Ноя 22:07
Часовой пояс: UTC + 5