результат бита setuid - PullRequest
       7

результат бита setuid

2 голосов
/ 19 ноября 2010

У меня есть сценарий оболочки, который я хочу установить бит uid. Я установил владельца как root и установил бит uid. Я добавил 'whoami' в оболочку, чтобы проверить, работает ли она правильно но когда я выполнил скрипт, whoami вернул имя пользователя, а не root. Тогда это неправильно, верно? Я должен был получить root, если uid был установлен правильно, верно?

Ответы [ 2 ]

4 голосов
/ 19 ноября 2010

Нет, бит setuid НЕ меняет зарегистрированного пользователя, он меняет действующего пользователя (euid), под которым запускается скрипт.

Кроме того, биты setuid не работают в сценариях.

Если вы хотите, чтобы сценарий выполнялся от имени пользователя root менее привилегированными пользователями, я рекомендую посмотреть на "su" или "sudo".

3 голосов
/ 19 ноября 2010

Нельзя использовать бит setuid со сценариями оболочки. Оболочка анализирует строку shebang , чтобы определить, какую программу следует выполнить, а затем запускает эту программу, не заботясь ни о каком бите setuid, установленном в сценарии.

См. https://serverfault.com/questions/8449/cannot-set-uid-on-shell-scripts.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...