Re: Можно ли установить SUID для скрипта?
Nikita V. Youshchenko -> debian-russian@lists.debian.org @ Tue, 06 Mar 2007 16:02:12 +0300:
>> >> ну похоршому (IMHO) вместо SUID лучше использовать sudo:
>>
>> NVY> Кстати, это это легко сделать прозрачно - проверив в начале
>> NVY> скрипта, от какого пользователя он запущен, и сделав exec sudo
>> NVY> ..., если "не от того".
>>
>> ... и получив ровно тот же самый security hole, что и в случае с suid.
>> Ну да впрочем, ручной запуск sudo тут ничем не лучше.
NVY> А вот с этого момента пожалуйста поподробнее.
NVY> В чём именно заключается тот самый security hole?
Подмена файла или вышележащей директории в промежутке между проверкой
системой необходимых прав и открытием этого файла интерпретатором.
Подмененный файл уже не будет иметь suid (он автомагически сбросится),
но интерпретатор-то уже запущен под "не тем" пользователем...
В современных линуксах можно передать интерпретатору хендл открытого
скрипта как /proc/pid/чего-то-там вместо имени файла, что обходит эту
проблему (и несколько связанных), но поскольку уже сложилась традиция,
что suid-скриптов не бывает, делать этого никто не стал.
--
Artem Chuprina
RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru
The Eclipse Platform is an open and extensible platform
for anything and yet nothing in particular.
apt-cache show eclipse-platform
Reply to: