URL: https://www.opennet.dev/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 108118
[ Назад ]

Исходное сообщение
"Доступна система изоляции приложений Firejail 0.9.40"

Отправлено opennews , 02-Июн-16 00:57 
Представлен (https://l3net.wordpress.com/2016/04/03/firejail-0-9-40-rc1-r.../) выпуск Firejail 0.9.40 (https://firejail.wordpress.com/), системы изолированного выполнения графических, консольных и серверных приложений. Целью Firejail является минимизация риска компрометации основной системы при запуске не заслуживающих доверия или потенциально уязвимых программ. Для изоляции в Firejail  
используется (https://firejail.wordpress.com/features-3/) механизм пространств имён (namespaces) и фильтрация системных вызовов (seccomp-bpf) в Linux. После запуска программа и все её дочерние процессы используют отдельные представления ресурсов ядра, таких как сетевой стек, таблица процессов и точки монтирования. Зависимые между собой приложения можно объединять в один общий sandbox. Программа написана на языке Си, распространяется (https://github.com/netblue30/firejail) под лицензией GPLv2 и может работать в любом дистрибутиве Linux с ядром старше 3.0. Готовый пакет с Firejail можно установить из Debian jessie-backports (https://packages.debian.org/jessie-backports/firejail).

В отличие от средств контейнерной изоляции firejail предельно прост (https://firejail.wordpress.com/documentation-2/basic-usage/) в конфигурации и не требует подготовки системного образа - состав контейнера формируется на лету на основе содержимого текущей ФС и удаляется после завершения работы приложения. При желании, Firejail можно применять и для запуска контейнеров Docker, LXC и OpenVZ. Предоставляются гибкие средства задания правил доступа к файловой системе, можно определять к каким файлами и директориям разрешён или запрещён доступ, подключать для данных временные ФС (tmpfs), ограничивать доступа к файлам или директориям только на чтение, совмещать директории через bind-mount  и overlayfs. Профили (https://firejail.wordpress.com/documentation-2/building-cust.../) изоляции системных вызовов подготовлены для большого числа популярных приложений, в том числе для Firefox, Chromium, VLC и Transmission. Для выполнения программы в режиме изоляции достаточно указать имя приложения в качестве аргумента  утилиты firejail, например, "firejail firefox" или "sudo firejail /etc/init.d/nginx start".

Особенности новой версии:


-  Поддержка (https://firejail.wordpress.com/documentation-2/x11-guide/) sandbox-окружения X11 со своим X-сервером, в качестве которого могут выступать  Xpra (https://xpra.org/) (подобие (https://www.opennet.dev/opennews/art.shtml?num=37695) утилиты screen для X11) и Xephyr (https://www.freedesktop.org/wiki/Software/Xephyr/) (позволяет запустить X-сервер в окне уже запущенного X-сервера), что даёт возможность организовать запуск приложений на системе без монитора с трансляций вывода на внешний хост;

-  Возможность передачи файлов между  sandbox-окружениями и хост-системой;
-  Поддержка изменения конфигурации во время работы и на этапе компиляции. Через файл конфигурации теперь можно определить какие их механизмов изоляции и безопасности ядра будут задействованы в исполняемом файле Firejail (запускается с флагом SUID root);

-  Поддержка AppArmor. Профили изоляции на базе AppArmor подготовлены для Firefox, Chromium, Evince, Pidgin и Totem;
-  Обеспечена (https://firejail.wordpress.com/documentation-2/grsecurity-notes/) совместимость со сборками ядра Linux, в которых используются патчи Grsecurity (ядро Linux 4.4 c Grsecurity можно найти в Debian testing, unstable и jessie-backports);

-  Новая утилита firecfg для автоматизации настройки параметров изолированного запуска  приложений (для изолированного запуска приложений создаются символические ссылки в /usr/local/bin);
-  Число профилей изоляции приложений доведено (https://github.com/netblue30/firejail/tree/master/etc) до 95. Добавлены новые профили для таких программ, как lxterminal, Epiphany, Vivaldi, qTox, OpenSSH client, OpenBox, dnsmasq, PaleMoon, Icedove,  okular, gwenview, Brave.


URL: https://l3net.wordpress.com/2016/04/03/firejail-0-9-40-rc1-r.../
Новость: http://www.opennet.dev/opennews/art.shtml?num=44534


Содержание

Сообщения в этом обсуждении
"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Аноним , 02-Июн-16 00:57 
Wine приложения умеет изолированно запускать?

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Аноним 84704 , 02-Июн-16 01:12 
https://github.com/netblue30/firejail/blob/master/etc/wine.p...
Должен уметь.

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено barmaglot , 02-Июн-16 14:40 
Теперь вирусы виндоуз можно безопасно выполнять в линукс ...

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Аноним , 02-Июн-16 02:33 
Весьма годная запускалка контейнеров. Вместо громких бла-бла как gnome apps эти просто взяли и запилили. Программы менять не требуется, и вообще.

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Dkg , 02-Июн-16 08:32 
Народобие Sandboxie?

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено stalkerdroad , 03-Июн-16 02:40 
mbox https://github.com/tsgates/mbox https://pdos.csail.mit.edu/archive/mbox/

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Philosonimus , 02-Июн-16 11:13 
А между тем реальная победа над freebsd jail с ardens...

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Аноним , 02-Июн-16 17:10 
>> и фильтрация системных вызовов
> А между тем реальная победа над freebsd jail

А что из них фиолетевее?


"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Аноним , 02-Июн-16 13:02 
Если ипользовать Firejail, то можно default route поменять в контейнере?

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Аноним , 02-Июн-16 13:18 
предположу, что сие можное реализовать через маркировку пакетов от определенного пида через айпитейблс с последующим рулением через ip rule и таблицы рутинга. в теории можно даже автоматизировать

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Аноним , 02-Июн-16 20:36 
У каждого network namespace можно указать свой default route

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Анонис , 03-Июн-16 08:14 
> Если ипользовать Firejail, то можно default route поменять в контейнере?

Создай новый сетевой нэймспэйс и получи свои сетевые адаптеры, правила фаера, маршруты и прочее. Настоящая виртуальная машина со скоростью как у чрута.


"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Онаним , 03-Июн-16 02:01 
Запретить отдельно взятому приложению доступ в Интернет позволяет? Давно ищу что-то, что позволит выпускать в Сеть только те проги, которым это реально надо также легко, как это делается в Windows (AppArmor не помог - не умеет ограничивать Java-приложения а некоторые нативные проги под ним не запускаются вообще даже если всё разрешить).

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено stalkerdroad , 03-Июн-16 03:02 
lxc/docker. И overlayfs чтобы место на диске не перерасходовать.

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Онаним , 03-Июн-16 03:30 
Речь идёт о гуёвых приложениях, ещё и требующих доступа к USB-железу, например, так что про Docker сомневаюсь, LXC - хз.

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Аноним , 03-Июн-16 08:19 
> lxc/docker. И overlayfs чтобы место на диске не перерасходовать.

А зачем? Сабж умеет "временные" пустышки создавать и компоновать вид ФС монтированием. Да еще системные вызовы грамотно обрубает, так что вылезти из грамотно сделанного контейнеа будет достаточно сложно. Эти в отличие от докеров занимались не пиаром а системным программированием.


"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Аноним , 03-Июн-16 08:18 
> Запретить отдельно взятому приложению доступ в Интернет позволяет?

Да. Можно даже веселее: убираешь сеть в дефолтном namespace. Поднимаешь ее только в namespaces в которые пушишь свои избранные проги. Можешь интерфейс в новый namespace переместить, или создать новый MACVLAN на существующем ифэйсе (сабж это умеет).

Вообще, да будет вам не лень прочитать "man ip" от корки до корки, узнаете что Linux умеет делать с сетями очень многое. О половине из этого вы даже не мечтали, а оно есть.


"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено stalkerdroad , 03-Июн-16 13:34 
> Поднимаешь ее только в namespaces в которые пушишь свои избранные проги.

Мне кажется все дочерние процессы также будут иметь доступ в интернет.
Это не как в виндоус. Там ограничение по полному пути exe-программы.


"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Led , 03-Июн-16 21:39 
Пиши ещё - мнение вендузоеда-на-каникулах очень важно для нас.

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено stalkerdroad , 04-Июн-16 00:41 
Ты знаешь как работает net namespace ?

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено asd9uh , 26-Окт-17 04:17 
TOMOYO Linux умеет контролировать сеть отдельных приложений

"Доступна система изоляции приложений Firejail 0.9.40"
Отправлено Аноним , 03-Июн-16 22:10 
народ, что лучше, чтобы запускать софтваре без прав на чтение других директорий (включая хомяка) - оно или ручками пилить отдельного юзверя и проставлять права?