[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: