Я собрал бинарный файл, который хочу распространить среди других людей.

Это закрытый исходный код, но я хочу предоставить пользователям двоичного файла уверенность в том, что он не сможет получить доступ к Интернету, микрофону, принтеру и т.д. Он также не сможет читать / записывать файлы / каталоги в файловой системе, если они не предоставляют эта программа с доступом к этому файлу / каталогу явно.

Возможно ли это другими, более удобными для пользователя способами, чем указание пользователям использовать что-то вроде SELinux или AppArmor, где пользователь должен сделать что-то особенное для запуска двоичного файла (в отличие от простого ./program)?

2 ответа2

0

Чтобы иметь уверенность в вашем двоичном файле, пользователи должны будут использовать надежные инструменты для его ограничения. Любой инструмент песочницы, который вы связываете со своим двоичным файлом, должен рассматриваться как (не) доверенный как сам двоичный файл.

Вы могли бы предоставить читабельный сценарий установки, который создает подходящую конфигурацию chroot или AppArmor. Таким образом, ваши пользователи смогут проверять тематику сценария и видеть, что ваш двоичный файл правильно изолирован.

0

Как сказал @Dmitry, если само приложение является закрытым исходным кодом, вам нужно показать пользователям хотя бы ту часть, которая обеспечивает приложение изолированной программной средой, чтобы они могли проверять и даже изменять способ изолированной программной среды (чтобы приспособиться к своим конкретным настройкам безопасности). , Помимо chroot , приложение также должно запускаться как его собственный пользователь (это можно сделать с помощью setuid в двоичном файле, который прозрачен для пользователей) с соответствующим ограниченным доступом. Что касается песочницы против различного оборудования (микрофоны, сеть, ...), какая бы часть этого не была ограничена пользовательскими разрешениями, потребовалась бы как минимум lxc или виртуальная машина. Это усложняет ситуацию.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .