Выпуск системы изоляции приложений Firejail 0.9.62

30 декабря 2019 года

После шести месяцев разработки доступен релиз проекта Firejail 0.9.62, в рамках которого развивается система для изолированного выполнения графических, консольных и серверных приложений. Применение Firejail позволяет минимизировать риск компрометации основной системы при запуске не заслуживающих доверия или потенциально уязвимых программ. Программа написана на языке Си, распространяется под лицензией GPLv2 и может работать в любом дистрибутиве Linux с ядром старше 3.0. Готовые пакеты с Firejail подготовлены в форматах deb (Debian, Ubuntu) и rpm (CentOS, Fedora).

Для изоляции в Firejail используются пространства имён (namespaces), AppArmor и фильтрация системных вызовов (seccomp-bpf) в Linux. После запуска программа и все её дочерние процессы используют отдельные представления ресурсов ядра, таких как сетевой стек, таблица процессов и точки монтирования. Зависимые между собой приложения можно объединять в один общий sandbox. При желании Firejail можно применять и для запуска контейнеров Docker, LXC и OpenVZ.

В отличие от средств контейнерной изоляции firejail предельно прост в конфигурации и не требует подготовки системного образа - состав контейнера формируется на лету на основе содержимого текущей ФС и удаляется после завершения работы приложения. Предоставляются гибкие средства задания правил доступа к файловой системе, можно определять к каким файлами и директориям разрешён или запрещён доступ, подключать для данных временные ФС (tmpfs), ограничивать доступ к файлам или директориям только на чтение, совмещать директории через bind-mount и overlayfs.

Для большого числа популярных приложений, в том числе для Firefox, Chromium, VLC и Transmission, подготовлены готовые профили изоляции системных вызовов. Для получения привилегий, необходимых для настройки изолированного окружения, исполняемый файл firejail устанавливается с флагом SUID root (после инициализации привилегии сбрасываются). Для выполнения программы в режиме изоляции достаточно указать имя приложения в качестве аргумента утилиты firejail, например, "firejail firefox" или "sudo firejail /etc/init.d/nginx start".

В новом выпуске:

  • В файл конфигурации /etc/firejail/firejail.config добавлена настройка file-copy-limit, позволяющая ограничить размер файлов, которые будут скопированы в память при использовании опций "--private-*" (по умолчанию ограничение выставлено в 500MB).
  • В каталог /usr/share/doc/firejail добавлены шаблоны для создания новых профилей ограничения приложений.
  • В профилях разрешено использование отладчиков.
  • Улучшена фильтрация системных вызовов при помощи механизма seccomp.
  • Обеспечено автоопределение флагов компилятора.
  • Вызов chroot теперь выполняется не на основе пути, а используя точки монтирования на базе файлового дескриптора.
  • Каталог /usr/share помещён в белый список разнообразных профилей.
  • В секцию conrib добавлены новые вспомогательные скрипты gdb-firejail.sh и sort.py.
  • Усилена защита на стадии выполнения привилегированного кода (SUID).
  • Для профилей реализованы новые условные признаки HAS_X11 и HAS_NET для проверки наличия X-сервера и сетевого доступа.
  • Добавлены профили для изолированного запуска приложений (общее число профилей доведено до 884):
  • i2p,
  • tor-browser (AUR),
  • Zulip,
  • rsync,
  • signal-cli,
  • tcpdump,
  • tshark,
  • qgis,
  • OpenArena,
  • godot,
  • klatexformula,
  • klatexformula_cmdl,
  • links,
  • xlinks,
  • pandoc,
  • teams-for-linux,
  • gnome-sound-recorder,
  • newsbeuter,
  • keepassxc-cli,
  • keepassxc-proxy,
  • rhythmbox-client,
  • jerry,
  • zeal,
  • mpg123,
  • conplay,
  • mpg123.bin,
  • mpg123-alsa,
  • mpg123-id3dump,
  • out123,
  • mpg123-jack,
  • mpg123-nas,
  • mpg123-openal,
  • mpg123-oss,
  • mpg123-portaudio,
  • mpg123-pulse,
  • mpg123-strip,
  • pavucontrol-qt,
  • gnome-characters,
  • gnome-character-map,
  • Whalebird,
  • tb-starter-wrapper,
  • bzcat,
  • kiwix-desktop,
  • bzcat,
  • zstd,
  • pzstd,
  • zstdcat,
  • zstdgrep,
  • zstdless,
  • zstdmt,
  • unzstd,
  • ar,
  • gnome-latex,
  • pngquant,
  • kalgebra,
  • kalgebramobile,
  • amuled,
  • kfind,
  • profanity,
  • audio-recorder,
  • cameramonitor,
  • ddgtk,
  • drawio,
  • unf,
  • gmpc,
  • electron-mail,
  • gist,
  • gist-paste.

Источники

править


 
 
Creative Commons
Эта статья содержит материалы из статьи «Выпуск системы изоляции приложений Firejail 0.9.62», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
 
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.