Re: Можно ли установить SUID для скрипта?
Nikita V. Youshchenko -> debian-russian@lists.debian.org @ Thu, 08 Mar 2007 12:58:29 +0300:
>> >> >> ну похоршому (IMHO) вместо SUID лучше использовать sudo:
>> >>
>> >> NVY> Кстати, это это легко сделать прозрачно - проверив в начале
>> >> NVY> скрипта, от какого пользователя он запущен, и сделав exec sudo
>> >> NVY> ..., если "не от того".
>> >>
>> >> ... и получив ровно тот же самый security hole, что и в случае с suid.
>> >> Ну да впрочем, ручной запуск sudo тут ничем не лучше.
>>
>> NVY> А вот с этого момента пожалуйста поподробнее.
>> NVY> В чём именно заключается тот самый security hole?
>>
>> Подмена файла или вышележащей директории в промежутке между проверкой
>> системой необходимых прав и открытием этого файла интерпретатором.
NVY> Ы-хм?
NVY> А права на эту подмену кто даст?
NVY> Если, конечно, файл лежит хрен-знает-где, и владеет им (и вышележащими
NVY> каталогами) хрен-знает-кто, то да. Но такие случаи не рассматриваются.
А очень зря, кстати, не рассматриваются. /home и /usr/local принадлежат
группе staff, что в норме (если использовать это для работы) означает,
что туда можно писать многим.
А дырка там в том, что при обработке suid ядро не смотрит на весь путь
(его у ядра и нету, сдается мне). Вернее, на все пути, их может быть
много. Оно смотрит только на права файла.
--
Artem Chuprina
RFC2822: <ran{}ran.pp.ru> Jabber: ran@jabber.ran.pp.ru
Юзер обожает терпеть мелкие неудобства
Victor Wagner
Reply to: