Re: чтение чужих файлов.
Igor Sysoev
igor на sysoev.ru
Пт Ноя 25 09:42:58 UTC 2011
On Fri, Nov 25, 2011 at 01:34:18PM +0400, Anton Yuzhaninov wrote:
> On 11/25/11 13:25, Igor Sysoev wrote:
> > http://httpd.apache.org/docs/2.2/mod/core.html#options
> >
> > FollowSymLinks
> > SymLinksIfOwnerMatch
> >
> > This option should not be considered a security restriction,
> > since symlink testing is subject to race conditions that
> > make it circumventable.
> >
> > Отсюда возникает вопрос: имеет ли смысл тестировать каждый элемент
> > пути при каждом запросе, если это не даёт 100% гарантии ?
>
> В апаче сначала делают stat, потом open?
>
> А если сначала открыть файл, потом сделать fstat(), не позволит ли это избежать
> race?
Нет, симлинк можно поставить в середину пути.
И O_NOFOLLOW похоже тоже не поможет, потому что:
O_NOFOLLOW
If pathname is a symbolic link, then the open fails. This is a FreeBSD
extension, which was added to Linux in version 2.1.126. Symbolic links
in earlier components of the pathname will still be followed.
--
Игорь Сысоев
http://sysoev.ru
Подробная информация о списке рассылки nginx-ru