Добавление повышенных прав доступа к скриптам в каталоге

Добавление повышенных прав доступа к скриптам в каталоге

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

Сейчас я думаю добавить следующие строки /etc/sudoers:

Cmnd_Alias WEB_COMMANDS = /path/to/scripts
www-data ALL=(ALL) NOPASSWD: WEB_COMMANDS

Правильный ли это подход к этой проблеме? Или я создаю потенциальную уязвимость безопасности?

Использую CentOS 7, если это имеет значение.

решение1

Все что угодно является потенциальной уязвимостью безопасности. Две вещи:

Прежде всего, выконечноему нужен root? Зачем? Можно ли сделать это с помощью capabilities? (Вероятно, можно.)

При этом ваш пример почти точен. Добавьте звездочку после пути:

Cmnd_Alias WEB_COMMANDS = /path/to/scripts/*

И теперь это будет работать. Но будьте осторожны, если какой-либо из этих скриптов может быть изменен злоумышленником, злоумышленник получаетПОЛНЫЙ ROOT-ДОСТУП. Они могут просто exec('/bin/bash')и иметь оболочку. Определенно идите по пути возможностей на скрипт, если это возможно, и ОБЯЗАТЕЛЬНО заблокируйте каталог скрипта в любом случае. Смотритеэтот ответ unix.seдля получения информации об управлении возможностями с помощью скриптов.

Связанный контент