Возможности сценария на Linux

Смотрите на ROXTerm, также.

8
20.08.2013, 02:39
1 ответ

Установка возможности на сценарии не будет эффективной. Это - аналогичная ситуация как не работа setuid обдумал сценарий. Подобный как в последнем случае это - реализация как execve хижина дескрипторов и безопасность, рассуждающая позади него (для деталей см.: Позвольте setuid на сценариях оболочки).

Я думаю, что у Вас есть эти опции

  1. установите возможности на самом интерпретаторе (на самом деле скорее копия его)

    • у Вас есть проблема здесь, что кто-либо, кто может выполнить ее, будет работать с теми поднятыми возможностями (смочь выполнить некоторый произвольный сценарий или запустить ее в интерактивном режиме)
  2. запишите исполняемый файл обертки, который будет иметь hardcoded логику, чтобы выполнить Ваш сценарий и установить желаемые возможности на этом исполняемом файле

    • удостоверьтесь, что никто не может изменить, ни удалить / заменяют сценарий
    • все еще путем выполнения chroot можно было бы неправильно использовать такую обертку

В обоих случаях необходимо было бы удостовериться, что набор возможностей выживет execve путем установки inheritable флаг. Вы могли бы также использовать pam_cap распределенный с libcap обычно, для фактической активации желаемых возможностей конфигурацией только для выбранных пользователей.

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

8
27.01.2020, 20:12

Теги

Похожие вопросы