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

Исходное сообщение
"Для FreeBSD развивается механизм изоляции, похожий на plegde и unveil"

Отправлено opennews , 03-Апр-22 11:16 
Для FreeBSD предложена  реализация механизма изоляции приложений, напоминающего развиваемые проектом OpenBSD системные вызовы plegde и unveil. Изоляция в plegde осуществляется через запрет обращения к неиспользуемым в приложении системным вызовам, а в unveil через выборочное открытие доступа только для отдельных файловых путей, с которыми может работать приложение. Для приложения формируется подобие белого списка системных вызовов и файловых путей, а все остальные вызовы и пути запрещаются...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=56958


Содержание

Сообщения в этом обсуждении
"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 11:16 
Зато не apparmor/selinux, воть!

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 11:47 
Как там было в «Хоббите»... Ножи — не вилки, а скалы — не опилки.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 11:53 
Ножи^W Орлы

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 12:02 
>> It can be broken up in 4 parts: 1) A MAC module that implements most of the functionality.  2) The userland library, sandboxing utility, configs and tests.  3) Various kernel changes needed to support it (including new MAC handlers and extended syscall filtering).  4) Small changes/fixes to the base userland

...
>> About the kernel-side parts:
>> Most of the implementation is in a separate mac_curtain module, but it also needed some changes spread out in the kernel to support it.

...
man mac
>> HISTORY
>>     The TrustedBSD MAC Framework first appeared in FreeBSD 5.0 (2003)

...

> Зато не apparmor/selinux, воть!

Зато очередной лапчато-опеннетный онализ на основе знакомых слов из заголовка!



"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 13:24 
> Зато не apparmor/selinux, воть!

Сабж надо сравнивать не с MAC, а с механизмами syscall-изоляции. В Linux это Seccomp, во фре - Capsicum.

By the way, у лапчатых с этим уже много лет как все просто - пишешь в юнит-файл SystemCallFilter= (для системных вызовов) и InaccessiblePaths= (для файловой системы), и ты в домике.


"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 04-Апр-22 12:32 
А домик как у ниф-нифа или как у наф-нафа?

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 04-Апр-22 16:46 
Если серьезно, то фильтрация системных вызовов и фильтрация обращений к файловой системе - это только элементы в комплексной защите. Есть IPC, есть сеть, которые надо тоже ограничивать. Есть опции компилятора для затруднения атак. Ну и ресурсы надо квотировать, чтобы DoS всей системы не было.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено _kusb , 03-Апр-22 11:26 
Очень глупый вопрос - но чем это отличается от chroot? Ещё вспомнил про контрольные группы, какие слова знаю - офигеть.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено qew , 03-Апр-22 11:44 
Чистый chroot не предел для взлома еще с 90-х. Зная невероятный дебилизм ядра, скорее всего до сих пор осталось дыркой. Но в его исходниках каждый день не роюсь, это к диванным экспертам.
Представляешь ютуб в чруте? )

chroot средствами cgroups - то же самое извращение, но поговаривают вполне можно уже даже полагаться в НЕкритичных ситуациях. Группы ресурсов вообще для другого делали, но они неплохое продолжение получили в виде докера - просто и чаще всего таки удобно.

Для серьёзных вещей, что-то более крутое чем selinux или apparmor представить сложно. Но для школьников то докеризацию придумают и они свято верят в непогрешимость то еще чего. Больше подходит вайновое приложение или игрушку туда пихнуть или на сервере юзать. Большие как юзали SE таки будут юзать - своими, со знанием дела, с самого начала, для своих, и по взрослому.


"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено йцу , 03-Апр-22 11:45 
Тут чрут подкреплённый хуками к ядру. Ну типа стопудовее, пластичнее может даже и безопаснее.
Чистый чрут - это крайне примитивная конструкция.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Легивон , 03-Апр-22 13:19 
>Но для школьников то докеризацию придумают и они свято верят в непогрешимость то еще чего

Не для школьников, а для senior yaml developer'ов.
И докер это вообще не про изоляцию. Это 90% случаев про доставку.


"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 13:31 
> Не для школьников, а для senior yaml developer'ов.

До этого тридцать лет девелопили на шелле. Теперь будут сколько-то лет девелопить на ямле. Игра была равна - играли два <...> (а можно просто не подпускать к программированию людей, не знающих хотя бы одного полноценного ЯП).

> И докер это вообще не про изоляцию. Это 90% случаев про доставку.

Про изоляцию тоже, но не для безопасности, а для удобства. С ним можно спокойно запустить на хосте хоть пять разных веб-серверов с настройками "из коробки", и они не подерутся на 80 и 443 порты. (Более практичный пример - при обновлении программы, старый и новый экземпляр могут пересекаться по времени без конфликтов)


"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Онаним , 03-Апр-22 15:45 
Конкретно доскер к изоляции вообще никакого отношения не имеет.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 16:18 
Пацаны во дворе рассказали?

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Онаним , 03-Апр-22 21:26 
Ну, тебе как заядлому дворовому обитателю - скорее всего виднее, да.
А вообще доскер - это костылик конфигурации ядерной изоляции, а не сама изоляция.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 19:12 
Изначально это объявлялось именно как изоляция. Это потом, когда изоляция оказалась неизоляцией (в силу кривости реализации), оставили роль деплоя приложений. Народ так заюзал, на том и сошлись.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Онаним , 03-Апр-22 21:27 
Изоляция - это LXC, namespaces и прочая обвязка, так-то. Доскер её только конфигурирует.
"Объявлялся как изоляция" он для старших специалистов по yaml, видимо.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Онаним , 03-Апр-22 22:10 
И даже про LXC я не прав, LXC такой же костылик. Короче именно ядерная составляющая, хз как её назвать. cgroups+namespaces+...

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 04-Апр-22 03:18 
Может, вам сторит все-таки подучить матчасть, прежде чем встревать в интеллектуальные дискуссии?

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Онаним , 04-Апр-22 07:58 
Может тебе для начала русский подучить, сторит?

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 16:17 
> полноценного ЯП

Полноценность ты будешь определять, конечно же, да?


"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено anonfhjvxd , 03-Апр-22 21:03 
https://ru.wikipedia.org/wiki/%D0%9F%D0%...

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Онаним , 03-Апр-22 15:44 
senior yaml developer - это пять, возьму на заметку, спасибо

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 19:15 
>Не для школьников, а для senior yaml developer'ов.

Сениёр ямль девелопер-это не школьник, это посетитель детского сада. Как и автор термина.


"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 04-Апр-22 03:10 
Тем не менее, платят им раз в десять больше, чем senior shell developer-ам.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 13:38 
> chroot средствами cgroups - то же самое извращение, но поговаривают вполне можно уже даже полагаться в НЕкритичных ситуациях. Группы ресурсов вообще для другого делали, но они неплохое продолжение получили в виде докера - просто и чаще всего таки удобно.

Вы путаете педали. cgroups не обеспечивают chroot, для этого есть namespaces (конкретно - mount namespace).

> можно уже даже полагаться в НЕкритичных ситуациях

В некритичных ситуациях хватит "нет там дыр, зуб даю".
А в критичных всегда работает комплекс мер.


"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 19:54 
> Большие как юзали SE таки будут юзать - своими, со знанием дела, с самого начала, для своих, и по взрослому.

Во-первых, больших пользователей SELinux особо нет, либо они тщательно законспирированны (читай: не подключены к публичным сетям), и от того малоинтересны. Во-вторых, SELinux настолько простая концепция, что умещается целиком в комикс-раскраску. Правда, для применения в реальном мире на реальном проде требует фантазии и немного опыта. К несчастью, средний сисадмин зашорен и не способен раздуплить SELinux дальше, чем setenforce 0, поэтому большинство даже не пытается внедрять. В результате, на одном только SELinux можно неплохо зарабатывать. А вкупе со знанием современного клауда, так и совсем хорошо выходит. Платят много, слушают внимательно и готовы приседать когда скажут. Рекомендую!


"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено мишалипут , 03-Апр-22 17:26 
Это не аналог chroot, это аналог seccomp (ну и вторая штука аналог apparmor/selinux)

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 11:37 
Capsicum'a должно быть всем достаточно.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено В.Ж. , 03-Апр-22 11:59 
Ну то есть вот это «для немодифицированных программ» рубит основную идею, лежащую в основе pledge: многим приложениям повышенные привилегии требуются только на начальном этапе работы, когда происходит инициализация. И извне этот момент не узнать, поэтому при внешнем ограничении привилегий приходится давать максимум из возможно требуемых привилегий.

Пользу сабжа вижу только в возможности большего распространения API pledge/unveil, что в итоге может побудить большее количество разработчиков ПО обратить на него внимание... а может и не побудить.


