The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Проект Landrun развивает непривилегированную систему изоляции приложений

23.03.2025 10:13

Проект Landrun начал развитие новой системы для изолированного выполнения отдельных приложений. Для изоляции задействован LSM-модуль ядра Linux Landlock, позволяющий обойтись без выполнения привилегированных операций во время создания sandbox-окружения. По своим задачам Landrun близок к утилите Firejail, но отличается более простой реализацией, легковесностью и возможностью работы под обычным непривилегированным пользователем без поставки с флагом suid. Код проекта написан на языке Go и распространяется под лицензией GPLv2.

Механизм Landlock позволяет непривилегированным программам ограничить использование объектов ядра Linux, таких как иерархии файлов, сетевые сокеты и ioctl. В отличие от пространств имён и фильтрации системных вызовов изолированное окружение формируется ядром Linux в форме дополнительного слоя над существующими системными механизмами управления доступом. Для взаимодействия с подсистемой Landlock в утилите landrun используется библиотека go-landlock от разработчиков LandLock.

Landrun позволяет снизить риск компрометации основной системы при запуске не заслуживающих доверия или потенциально уязвимых программ. Из возможностей отмечается поддержка выборочного ограничения доступа на уровне отдельных каталогов, привязка полномочий к файловыми путям (разрешение или запрет чтения, записи и исполнения) и контроль над инициированием и приёмом TCP-соединений.

Например, при помощи Landrun процессу можно запретить запуск исполняемых файлов, разрешить запись только в отдельный подкаталог c данными, запретить создание слушающих сокетов для приёма сетевых соединений и разрешить отправку сетевых запросов только на указанные TCP-порты. В простейшем случае для запрета записи, запуска и сетевых возможностей программу можно выполнить командой "landrun --ro /", а для изоляции nginx можно использовать:


   landrun --rox /usr/bin --ro /lib,/lib64,/var/www --rwx /var/log --bind-tcp 80,443 /usr/bin/nginx

В планах на будущее упоминается расширенное управление доступом к файловой системе, поддержка UDP и управление ресурсами процессов. Для ограничения доступа на уровне файловой системы требуется как минимум ядро Linux 5.13, а для сетевых ограничений - 6.8.