"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 12:05 
Звучит как unshare. Там тоже можно запустить любую излишне любопытную программу в изолированном немспейсе. С точки зрения программы оно как бы и есть, но с реальной системой не пересекается.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 13:27 
unshare - это тот же механизм, который лежит в основе LXC и докера. И нет, он не отменяет и не заменяет фильтрации системных вызовов. Эти два подхода работают вместе, дополняя друг друга.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 13:33 
Фильтрация системных вызовов в свою очередь звучит не то как apparmor, не то как yama.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 13:47 
Не, звучит как seccomp.
Apparmor и yama - это модули MAC, более высокий уровень абстракции. Тоже могут фильтровать системные вызовы, но там это задается косвенно, поэтому такой гибкости, как seccomp, не дает.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено qwe , 03-Апр-22 12:08 
В таком случае как всегда, пока в gcc не встроят не взлетит. А какие существуют способы временно давать повышение привелегий с определённым райдером мест куда можно лезть при этом, а дальше пахать как обычно?

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 13:29 
Разбить на бинарники дать разные права вызывать разные бинари в зависимости от ситуации.  И так по нисходящей велосипедировать.  

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 13:34 
А потом захочется
1. Бинарники, решающие одни и те же задачи по преднастройке окружения, объединить в один универсальный
2. ???
3. Мужики, у нас комбайн, возможно, systemd, по коням!

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 17:11 
А в винде можно в случае необходимости вызвать диалог повышения привелегий и непривилегированный процесс сделать привилегированным, в отличие от этих ваших юниксов...

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 04-Апр-22 03:16 
А в этих ваших юниксах для того же самого уязвимости всякие ищут, да.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 13:19 
> И извне этот момент не узнать, поэтому при внешнем ограничении привилегий приходится давать максимум из возможно требуемых привилегий.

Для этого уже давно придумали простое решение, называется privilege separation.
Когда предварительную настройку выполняет один процесс, а основную работу другой.
Можно пойти по unix way и написать для каждого демона свой инициализатор, можно забить и сделать init-комбайн, который и сокеты откроет, и лимиты выставит, и cgroups создаст, и namespaces настроит, не суть.


"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Sadok , 03-Апр-22 12:53 
Расскажите ему про jail.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 13:44 
> Расскажите ему про jail.
>> It can be used at the same time as jails and Capsicum (their

restrictions are also enforced on top of it).
...
>> (Автор в списке рассылок) Also, if you combine curtains with chroots you kind of get jails. It's chroot escape-proof because unveils deny access to the outer directories like any other.  Privileges are restricted.  It doesn't have all the features of jails but it's very jail-like. Just to say, the MAC framework was pretty close to being able to implement jails too.

Видимо, прочитал на опеннете и полез смортеть. Интересно, что бы он делал без ценных советов опеннетчиков?


"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 13:57 
Еще одна реализация по типу capsicum заточенная на программистов, а не админов?
Ехх, жаль что кроме jail во фришке нет других механизмов изоляции.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Смузихлёб , 03-Апр-22 15:54 
Очередная смузи-поделка. Лишь доказывает теорию того, что современное айти упёрлось в потолок, а все новые "разработки" - это из разряда обновлений ради обновления.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 19:49 
> все новые "разработки" - это из разряда обновлений ради обновления.

Эх, золотые слова...


"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 16:26 
А там глядишь и systemd на bsd портируют :)

Лет через 10-15 можно будет в каких-то некритичных местах даже иногда использовать ради интереса. Удачи проекту, она ему очень понадобится.


"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 03-Апр-22 19:47 
С этим unevil в firefox ни локальные файлы не открыть, а теперь он даже в "Загрузки" не хочет сохранять.

Сделайте firefox снова злым!


"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено YetAnotherOnanym , 03-Апр-22 22:52 
> Поддерживается совместное использование curtain с механизмами изоляции, предоставляемыми подсистемами Jail и Capsicum

Не, ну это как-то не по-опенсорсному.
Надо, чтобы новая утилита дублировала функционал и конфликтовала со старыми при совместном использовании. Вот это будет по-опенсорсному.


"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 04-Апр-22 03:13 
Возможно, именно это и подразумевается. Ведь когда из-за конфликта систем что-то не работает, это более безопасно - нельзя взломать то, что не запустилось.

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено YetAnotherOnanym , 04-Апр-22 11:24 
Эммм... ну... это не лишено смысла...

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 04-Апр-22 10:10 
https://lists.freebsd.org/archives/freebsd-hackers/2022-Marc...

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 06-Апр-22 01:41 
Как обычно - свое уникальное, ни с кем не совместимое?

"Для FreeBSD развивается механизм изоляции, похожий на plegde..."
Отправлено Аноним , 06-Апр-22 11:57 
> Как обычно - свое уникальное, ни с кем не совместимое?

Расскажи поподробнее, с чем совместимы cgroups, seccomp, namespaces, apparmor ... LXC, docker, systemd?