Дополнительно можно отметить, что в кодовую базу Firejail уже приняты изменения, позволяющие использовать подсистему ядра Landlock для изоляции без suid-бита и повышения привилегий, но релиз с данной поддержкой ещё не опубликован.

  1. Главная ссылка к новости (https://news.ycombinator.com/i...)
  2. OpenNews: Ошибка в LSM-модуле Landlock позволяла заново получить сброшенные привилегии
  3. OpenNews: Выпуск системы изоляции приложений Firejail 0.9.72
  4. OpenNews: Представлен TinyKVM для виртуализации на уровне отдельных процессов
  5. OpenNews: Выпуск Bubblewrap 0.9, прослойки для создания изолированных окружений
  6. OpenNews: Microsoft открыл Hyperlight, гипервизор для изоляции отдельных функций в приложениях
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/62934-landrun
Ключевые слова: landrun, landlock, container
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (112) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 13:28, 23/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +9 +/
    Хорошо с самого начали стали делать на быстром и безопасном языке Go на котором легко писать и поддерживать код.
     
     
  • 2.3, Аноним (3), 13:40, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    На гитхабе есть проект go-is-not-good.
    Долгое, но любопытное чтиво. Впрочем фанатики и тролли, как всегда, пройдут мимо.
     
     
  • 3.9, Аноним (9), 14:01, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • –4 +/
    > go-is-not-good

    Надо почитать, я вот тоже склоняюсь к тому что всякие go и rust, не очень хорошее.
    Должна быть унификация.

     
     
  • 4.14, Аноним (14), 14:33, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +9 +/
    Один Язык, чтобы править всеми… осталось только договориться, какой.
     
     
  • 5.19, Аноним (19), 15:03, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Си. Чистый Си.
     
     
  • 6.27, Нуину (?), 16:13, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Туда мы пойдем семь проездов по памяти, а обратно полетим на расте.
     
  • 6.64, Аноним (64), 23:59, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    #include <stdio.h>

    int main()
    {
      int a = -100;
      unsigned int b = 5;
      int c = a / b;

      printf("Результат деления %d на %d равен %d\n", a, b, c);
      return 0;
    }

    $ gcc -Wall -Wextra 1.c && ./a.out
    Результат деления -100 на 5 равен 858993439

    классно правда? Впрочем С++ ещё хуже.

     
     
  • 7.65, Специальный Агент Секретной Службы (?), 01:09, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    вас не учили что неявное приведение типов плохо?
    c = a / (int)b;
     
     
  • 8.72, Анониссимус (?), 10:39, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А есть языки, в которых неявное приведение работает очень даже хорошо Почему бы... текст свёрнут, показать
     
  • 8.80, Аноним (80), 12:24, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В нормальный языках будет ошибка компиляции В си будет порождён бинарник с мусо... текст свёрнут, показать
     
  • 7.75, Аноним Анонимович Анонимов (?), 11:45, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Что приведённым выше примером вы хотите сказать, на ЯП отличимых от Си это нормальный код? Или вы хотите сказать, что данная бредятина является нормой для Си?
     
     
  • 8.81, Аноним (80), 12:25, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В нормальных языках ошибочный код просто не компиллируется... текст свёрнут, показать
     
  • 7.85, гулигули (?), 15:02, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ты не пройдёшь.

    -Wconversion -Werror

     
  • 7.87, zionist (ok), 15:27, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Да, в Go такой код даже не скомпилируется

    var a int = -100
    var b uint = 5
    var c int = a / b

    Тут уже на третьей строке ошибка компиляции.

     
  • 6.73, Гром (?), 10:44, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    На чистом Си писать - сумасшествие! С++ лучше, если убрать исключения и добавить строгую типизацию.
     
  • 5.40, Аноним (40), 18:23, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    ada конечно
    хотя импортозамещение же
    потому рая
     
     
  • 6.53, Анонимм (??), 20:39, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Но чтобы сразу и все, как сказал Главкодер.
     
  • 4.17, WE (?), 14:50, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Как вы докажете, что есть только один истинный Язык? а всё остальное язычество (простите).
     
     
  • 5.20, Аноним (19), 15:05, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Чистый Си являет нам истинность и язычество в одном лице.
     
     
  • 6.119, Аноним (119), 15:55, 25/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ибо нет языка больше кроме Си!
     
  • 3.10, Аноним (10), 14:09, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Там последний пост от 18го года(уже 6 лет!) и он не открывается. Всё остальное вообще уже протухшее и не актуальное. Куча однотипных жалоб на "нет дженериков" которые добавили 3 года назад в 1.18.
    Go отличный язык и экосистема у него богатая. Если интересует язык лучше чем go где реально поправили мешающие вещи(а не этот бредовый перечень), то есть V. Но с экосистемой там пока печально
     
     
  • 4.15, Аноним (15), 14:36, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Список большой, весь не читал, но то, что написано, в основном не исправили: defer, nil, обработка ошибок, слабая ситема типов, наличие указателей, требование к обязательному использованию символов. Самое главное, что в отличии от дженериков это даже не собираются исправлять
     
     
  • 5.47, _ (??), 20:00, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Там написан сок мозга от волшебных на всю голову идиотов, уж извините за прямоту :-)
    Даже generics зря вкрутили. Не, даже так - ну вот вкрутили ... И?!?!?! И нах никому не надо! И так будет по всему тому списку :)
    Вообще то, кому не нравится - вокруг Ёзыков же на любой вкус, вот и идте ... туда :)
     
     
  • 6.82, Аноним (80), 12:29, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Даже generics зря вкрутили. Не, даже так - ну вот вкрутили ... И?!?!?!

    Правильно, вместо добавления generic нужно просто объявить весь код на go deprecated, и переключится на другой язык
    >Вообще то, кому не нравится - вокруг Ёзыков же на любой вкус, вот и идте ... туда :)

    Проблема не в том, что в голанге много чего нет. Проблема в том, что язык с технологиями устаревшими ещё в конце восьмидесятых усиленно толкается в массы.

     
     
  • 7.94, _ (??), 17:22, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Правильно, вместо добавления generic нужно просто объявить весь код на go deprecated, и переключится на другой язык

    Буду вам премного благодарен! Звиздуйте в раст или куда там нынче модно :)

    >Проблема не в том, что в голанге много чего нет.

    Ого! Ты типа НЕ безнадёжен?! :)

    >Проблема в том, что язык с технологиями устаревшими ещё в конце восьмидесятых усиленно толкается в массы.

    Скорее же ставь треугольные колёса на свой велик!!! :)
    Go - просто сказка для программинга во времена "компьютер - это сеть" если кто помнит солнечные девизы :) Ну а если вы родились уже после - поищите :)

     
  • 3.38, OpenEcho (?), 18:16, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > На гитхабе есть проект go-is-not-good.

    Пояснение: для тех кто в хайп

    > Впрочем фанатики и тролли, как всегда, пройдут мимо

    Да, точно, там достойное сборище троллей-блогеров, которые не втыкают почему есть вилка и почему есть ложка... если не ООП и не обмазка абстракциями, то всё - "отстой", причем с "авторитетами" там "полный порядок", просто кишат "авторитеты"... полное 100% "доверие".

    Ну и то, что 10 летней давности - ваще не проблема... главное ведь нагадить на вентилятор мнениями "авторитетных" блоггеров, которые будут "определенно поумней гугла"

    Уж лучше был бы фанатиком и троллем и прошел правда мимо, спасибо конечно, но лопайте сами

     
     
  • 4.83, Аноним (80), 12:34, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Да, точно, там достойное сборище троллей-блогеров, которые не втыкают почему есть вилка и почему есть ложка... если не ООП

    Хорошо, делайте язык без ООП, но с ФП. Хотя-бы на уровне окамла
    >и не обмазка абстракциями, то всё - "отстой"

    В этом то и проблема, что абстракций на голанге почти нет. Отказались от исключений, но зато вместо ошибок нетипизированный err. Ни эффектов, ни полиморфных вариантов, ни алгебраических типов данных, ни монад, ни чего-то другого - ничего. Не забывайте писать
    if err != nil {
      return _, err
    }

     
     
  • 5.105, OpenEcho (?), 18:33, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Ни эффектов, ни полиморфных вариантов, ни алгебраических типов данных, ни монад, ни чего-то другого - ничего.

    Это то, о чем я говорил, - есть ложка, а есть вилка и у каждого свое предназначение.

    Смысл всех этих абстракций вы перечислили, по большому счету нужен только в интерпрайзах, и если внимательно покопать, то всё это сделанно исключительно чтоб Маша не сделала глобальную переменную "Cool", которую Вася тоже умудрился придумать в совместном проекте. Го же специализируется не на интерпрайзном уровне как Жаба, Шарп... а как инстурмент "стрельнул и забыл", в контейнерах, лямбдах, там где "do one thing but do it best". Смысл языка - простота и легкость и гибкость

     
  • 2.23, Аноним (23), 15:56, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Ага. Язык со сборкой мусора - лучший выбор для системного программирования.
     
     
  • 3.31, Аноним (1), 16:51, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не нравится отключи. Твой написанный на коленке коллектор для раста в разы хуже.
     
     
  • 4.34, Аноним (23), 17:08, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А что, если я на Си/С++/Зиг пишу?
     
     
  • 5.54, Аноним (54), 21:15, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Там коллекторы хорошие.
     
     
  • 6.76, Аноним (76), 11:49, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Пожалуй, да, new/delete лучше.
     
     
  • 7.77, Аноним (76), 11:50, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Для системного программирования.
     
  • 3.35, OpenEcho (?), 17:17, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > лучший выбор для системного программирования

    Для системного програмирования достаточно даже Баша... вообще-то, ну если вы конечно знаете определение "системного програмирования"

     
     
  • 4.36, Аноним (23), 17:33, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Для системного програмирования достаточно даже Баша...

    Напишите это под новостью об очередной уязвимости в GRUB (например). Но речь, ведь, шла не о "достаточности".


     
     
  • 5.39, OpenEcho (?), 18:19, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Напишите это под новостью об очередной уязвимости в GRUB (например).

    Тролим или не втыкаем ?

    Какое отношение имеют уязвимости к опеределию "системного програмирования" ?

     
     
  • 6.70, 12yoexpert (ok), 10:16, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    какое отношение определение имеет к системному программированию?
     
     
  • 7.107, OpenEcho (?), 18:37, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > какое отношение определение имеет к системному программированию?

    Какое отношение тролли имеют вообще к програмированнию ?

     
     
  • 8.112, 12yoexpert (ok), 20:25, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    никакого, за это их и выперли из мейнтейнеров ядра, а какое это имеет отношение ... текст свёрнут, показать
     
     
  • 9.113, OpenEcho (?), 22:44, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    while true https www opennet me openforum vsluhforumID3 136379 html 35 ... текст свёрнут, показать
     
  • 6.106, Аноним (106), 18:36, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Уязвимости имеют отношение к достаточности.
    А к системному программированию имеет отношение GRUB, написанный, в т.ч., на sh.
     
  • 3.60, Нуину (?), 23:07, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Тут же задача просто все настроить и запустить.
     
  • 2.37, титомир (?), 18:08, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    опять никому не нужный софт
     
  • 2.71, Анониссимус (?), 10:37, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А вы хоть сами писали на нём? По-моему, это вообще wo-язык. Пока продерёшься через тонну бойлерплейта, уже забудешь, о чём шла речь несколько страниц назад.
     
     
  • 3.97, _ (??), 17:25, 24/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
     
  • 4.116, Анониссимус (?), 02:31, 25/03/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     

  • 1.2, Аноним (1), 13:33, 23/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Изолированные приложения можно переместить на другой сервер без остановки или поменять версии библиотек. Очень удобно.
     
  • 1.4, Аноним (4), 13:42, 23/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Почему просто либо не запускать не доверенные приложения, либо запускать их под отдельным пользователем или на отдельной системе?
     
     
  • 2.11, Werwolf (ok), 14:12, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    1) для работы часто требуется запускать ПО к которому ноль доверия, но без которого работа не работает
    2) ты удивишься как многое может выудить в системе софт работая под другим пользователем из того чего ему не стоит знать
    3) запускать такой софт в виртуалке или на другом железе конечно можно, но это лишний оверхед, можно и в контейнере, но это то же самое только больше места на диске займёт
     
  • 2.16, Аноним (15), 14:40, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >либо не запускать не доверенные приложения,

    весь код проверить невозможно, особенно проприетарный
    >либо запускать их под отдельным пользователем

    попробуй текстовой редактор запустить под отдельнымпользователем, расскажешь про проблмы с правами
    >или на отдельной системе?

    Не у всех есть десяток неиспользуемых компьютеров

     
     
  • 3.26, Аноним (4), 16:10, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Системе, а не машине.
     

  • 1.5, Аноним (5), 13:46, 23/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Я сам тут пишу что-то подобное, но на питоне. Вылезли гигантские проблемы даже без изоляции сторонних приложений, а даже на самоизоляции.
     
  • 1.6, Werwolf (ok), 13:46, 23/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    systemd-run позволяет делать то же самое но есть из коробки
    firejail позволяет описать это в конфиге а не в команде
    чем это будет лучше?

    P.S.: не тролю, правда интересно..

     
     
  • 2.24, Аноним (23), 16:00, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Оба требуют передачи привилегий. systemd-run через Polkit, firejail - через setUID bit.
     
  • 2.41, OpenEcho (?), 18:27, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > systemd-run

    есть не везде


    > firejail позволяет описать это в конфиге а не в команде чем это будет лучше?

    То же самое, - не везде есть, а с LSM единстевенное что нужно - линуксовый кернел и работать будет без рута, учитывая что в Го легко в статику, а значит очень портабельно в пределах платформы

     
     
  • 3.108, Аноним (108), 18:54, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> systemd-run
    >есть не везде

    То есть сабж — исключительно для локалхостов на девуанах? Ок, действительно им такое нужно.

     
     
  • 4.114, OpenEcho (?), 22:45, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >>> systemd-run
    >>есть не везде
    > То есть сабж — исключительно для локалхостов на девуанах? Ок, действительно им такое нужно.

    - Alpine Linux?
    - "Не, не слышал..."

     
     
  • 5.115, Аноним (108), 01:38, 25/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Продакшен
    > musl

    Что ещё интересного расскажете?

     
     
  • 6.118, OpenEcho (?), 08:12, 25/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А смысл? Безполезно.
     
  • 2.49, _ (??), 20:23, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >firejail

    ... заявили что берут $Subj как один из бакэндов ... Как ты думаешь - почему? ;-)

     

  • 1.7, Аноним (5), 13:48, 23/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >позволяющие использовать подсистему ядра Landlock для изоляции без suid-бита и повышения привилегий

    Неэффективно. landlock в данный момент не позволяет ограничивать  сисколлы, это работа сейчас для seccomp-BPF, который, как и всё BPFное, требует привилегий.

     
     
  • 2.8, Аноним (5), 13:50, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    И да, firejail с самого начала следовало использовать не костыли, а на лету генерировать apparmor-профили. Но apparmor очень хреново документирован, их дока - полнейшая помойка.
     
     
  • 3.50, _ (??), 20:25, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >apparmor

    А что он хоть кому то нужен? Кому нужно _формальная_ сертификация (с бумагами и штампами, ага) - всё равно на selinux-е ... ;-P
    :)

     
     
  • 4.67, нах. (?), 08:47, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А кому была нужна именно защита уровня приложений (а не совершенно бесполезный мандатный доступ) - куды бечь?
    selinux в targeted - единственное _реалистичное_ применение этой технологии - а)забивание гвоздей кривым микроскопом b) слишком сложен для смертных (поэтому и не используется никем кроме rhbm)

    apparmor был более здоровым подходом - "ок, мандатный доступ не получился, давайте сделаем хотя бы ограничение доступа приложениям из списка с помощью изначально для этого предназначенного инструмента".

    Но что-то снова пошло не так...

    И да, кому-то нужен - от suse до бабуинты.
    service apparmor stop && service apparmor teardown ихнее всьо

     
     
  • 5.98, _ (??), 17:53, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >А кому была нужна именно защита уровня приложений (а не совершенно бесполезный мандатный доступ) - куды бечь?

    Хорошего ответа для линукса у меня нет :(
    Есть много ответов уровня такси-бЭ - $subj к приеру :)

    Кста, те кто на фряхе - вы всё ещё jail пользуете? Оно живое ещё?

    >selinux в targeted - единственное _реалистичное_ применение этой технологии - а)забивание гвоздей кривым микроскопом b) слишком сложен для смертных (поэтому и не используется никем кроме rhbm)

    А никто и не делает формальную (прям с бумажкой!) сертификацию на EAL/FIPS на чём то другом кроме RHEL-a :)
    Ну ОК - лично я уж лет 15 такого не видел, может и не прав.

    >apparmor был более здоровым подходом ...
    >Но что-то снова пошло не так...

    Аудит с ним пройти - это ... Тут и с полностью сертифицированным инструментарием взпотеешь :(

    >И да, кому-то нужен - от suse до бабуинты.
    >service apparmor stop && service apparmor teardown ихнее всьо

    Возможно. Я ж говорю: мне лично не встречался, когда попробовали сами прикинуть (пытались денег сЪЫкономить) как то совсем оно ... не то чтоли...


    PS: Дошло. Я всё что выше говорил - говорил про сервера! Я _про_сервера_! Как оно на десктопе в промышленных масштабах - я не в курсе, у нас там винда \ яббл.

     
     
  • 6.121, Аноним (-), 19:30, 25/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >те кто на фряхе - вы всё ещё jail пользуете? Оно живое ещё?

    Пользуем, а что ему сделается? Хотя, общая тенденция именно у фри не радует давно уже... Однако есть и другие BSD, и солярки, если линуксоидизация (привет KMS) вообще прижмёт...

     
  • 4.89, Аноним (89), 17:03, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    selinux защищает всю систему. Он нужен исключительно для герметичных образов, где все бинарники ставятся разработчиком образа ОС, напр. гуглом или сисадминами NSA. Пользователь на таких системах 1. программы сам не ставит. 2. использует заведомо оговоренные программы заведомо оговоренным способом. То есть аналитик NSA или CIA на рабочей станции - чтобы инфу налево не смог скопировать. Или пользователь ведроида - чтобы DRM работало лучше (чтобы было труднее обойти без сжигания efuse). Вот предназначение selinux.
     
     
  • 5.90, Аноним (89), 17:06, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Соответственно, сертификации - они как раз с прицелом на то, что сисадмины дали образ - вот, используем его, а данные не сливаем налево не сливаем, и рабочую машину в посторонних целях не юзаем. Собственно, для чего selinux и создавался.

    На персональных машинах ему не то что бы не место, просто не подходит он для этого.

     
     
  • 6.100, _ (??), 18:04, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Собственно, для чего selinux и создавался.
    >На персональных машинах ему не то что бы не место, просто не подходит он для этого.

    Возможно и так, но вот ваша Fedora - почему то считает наеборот :) чЁтаГто?!? (С)

     
  • 6.109, Аноним (108), 19:03, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > На персональных машинах ему не то что бы не место, просто не подходит он для этого.

    Да как раз наоборот, именно на локалхостах он больше всего и нужен! С рабочей машины я максимум на Stack Overflow хожу, и в прод через VPN с 2FA и все джамп-хосты ещё попробуй залезь. А вот со своего локалхоста я что только ни открываю. Украдут через дырку в браузере логины-пароли от банкинга и будет головняка на месяц деньги вернуть, если не на три. Вот это реальный риск.

     
  • 5.99, _ (??), 18:03, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Он нужен исключительно для герметичных образов, где все бинарники ставятся разработчиком образа ОС, напр. гуглом или сисадминами NSA.

    Ну то есть как это реально работает в любой финансовой, биржевой, медицинской или говернметской среде - ты ни разу не видел? Но мнение имеешь? :)
    Предсказуемо важное мнение для тех кто на этом работает :-D

     

  • 1.12, Аноним (12), 14:20, 23/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    Сложный процесс изобретения jail продолжался.
     
     
  • 2.95, Аноним (80), 17:23, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Что, jail в bsd по вашему уже сейчас может предоставить аналогичную функциональность?
     
     
  • 3.101, _ (??), 18:08, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Он >80% от всего что надо ещё в нулевые умел, аЧпеТа!(С) :)
    Потом я спрыгнул, но всё-же в курсе что прикрутили к примеру сеть ... чего он нынче "не умеет" - я не в курсе, алЁ фряшники! - нуна чутка разЪяснений! Есть тут кто?
     
     
  • 4.120, Аноним (-), 19:23, 25/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Есть, а тебе что надо-то конкретно?
    А маны почитать с минуту - вообще никак, да?
     

  • 1.13, Аноним (13), 14:29, 23/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    >Механизм Landlock позволяет непривилегированным программам ограничить использование объектов ядра Linux, таких как иерархии файлов, сетевые сокеты и ioctl ... без suid-бита и повышения привилегий.

    Т.е., произвольный непривилегированный процесс может управлять доступом к ресурсам ядра других процессов.
    Бред какой-то!

     
     
  • 2.18, Аноним (5), 14:50, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Ты ничего не понимаешь. landlock - это та вещь, которая вообще должна была быть изначально из коробки.
     
  • 2.21, ЛучДонаХуана (?), 15:12, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    не управлять, у делать exec дочерного процесса с привелегиями ниде чем он сам
     
  • 2.22, дохтурЛол (?), 15:14, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не "других", а своего собственного, либо собственных дочерних.
     
     
  • 3.42, Аноним (42), 18:29, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Т.е. если кто-то другой запустил прогу, а не этот ландрас, то ничего изолироваться не будет?! Это как ворота в пустыне. Спасибо, уж лучше аппармор.
     
     
  • 4.44, Аноним (23), 18:35, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Они все так работают (firejail, bubblewrap/flatpak).
     

  • 1.25, Аноним (23), 16:04, 23/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Главная проблема всех этих jail-ов: как их встраивать в готовый дистрибутив с готовым пакетным менеджером?
     
     
  • 2.28, Нуину (?), 16:15, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Конретно firejail от пакетов не зависит, изолирует уже установленный софт через профили.
     
     
  • 3.29, Аноним (23), 16:21, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    О чём и речь. Firejail изолирует malware, но никак не изолирует /usr/bin/malware или ./malware.
     
     
  • 4.30, Нуину (?), 16:24, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Нет же, как раз будет изолирован /usr/bin/malware. ./malware нет.
     
     
  • 5.33, Аноним (23), 17:05, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А вот и нет. Будет изолирован только процесс, вызванный из специально сконфигурированной оболочки командой, требующей поиска пути в PATH. А вот вызов с указанием пути, в т.ч. с абсолютным путём (/usr/bin/*), будет пропущен как есть.
     
  • 5.43, Аноним (42), 18:34, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    читаем внимательно:

    > ... работы под обычным непривилегированным пользователем

    потому ограничения только на дочерние процессы

     
  • 4.46, Аноним (46), 19:15, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >/usr/bin/malware

    Если вам кто-то от рута поставил malware - то это Game Over, не находите?

     
  • 4.59, Аноним (59), 22:01, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > О чём и речь. Firejail изолирует malware, но никак не изолирует
    > /usr/bin/malware или ./malware.

    Если у меня /usr/bin/malware в системе лежит - изолировать что-то уже поздняк, ибо какой-то м...к получил рут в системе и делает там что хочет :). Как вы от рута изолироваться собрались?

     
     
  • 5.78, Аноним (78), 12:08, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Изоляция нужна только чтобы специально подготовленные данные, полученные от злоумышленника, не имели слишком много возможностей после эксплуатации уязвимости. А вообще, рута ограничивают всевозможные rbac и selinux, обойти их совершенно отдельная ресурсоёмкая задача, посильная только преступнику уровня state.
     
     
  • 6.91, Аноним (89), 17:12, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    То то на XDA Developers "преступники уровня state" рутилки делают. selinux обошли так: пропатчили 2nd-stage bootloader, который почему-то оказался доступен на запись ... после чего после перезагрузки патченный bootloader патчит ФС, и восстанавливает себя.
     
     
  • 7.96, Аноним (78), 17:24, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    При физическом доступе не оч интересно.
     
  • 5.88, Аноним (88), 16:48, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Рут тут вообще ни при чем Речь шла о том, что все эти джейлы встраиваются в сис... большой текст свёрнут, показать
     
     
  • 6.93, Аноним (80), 17:22, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Различные MAC-средства (SELinux, AppArmor, Tomoyo) предотвращают такие казузы

    С SELinux понятно, там это через аттрибуты файлов, а как AppArmor и Tomoyo в этом помогут? Тем более, что следующим шагом можно скопировать бинарник, и путь у него поменяется
    >Достаточно вам (или любому запущенному процессу вместо вас) вызвать, например, веб-браузер по абсолютному пути, и вы даже не заметите, что браузер запущен в обход песочницы

    При наличии песочницы, это уже работает. Суть в том, что недоверенный код запускается уже внутри песочницы сразу, а доверенный что попало не запускает

     
     
  • 7.104, Аноним (106), 18:25, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    1 Помогает блокировка альтернативных, обычно разрешенных на запись пользователю... большой текст свёрнут, показать
     

  • 1.48, Анонимм (??), 20:14, 23/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Отлично! Теперь GIMP и прочие замечательные опенсорс приложения заиграют новыми красками.
     
  • 1.57, Аноним (57), 21:51, 23/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Просто парад "крепостестроения". Вторая новость за неделю.
    Читаешь идеи проекта и ловишь себя на мысли, что всё это делает SELinux.
     
     
  • 2.74, Анониссимус (?), 10:46, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Мог бы делать, но почему-то не делает. Почему бы?
     
     
  • 3.102, _ (??), 18:12, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Как не делает? Ты его в новых rhel вообще выключи попробуй! ;-)

    PS: Я - могу. Но не буду. Порешили порешить(С)

     
     
  • 4.117, Анониссимус (?), 02:33, 25/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Как не делает? Ты его в новых rhel вообще выключи попробуй! ;-)

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

     

  • 1.58, Аноним (59), 21:59, 23/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > Код проекта написан на языке Go

    Значит продолжим использовать firejail, спасибо что написали :). Экосистема с телеметрией в компилере от гугли - такое себе.

     
     
  • 2.62, Нуину (?), 23:17, 23/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Можно собрать gccgo?
     
     
  • 3.69, нах. (?), 08:52, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    можно, разрешаю. (работать правда не будет, но собирать-то никто не против)

     
  • 2.103, _ (??), 18:16, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> Код проекта написан на языке Go
    > Значит продолжим использовать firejail, спасибо что написали :).

    Но это не надолго снежинка :) Текст новости надо _читать_ ВНЕЗАПНО! :-)))
    А там:
    "... в кодовую базу Firejail уже приняты изменения, позволяющие использовать подсистему ядра Landlock для изоляции без suid-бита..."

     

  • 1.61, Нуину (?), 23:16, 23/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Чем это отличается от bubblewrap, который также не требует suid?
     
     
  • 2.66, Аноним (66), 06:42, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Без suid он требует включения user namespace, что огромный вектор для атак на всю систему с учётом постоянно всплывающих в ядре уязвимостей, которые можно эксплуатировать при включённом user namespace.
     
     
  • 3.68, нах. (?), 08:50, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    этот требует еще недописанного толком нового модуля ведра. Что, что может тут пойти не так?!

    (диды вообще-то не по желанию левой пятки сделали jail и его линуксные костылеаналоги работающим только от рута)

     
     
  • 4.92, Аноним (89), 17:13, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • +/
    landlock никогда не будет дописан. Он изначально дизайнился как расширяемый.
     
  • 3.79, Аноним (78), 12:10, 24/03/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Без user namespace ты пятую точку выставляешь в дыру, каждый раз, когда открываешь веббраузер.
     

  • 1.84, Аноним (80), 14:48, 24/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >По своим задачам Landrun близок к утилите Firejail,

    Firejail из коробки ограничивает доступ не ко всем ресурсам, что делает побег из песочницы очень простым

     
  • 1.86, Аноним (86), 15:20, 24/03/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    мне сегодня syncthing изолировали. ещё одна местная разработка.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру